- Posts: 43
Bugs 3 mini
- DPyro
- Offline
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
DPyro wrote: I selected bind, turned the quad on and then it went back to menu. RX ID changes from 0 to -29664
Ok, so you got a reply from the quad but it doesn't bind (probably wrong final address), more work is required ...
Now I've to simulate the reply of the quad with an arduino+nrf24 to try to understand how rxid affects address and/or hopping sequence.
That's interesting that C0ckpitvue 777 and I have Rx that can be used with the same addresses/frequencies despite different IDs.
Please Log in or Create an account to join the conversation.
- C0ckpitvue 777
- Topic Author
- Offline
- Posts: 409
DPyro wrote: No, they blink.
I also had a problem with the first time trying to update,re download and reinstall,I already know,lol.
Please Log in or Create an account to join the conversation.
- DPyro
- Offline
- Posts: 43
EDIT: Had to turn quad on first then controller while holding red button.
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.
- DPyro
- Offline
- Posts: 43
Yesgoebish wrote: @DPyro, just to confirm, it doesn't bind, but deviation exits the "binding" dialog when a battery is connected to the quad ?
Please Log in or Create an account to join the conversation.
- C0ckpitvue 777
- Topic Author
- Offline
- Posts: 409
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
I've to understand how the checksum that's sent by the quad in bind reply & telemetry packets is computed first:
CD 83 1D 00 00 00 00 00 00 00 00 C0 00 00 00 00
2C 83 1D 5F 00 00 00 00 00 00 00 C0 00 00 00 00
30 83 1D 63 00 00 00 00 00 00 00 C0 00 00 00 00
2E 83 1D 61 00 00 00 00 00 00 00 C0 00 00 00 00
31 83 1D 64 00 00 00 00 00 00 00 C0 00 00 00 00
2F 83 1D 62 00 00 00 00 00 00 00 C0 00 00 00 00
32 83 1D 65 00 00 00 00 00 00 00 C0 00 00 00 00
91 68 FC 00 00 00 00 00 00 00 00 C0 00 00 00 00
92 68 FC 01 00 00 00 00 00 00 00 C0 00 00 00 00
AD 68 FC 1C 00 00 00 00 00 00 00 C0 00 00 00 00
E4 68 FC 53 00 00 00 00 00 00 00 C0 00 00 00 00
E3 68 FC 52 00 00 00 00 00 00 00 C0 00 00 00 00
E8 68 FC 57 00 00 00 00 00 00 00 C0 00 00 00 00
F3 68 FC 62 00 00 00 00 00 00 00 C0 00 00 00 00
F4 68 FC 63 00 00 00 00 00 00 00 C0 00 00 00 00
I don't get it yet.
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
rx packet checksum = (0x6d + sum of packet[1:15]) & 0xff;
(same "magic number" as tx packet but used with sum of bytes instead of xoring)
Now to build a rig with stock tx+arduino+nrf24 when time allows ...
edit: 0x6d is the 'm' of "mjxRC" which is the bind address converted to ASCII actually
Please Log in or Create an account to join the conversation.
- hexfet
- Offline
- Posts: 1868
Yes. My rig was a devo10 running protocol code that emulated a bugs3 receiver, stock tx, and a Cypress prototyping stick.goebish wrote: I don't need any more bind sequence for now, I've to build a rig that simulates the reply of the Rx to the Tx during bind to understand how rxid affects final address and channel hopping. I suppose hexfet did the same for the Bugs3 (remember the spreadsheet? ).
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
First 3 bytes of the address are easy to guess (2nd byte is constant, I suppose that's a byproduct of the txid, but we don't care), and 2 last bytes often repeat, it shouldn't be that hard to crack (ie easier than the Bugs3 ?...).
Arduino code, if anyone is curious: gist.github.com/goebish/71fa5b6568e200438bf2090d50692480
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.
- C0ckpitvue 777
- Topic Author
- Offline
- Posts: 409
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
www.dropbox.com/sh/nrc4oppo121887l/AABQ_...IEn8A7BYvH5BpGa?dl=0
How it works (seems complicated but that's not...):
- start with no battery in the quad
- select Bugs3Mini protocol then press bind
- connect a battery to the quad
- wait for the bind dialog to exit then disconnect the battery for now
- go to the protocol options dialog then write down the "RX Id" value
- switch off transmitter
- go to bit.ly/bugs3mini_rxid
- find your RX Id in the green column (rxid s16)
- write down the corresponding value from the blue column (address[3:4] s16)
- connect your transmitter as an USB drive
- open the models/modelsxx.ini file in a text editor (under Windows, use notepad++ for exemple, not the builtin notepad, it does corrupt end of lines ...)
- under the [protocol_opts] section, fill the Address= field with the value from the blue column
- save and disconnect USB
Et voilà, it should bind now
You can now check that channel 5 controls leds.
source: github.com/goebish/deviation/blob/protoc...bugs3mini_nrf24l01.c
Now we've to try to make sense of this spreadsheet so we don't need it anymore ...
Please Log in or Create an account to join the conversation.
- DPyro
- Offline
- Posts: 43
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
Have you flashed the dfu and copied the new protocols folder to the filesystem ?
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.
- DPyro
- Offline
- Posts: 43
Please Log in or Create an account to join the conversation.
- goebish
- Offline
- I Void Warranties
- Posts: 2631
C0ckpitvue 777 can you check on your 7e please ?
Please Log in or Create an account to join the conversation.
- Home
- Forum
- Development
- Protocol Development
- Bugs 3 mini