- Posts: 10
Global Drone, Skull Drone or GW008
- flarkopter
-
- Offline
Less
More
14 Feb 2017 04:42 #59117
by flarkopter
Replied by flarkopter on topic Global Drone, Skull Drone or GW008
Seems there is hope for this little bonedrone... Appreciate your efforts!
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
14 Feb 2017 04:45 #59118
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
Yes there is still hope, but this is the "PAN" version, not the LT8910 one.
- Caerus
-
- Offline
Less
More
- Posts: 59
14 Feb 2017 07:30 - 14 Feb 2017 07:31 #59120
by Caerus
Replied by Caerus on topic Global Drone, Skull Drone or GW008
Do you have formal training, or did you teach yourself how to do all this? I have absolutely no idea what's going on!, but it's still amazing to me. I can see you don't want to let this beat you. I'm the same, but I don't have these kind of skills
.
Appreciate the effort.
Appreciate the effort.
Last edit: 14 Feb 2017 07:31 by Caerus.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
14 Feb 2017 07:32 - 14 Feb 2017 19:08 #59121
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
I'm a programmer basically, but everything hardware / embedded / RF I taught myself thanks to the internet and the people on this forum
Last edit: 14 Feb 2017 19:08 by goebish.
- flarkopter
-
- Offline
Less
More
- Posts: 10
14 Feb 2017 10:47 #59123
by flarkopter
Replied by flarkopter on topic Global Drone, Skull Drone or GW008
No hope for life after death for the LT8910 version?!
- Caerus
-
- Offline
Less
More
- Posts: 59
14 Feb 2017 12:16 #59124
by Caerus
Replied by Caerus on topic Global Drone, Skull Drone or GW008
goebish said in an earlier post it should be possible to emulate with CC2500, but it's not anyone's priority. He's only doing this as a personal challenge. Without putting up a capture you'll never know though. planger was interested in taking a look, but no-one posted captures.
Unfortunately the thing that makes this quad great (power!) actually work against it, since tiny quads are generally aimed at beginners/indoor flyers. People usually only add power to lift fpv gear. I now get why the CX-10 is so popular, even though I personally think it's dull.
Unfortunately the thing that makes this quad great (power!) actually work against it, since tiny quads are generally aimed at beginners/indoor flyers. People usually only add power to lift fpv gear. I now get why the CX-10 is so popular, even though I personally think it's dull.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
18 Feb 2017 17:39 #59288
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
Yet more progress, I'm able to receive the packets with a nrf24l01 actually, the 200kHz drift isn't a problem, I think victzh noticed it as well when he first worked on the xn297 emulation.
I'm working on computing the crc now, then I think I should be able to add the protocol to deviation
I'm working on computing the crc now, then I think I should be able to add the protocol to deviation
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
19 Feb 2017 01:51 - 19 Feb 2017 01:58 #59298
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
CRC: Ok
Now to write a XN297_WriteEnhancedPayload function then implement the protocol ...
I'm still crossing fingers, this protocol is using auto acknowledge, which can't be emulated because that's not possible to switch from tx to rx mode fast enough, but I think we can live without it and "fly blind" as the quad only returns empty ACK packets. I only hope the rx recovers fast enough when it misses a packet.
Now to write a XN297_WriteEnhancedPayload function then implement the protocol ...
I'm still crossing fingers, this protocol is using auto acknowledge, which can't be emulated because that's not possible to switch from tx to rx mode fast enough, but I think we can live without it and "fly blind" as the quad only returns empty ACK packets. I only hope the rx recovers fast enough when it misses a packet.
Last edit: 19 Feb 2017 01:58 by goebish.
- Caerus
-
- Offline
Less
More
- Posts: 59
19 Feb 2017 12:17 #59319
by Caerus
Replied by Caerus on topic Global Drone, Skull Drone or GW008
Nice work mate! It's all basically Greek to me, but wasn't there something in another thread about auto ACK and nrf24l01? Something about not using auto ACK, but it was generally ok?. Might've been about the 3 in 1 module. I remember HappyHarry was in the convo.
Anyway, you know what you're doing.
Looking forward to a build. Smug little thing sits there atm mocking me
. I'm properly amazed at how you've got to this point catching 1's and 0's out of the freakin' air!
Anyway, you know what you're doing.
Looking forward to a build. Smug little thing sits there atm mocking me
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
19 Feb 2017 12:57 - 19 Feb 2017 13:12 #59320
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
The problem with auto ack in other protocols is that some modules are not using genuine nRF24L01+ but Si24R1 instead (labeled as nRF24L01 ...), they are supposed to be compatible, but they're not when using dynamic payload with auto ack:
hackaday.com/2015/02/23/nordic-nrf24l01-...ake/#comment-2474764
fortunately very few protocols make use of this mode, and when they do the ACK packets can be ignored without much issues most of the time ...
Here the problem is different, we're emulating a xn297 with a nRF24L01 (or Si24R1, we don't care, as everything is emulated in software).
hackaday.com/2015/02/23/nordic-nrf24l01-...ake/#comment-2474764
fortunately very few protocols make use of this mode, and when they do the ACK packets can be ignored without much issues most of the time ...
Here the problem is different, we're emulating a xn297 with a nRF24L01 (or Si24R1, we don't care, as everything is emulated in software).
Last edit: 19 Feb 2017 13:12 by goebish.
- Caerus
-
- Offline
Less
More
- Posts: 59
20 Feb 2017 07:20 - 20 Feb 2017 07:20 #59357
by Caerus
Yeah, IIRC the nRF24L01 in the 3 in 1 module is a problem. I think that's where I read about the auto ACK stuff. Plus the PA (or LNA) issue. I got my 4 in 1 last week, which I waited to be available because of that.
So this has nothing to do with inferior hardware.... just a new software/RF puzzle you haven't seen before?
Replied by Caerus on topic Global Drone, Skull Drone or GW008
goebish wrote: The problem with auto ack in other protocols is that some modules are not using genuine nRF24L01+ but Si24R1 instead (labeled as nRF24L01 ...)
Yeah, IIRC the nRF24L01 in the 3 in 1 module is a problem. I think that's where I read about the auto ACK stuff. Plus the PA (or LNA) issue. I got my 4 in 1 last week, which I waited to be available because of that.
So this has nothing to do with inferior hardware.... just a new software/RF puzzle you haven't seen before?
Last edit: 20 Feb 2017 07:20 by Caerus.
- planger
-
- Offline
20 Feb 2017 08:17 #59360
by planger
Replied by planger on topic Global Drone, Skull Drone or GW008
Goebish,
This looks really cool and I would like to do the same on another model. Could you list all the hardware and software you are using?
Thanks, Pascal
This looks really cool and I would like to do the same on another model. Could you list all the hardware and software you are using?
Thanks, Pascal
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
20 Feb 2017 13:46 - 20 Feb 2017 22:46 #59368
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
To be honest, I used SDR but a simple nrf24l01 + arduino would have been enough, just that I didn't remember that I modified my nrf24 sniffer some time ago hence I thought I only got noise when I first tried.
Anyway, here's what I used, but that's not "universal":
- hardware: HackRF One
- sniffing + gfsk demodulation: gnuradio, with this .grc: www.dropbox.com/s/sk28appcfpwtkap/xn297_gfsk_demod.grc?dl=1
- decoding: www.dropbox.com/s/36og270vm42zu9u/gw008_decod.cpp?dl=0 (C/Qt, though it should be easy to get rid of Qt, I'm only using QFile).
- crc cracking: reveng
- music: Sex Pistols + Green Day + Ska-P, perhaps the most important part of the setup, no music, no code
Note that as it is, it does only decode xn297 scrambled packet with CCCCCCCCCC address, enhanced packet mode and 15 byte long payload, that's just some dirty code, but it should be easy to modify for other purposes.
My SDR toys
Anyway, here's what I used, but that's not "universal":
- hardware: HackRF One
- sniffing + gfsk demodulation: gnuradio, with this .grc: www.dropbox.com/s/sk28appcfpwtkap/xn297_gfsk_demod.grc?dl=1
- decoding: www.dropbox.com/s/36og270vm42zu9u/gw008_decod.cpp?dl=0 (C/Qt, though it should be easy to get rid of Qt, I'm only using QFile).
- crc cracking: reveng
- music: Sex Pistols + Green Day + Ska-P, perhaps the most important part of the setup, no music, no code
Note that as it is, it does only decode xn297 scrambled packet with CCCCCCCCCC address, enhanced packet mode and 15 byte long payload, that's just some dirty code, but it should be easy to modify for other purposes.
My SDR toys
Last edit: 20 Feb 2017 22:46 by goebish.
- planger
-
- Offline
20 Feb 2017 13:52 #59369
by planger
Replied by planger on topic Global Drone, Skull Drone or GW008
Thanks!
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
20 Feb 2017 14:09 #59370
by goebish
Yes, this is the first XN297 protocol that's using enhanced packet mode, I've added code to generate those "enhanced" packets yesterday, still not tested tho.
Replied by goebish on topic Global Drone, Skull Drone or GW008
Caerus wrote: So this has nothing to do with inferior hardware.... just a new software/RF puzzle you haven't seen before?
Yes, this is the first XN297 protocol that's using enhanced packet mode, I've added code to generate those "enhanced" packets yesterday, still not tested tho.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
22 Feb 2017 01:02 - 22 Feb 2017 06:59 #59428
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
Success !
Test builds: www.dropbox.com/sh/kzbq09i0n0n4p5y/AADNB...7BieEsGlf_jy-Xa?dl=0
Diff: github.com/DeviationTX/deviation/compare...rotocol_gw008_xns104
New protocol: GW008
Only 1 Tx ID, I doubt I can do anything better with only one stock Tx, but I'll have a try later ...
Still requires a bit of cleanup and I haven't implemented flips yet, please report if it works on your side
Test builds: www.dropbox.com/sh/kzbq09i0n0n4p5y/AADNB...7BieEsGlf_jy-Xa?dl=0
Diff: github.com/DeviationTX/deviation/compare...rotocol_gw008_xns104
New protocol: GW008
Only 1 Tx ID, I doubt I can do anything better with only one stock Tx, but I'll have a try later ...
Still requires a bit of cleanup and I haven't implemented flips yet, please report if it works on your side
Last edit: 22 Feb 2017 06:59 by goebish.
- Caerus
-
- Offline
Less
More
- Posts: 59
22 Feb 2017 06:31 #59443
by Caerus
Replied by Caerus on topic Global Drone, Skull Drone or GW008
Close.... but no success for me. When binding begins the LED's stop blinking (solid/on), but then they return to blinking after @4 seconds. There's definitely communication, but the bind process wont complete. Does that sound like it's trying to find a unique GW008? Your GW008? I've tried using different models, but for binding only the protocol should matter right?
I'm REALLY looking forward to flying this with a Devo. I just used a H20 30C cos the stock battery was flat. Where did they get the motors for this thing!? Modding a 45C next.
I'm REALLY looking forward to flying this with a Devo. I just used a H20 30C cos the stock battery was flat. Where did they get the motors for this thing!? Modding a 45C next.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
22 Feb 2017 06:34 - 22 Feb 2017 07:30 #59444
by goebish
Replied by goebish on topic Global Drone, Skull Drone or GW008
Ah Ok, probably the quad transmits its ID at some point, I'll check that.
edit: looks like it's a 1 byte ID ( 0x18 here ?), I'll try to find how to grab it, worst case it will be a protocol option and you'll have to manually find your ID (out of 256 possibilities
)
edit: looks like it's a 1 byte ID ( 0x18 here ?), I'll try to find how to grab it, worst case it will be a protocol option and you'll have to manually find your ID (out of 256 possibilities
Last edit: 22 Feb 2017 07:30 by goebish.
- Caerus
-
- Offline
Less
More
- Posts: 59
22 Feb 2017 08:53 #59447
by Caerus
Replied by Caerus on topic Global Drone, Skull Drone or GW008
lol....... well, considering all the work you've done and the fact it would never have been deviated without your curiosity, I could live with having to find the ID. Murphy's Law will of course dictate that it will take 256 tries
.
- planger
-
- Offline
22 Feb 2017 09:23 #59448
by planger
Replied by planger on topic Global Drone, Skull Drone or GW008
Might be wrong but if 0x18 is the RX ID then 0xF6 looks like the TX ID don't you think? Have you tried to change this byte in your current setup?
The negotiation could be:
Bind
TX sends its ID = 0xF6
RX replies its ID = 0x18 to the TX 0xF6
Normal
TX sends the RX ID and TX ID along with other data
Even if you only have 1 byte address for the TX and 1 byte address for the RX you still can have a good number of quads in the air.
Pascal
The negotiation could be:
Bind
TX sends its ID = 0xF6
RX replies its ID = 0x18 to the TX 0xF6
Normal
TX sends the RX ID and TX ID along with other data
Even if you only have 1 byte address for the TX and 1 byte address for the RX you still can have a good number of quads in the air.
Pascal
Time to create page: 0.169 seconds
-
Home
-
Forum
-
Development
-
Protocol Development
- Global Drone, Skull Drone or GW008