Advanced Search

Search Results (Searched for: cx-10)

  • alibenpeng
  • alibenpeng's Avatar
15 Aug 2014 19:54
Replied by alibenpeng on topic CX-10 binds but does not ACK packets

SOLVED: CX-10 binds but does not ACK packets

Category: Protocol Development

hexfet wrote: Some users have reported flying the CX10 red board successfully. Wonder if there are different models?


..or maybe I made some stupid mistake. Would certainly not be the first time ;)

Since the CX10 responds to data packets it seems likely the bind was successful but not recognized by the tx because the CX10 never acknowledged the packet after the bind. How's the antenna on the CX10? Maybe your radio device has a problem receiving?


The XC10 seems alright, as I see lots of Acks in the SPI captures of the stock TX. The same goes for my transmitter module, which I successfully use with the crazyflie (stock protocol, with payload in Acks).

Does the CX10 indicate a successful bind in any way (LED or beeps) so you would know if it bound? You could try changing the code to go into data mode after bind regardless of whether an ack is received.


Yes, the bind is successful, the LEDs stop blinking and the CX10 (with about a second lag) responds to the remote. Also, I don't see a single Ack byte (0x2e) in all of the MISO captures I did. The lag is probably on account of the still running bind procedure, in which a data packet is sent, every now and then.

I'll change the code to do what you suggested and report back on the results.

- The data sent by the master when reading is irrelevant. Has no effect on the radio device.


I guessed, but I wan't sure. Good to know.

- 0xbf is the correct checksum for the data in your post. Is the last byte different on the bind packet? Seems likely the last byte is a checksum.


The bind packet looks like this:
0xa0, 0x2a, 0x03, 0xc2, 0x11, 0x56, 0xaa, 0x40, 0x00, 0xbf
What's interesting, is that not only the bind packet, but a lot of the 0x40,0x80,0x40,... packets are ack'd.

- The YD717 and Skywalker stock TXs differ in the data sent during binding. The YD717 binds successfully using the Skywalker data, so that's what I used in the protocol. It should also work for the CX10. The difference is that the Skywalker sends the bind data in every bind packet, while the YD (and it seems the CX10) send channel data until the very last bind packet. The Skywalker method seems more robust since the receiver only needs to receive one good packet to get the rx/tx address.


The bind data being the 0x56, 0xaa, 0x32, 0x00?

- Yes, a 0x2e status means the packet was acknowledged by the rx. Are you seeing a 0x1e status (timeout)?


Exactly. The first two reads of 0x07 give 0x0e and the third gives 0x1e.

- An SPI trace from the receiver might help you figure out what's going on.


Might take a few days but I'll see to it.
  • SeByDocKy
  • SeByDocKy's Avatar
15 Aug 2014 18:23
Replied by SeByDocKy on topic CX-10 binds but does not ACK packets

SOLVED: CX-10 binds but does not ACK packets

Category: Protocol Development

The red edition is binding perfectly the YD717=>SkyWalker protocol ....
  • hexfet
  • hexfet's Avatar
15 Aug 2014 17:26
Replied by hexfet on topic CX-10 binds but does not ACK packets

SOLVED: CX-10 binds but does not ACK packets

Category: Protocol Development

Some users have reported flying the CX10 red board successfully. Wonder if there are different models?

Since the CX10 responds to data packets it seems likely the bind was successful but not recognized by the tx because the CX10 never acknowledged the packet after the bind. How's the antenna on the CX10? Maybe your radio device has a problem receiving?

Does the CX10 indicate a successful bind in any way (LED or beeps) so you would know if it bound? You could try changing the code to go into data mode after bind regardless of whether an ack is received.

- The data sent by the master when reading is irrelevant. Has no effect on the radio device.

- 0xbf is the correct checksum for the data in your post. Is the last byte different on the bind packet? Seems likely the last byte is a checksum.

- The YD717 and Skywalker stock TXs differ in the data sent during binding. The YD717 binds successfully using the Skywalker data, so that's what I used in the protocol. It should also work for the CX10. The difference is that the Skywalker sends the bind data in every bind packet, while the YD (and it seems the CX10) send channel data until the very last bind packet. The Skywalker method seems more robust since the receiver only needs to receive one good packet to get the rx/tx address.

- Yes, a 0x2e status means the packet was acknowledged by the rx. Are you seeing a 0x1e status (timeout)?

- An SPI trace from the receiver might help you figure out what's going on.
  • alibenpeng
  • alibenpeng's Avatar
15 Aug 2014 16:07 - 07 Oct 2014 09:28
SOLVED: CX-10 binds but does not ACK packets was created by alibenpeng

SOLVED: CX-10 binds but does not ACK packets

Category: Protocol Development

Hi,

I'm trying to port a few nRF24L01 based protocols to a standalone module (AtMega328). Right now I'm stuck with the YD717/Skywalker protocol:

I have a Cheerson CX-10 (red PCB version with BK2421) that binds to the TX but doesn't ACK the bind packet (or any other for that matter), so that the state machine in the TX never reaches the YD717_DATA state. Instead it keeps sending bind packets with the occasional data packet (every ACK timeout?) inbetween. The data packets are understood (kinda) by the CX-10, but with a data packet only every second or so (I haven't measured) it's hopeless trying to fly the thing.

What I have done so far:

I sniffed the SPI bus of the stock TX and found out the following:

- The stock TX uses an almost exactly identical init sequence to the one in the YD717 protocol, except for the BK2421 specific register setting.

- The stock TX uses slightly different SPI commands for reading registers: Instead of 0xFF as the second bute transferred it uses 0x00. Tried it but doesn't seem to make a difference.

- The payload is 9 bytes long and always has 0xBF as the last byte. Not so sure about the last byte bit, though.

- The binding sequence seems to differ quite a bit from the YD717 one: Before sending an actual bind packet, the stock TX sends this packet 60? times:
{ 0x00, 0x80, 0x40, 0x80, 0x80, 0x40, 0x40, 0x00, 0xBF}
Only after that the 0x65... RX/TX address is written and the bind packet is sent.

- The bind packet also is slightly different: Instead of 0x32 it has 0x40 as byte[6].

I've tried altering everything I could to reflect the stock TX, but I wasn't able to get an ACK packet back from the CX-10 (an ACK on the SPI bus would look like 0x2E in the status register, right?)


What else (short of actually sniffing the 2.4GHz band with SDR) could I do to find out what's going on?


Cheers,

Ali



P.S.: Great project (although I don't have a Devo TX), your work on protocol reversing/implementation is invaluable!

Edit: problem solved, see last post.
  • SeByDocKy
  • SeByDocKy's Avatar
12 Aug 2014 16:20
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

billmester wrote: both RED BOARD


The red board is using the skywalkr protocol ....
Now it's the green edition Under investigation
  • billmester
  • billmester's Avatar
12 Aug 2014 14:59
Replied by billmester on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

both RED BOARD
  • billmester
  • billmester's Avatar
12 Aug 2014 14:58
Replied by billmester on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

YES.

1. turn on quad 1
2. turn on quad 2
3. turn on original tx
4. binding process (up-down)
5. both stop blinking, both fly :)
  • btoschi
  • btoschi's Avatar
11 Aug 2014 20:00
Replied by btoschi on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

This means that the receiver on the quad does not propagate any ID back.
This is common with many RC-toy protocols.

Still the transmitter can choose an individual ID per session (random or per TX) - often affecting RX/TX Address (think of "MAC-Address") and / or RF Channel(s) it sends on.

And can you please clarify: You've paired using original Transmitter ?
  • billmester
  • billmester's Avatar
11 Aug 2014 19:18
Replied by billmester on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

...and some interesting info:
if i turn on both quads, and then run the binding sequence, both will fly the same time :cheer:
so the binding does not have unique pairing code...
  • SeByDocKy
  • SeByDocKy's Avatar
11 Aug 2014 19:12
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

Can you compile for the Devo 7E too ? I guess there will be some other testers owning the Devo 7E
  • SeByDocKy
  • SeByDocKy's Avatar
11 Aug 2014 17:16
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

  • SeByDocKy
  • SeByDocKy's Avatar
11 Aug 2014 16:57
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

I tried both method too bind :( ....
There is absoluptly no response of the quad :( I will make a short video


Yes the JXD 395 can fly the CX-10 "green" and vice et versa ...

hexfet wrote:

SeByDocKy wrote: Sorry but I can't bind my JXD 395 with :( ...


What sequence did you use to try to bind? I set the protocol to stay in bind mode for 6 seconds. You'll need to turn on the quad during that time, or try turning on the quad and then hit re-init.

Is there any response from the quad, or does it behave just like there is no transmitter?

Possible issues I can think of:
- mistake in the coding
- missed something in the bind capture data
- XN297 not compatible (maybe something to do with the 3 undocumented registers)
- Are we certain CX10 protocol is same as JXD395?

  • billmester
  • billmester's Avatar
11 Aug 2014 16:51
Replied by billmester on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

I got my replacement CX-10 today... WITH RED BOARD and a matching controller!
Now I have 2 working micro quads!!! :woohoo:
(It was worth to wait...)
  • hexfet
  • hexfet's Avatar
11 Aug 2014 16:34
Replied by hexfet on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

SeByDocKy wrote: Sorry but I can't bind my JXD 395 with :( ...


What sequence did you use to try to bind? I set the protocol to stay in bind mode for 6 seconds. You'll need to turn on the quad during that time, or try turning on the quad and then hit re-init.

Is there any response from the quad, or does it behave just like there is no transmitter?

Possible issues I can think of:
- mistake in the coding
- missed something in the bind capture data
- XN297 not compatible (maybe something to do with the 3 undocumented registers)
- Are we certain CX10 protocol is same as JXD395?
  • SeByDocKy
  • SeByDocKy's Avatar
11 Aug 2014 14:27
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

mtx63 wrote: I have a problem. Devo 7E to cx-10 board red.
Where can I find the setting select , sky wlkr`protocol option.

dieter


Select the YD717 protocol then press ENT when YD717 is selected than choose SkyWlkr with arrows.
  • mtx63
  • mtx63's Avatar
11 Aug 2014 14:18
Replied by mtx63 on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

I have a problem. Devo 7E to cx-10 board red.
Where can I find the setting select , sky wlkr`protocol option.

dieter
  • SeByDocKy
  • SeByDocKy's Avatar
11 Aug 2014 06:23
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

hexfet wrote: Here is a build for the devo10. Got past my emulator issues and fixed a couple problems. The post with the diff has been updated.

Took a closer look at the MoonTop capture. It uses the same RF chip initialization, but different bind sequence and data packet format. If this CX10 works I'll look at adding an option for the moontop.


Sorry but I can't bind my JXD 395 with :( ...
  • hexfet
  • hexfet's Avatar
10 Aug 2014 21:50
Replied by hexfet on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

Here is a build for the devo10. Got past my emulator issues and fixed a couple problems. The post with the diff has been updated.

Took a closer look at the MoonTop capture. It uses the same RF chip initialization, but different bind sequence and data packet format. If this CX10 works I'll look at adding an option for the moontop.
  • billmester
  • billmester's Avatar
09 Aug 2014 11:34 - 09 Aug 2014 11:35
Replied by billmester on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

CX-10G & CX-10R

I bought a CX-10 with a dead board (green). BG sent me a replacement board (red). Not binding with the original TX. (Reading this thread, now I understand why :S) Then BG sent me a complete new set (on the way).

So I will have a "red" CX-10 as "BNF", and a complete "green" one.

I hope the latest Deviation release will support both :woohoo:
(and I'll have some time and luck to install the new module in the D10...)

bm
  • SeByDocKy
  • SeByDocKy's Avatar
09 Aug 2014 06:19
Replied by SeByDocKy on topic JD 395 cx-10

JD 395 cx-10

Category: Protocol Development

A small remark concerning the name of the protocol.

In fact, the CX-10 have(d) two board: the "red" pcb compatible skywalkr protocol (from ABE compagny) and this "green" pcb (you are working on) labeled with the "LF" compagny. The JXD 395 is also using this "green" protocol. So calling CX-10 can be confusing for those who have the red version (even if now, last CX-10 are all in green edition). Maybe call it JXD 395 ? or LF (the name of the RF compagny)
Displaying 681 - 700 out of 736 results.
Time to create page: 1.451 seconds
Powered by Kunena Forum