- Posts: 9
Mould King 33043 Super F Quad - HS6200 RF chip
- mdon
- Offline
received by nrf: 2E 53 5B A5 F5 7C 53 FC 9A
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
2E 53 5B A5 F5 7C 53 FC 9A xor 80 f5 3b 0d 6d 2a f9 bc 51 = AE A6 60 A8 98 56 AA 40 CB
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
Need a hand with that ?
Also, we've to hope this scrambling table is static, as with the xn297. We'll also have to find a HS6200 donator so we can send longer payloads with an actual chip to guess the rest of the scrambling table.
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
"The CRC is the error detection mechanism in the packet. It may either be 1 or 2 bytes and is calculated over the address, Packet Control Field and Payload."
initial value: 0xffff
polynomial: 0x1021
xorout: if we need one (other than 0x0000 or 0xffff) that probably means crc is scrambled too.
looks like the 2 byte guard is not fed to the crc generator (or maybe it's an omission in the datasheet ...)
at least that's one piece of the puzzle
and we need a crc generator that we can feed with an arbitary number of bits, not only bytes because of the PCF (again... I hate this thing ) as this one:
github.com/RFStorm/mousejack/blob/master/src/radio.c#L107
hmmm I've to check how I can feed a payload to crc reveng that's not a multiple of 8 bit.
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
Please Log in or Create an account to join the conversation.
- mdon
- Offline
- Posts: 9
Control power up:
address: 55 42 9C 8F C9
Payload sent (9 bytes): AE A6 60 A8 98 56 AA 40 CB
32 bytes received: 55 55 27 97 29 AD D2 FA BE 29 FE 4D 5A DE 3B FB 7E BB DD DD AA 39 CA 71 CD 66 AF 9E EE 72 CD 28
Landing:
address: AE A6 60 A8 98
Payload sent (9 bytes): 00 80 40 80 80 40 40 00 BF
32 bytes received: AE AE 25 C0 3A BD C6 F6 B5 5C DE 77 59 50 EF 7E FA EF EB DA 1F 71 AB 22 5A 51 CD 34 BD D2 A8 DD
Full throttle
address: AE A6 60 A8 98
Payload sent (9 bytes): FF 80 40 80 80 40 40 00 BF
32 bytes received: AE AE 25 BF BA BD C6 F6 B5 5C DE 48 D8 F2 2F 7F FA 77 FF FD FF FF 77 FE F7 F5 2A 33 6E C8 55 52
conclusions for now:
guard bytes = first address byte
flight address is sent as power up payload
flight first payload byte refers to throttle
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
I'll have a look at that tonight.
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
80 f5 3b 0d 6d 2a f9 bc 51
yields good results ?
Please Log in or Create an account to join the conversation.
- mdon
- Offline
- Posts: 9
const byte xor_table[9] = {0x80,0xf5,0x3b,0x0d,0x6d,0x2a,0xf9,0xbc,0x51};
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
So now that's only a matter of generating the CRC
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
Please Log in or Create an account to join the conversation.
- planger
- Offline
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
(only the msb is relevant in the last byte of the generated raw packet)
crappy POC code:
gist.github.com/goebish/a7b5607dc36af06b0cdd
don't forget to alternate the value of pid between packets, especially if 2 successive packets are identical, or the 2nd and following ones might be ignored by the rx.
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
You didn't tell which machine you were working on
For the MK33043, I'll either have to wait that you sacrifice the HS6200 in your stock TX (well, no really, this can be done in a non destructive way) so you can send and sniff longer packets to fill the scrambling table, or I'll have to order one myself ... or 'just' crack the scrambling table generation algo (there's probably one), but I'm lazy
Pascal, yes, when we'll add these new chips emulation in DeviationTX we'll try to use common code as much as possible for all the chips (CRC algo, bit shifting ...)
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
I'll wait 1 or 2 days then order a mk33043 then.
Please Log in or Create an account to join the conversation.
- mdon
- Offline
- Posts: 9
I was traveling.
Now I'm working on another project, but I'm warm to resume Nrf->HS6200 hobby asap. sorry
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
Please Log in or Create an account to join the conversation.
- dc59
- Topic Author
- Offline
- Posts: 799
goebish wrote: Looks like someone has ordered a MK 33043 for me (you know who you are, thanks ), so I should be able to continue the work on that in a few weeks
Good news for me!
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
www.deviationtx.com/forum/protocol-devel...m9916?start=80#48435
Please Log in or Create an account to join the conversation.
- Home
- Forum
- Development
- Protocol Development
- Mould King 33043 Super F Quad - HS6200 RF chip