- Posts: 4402
Protocol Stacks
- PhracturedBlue
- Offline
I don't understand. Basically you are right that it would work similar to fixed-point, however, the 'point' part would not be the trim.FDR wrote:
FDR wrote: Ah, like the floating point representation of the datetime values, right?
EDIT: ...just it would be fixed point of course...
Wait a minute!
If this was the case, than you couldn't use it in later calculations as a trimmed value...
we would take as input a number: say 7324 (which is +73%) There is no way to know which part of that is trim and which part is value. We would then convert it into a value like:
255.477
where '255' goes into the 'channel' value and '477' goes into the 'trim' value
Assuming I got the math right, that will give you an output of 73% (of 125% max) with 12bits of precision.
FYI, the simplified calculation above is wrong. I think this is closer to correct:
'trim' = (out modulu 2500) / 2500 * 511
'value' = int(out / 2500) / 4 * 511
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
It is untested, but may work fro Devo (not for any other protocol yet)
Basically,
1) set fixed id to None (clear the previous Rx binding if needed
2) reboot tx and rx and bind as usual
3) Go to model page, change fixed-id to some value
4) press 'bind'
5) Get binding message for 10 seconds
6) next reboot, it should bind immediately, and you won't get the binding message
Please Log in or Create an account to join the conversation.
- FDR
- Offline
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Bad instructions. look at them now.FDR wrote: Can I bind with a manually selected fixed ID somehow?
Please Log in or Create an account to join the conversation.
- FDR
- Offline
I've tried 123456 and 680914, but neither works. It sends some fixed ID to it, but after restarting the ladybird the led blinks fast and it isn't bound.
Auto binding works only after clearing the fixed ID from the receiver, as expected...
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Please Log in or Create an account to join the conversation.
- FDR
- Offline
What do you mean on reboot, only the tx, the rx or both?PhracturedBlue wrote: I checked in preliminary code for handling fixed-id properly.
It is untested, but may work fro Devo (not for any other protocol yet)
Basically,
1) set fixed id to None (clear the previous Rx binding if needed
2) reboot tx and rx and bind as usual
3) Go to model page, change fixed-id to some value
4) press 'bind'
5) Get binding message for 10 seconds
6) next reboot, it should bind immediately, and you won't get the binding message
I did it in this order: disconnected the rx, turned off the tx, turned on the tx, than connected the rx...
Please Log in or Create an account to join the conversation.
- FDR
- Offline
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
It should work like the walkera firmware though:
bind with no fixed-id, then set a fixed-id, and press the bind-button to send the 'change id' message to the rx. then reboot both tx and rx to see if it worked.
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
WK2801 still does not yet.
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Luckily enough I know the ID it is bound to, so I can still use it.
Please Log in or Create an account to join the conversation.
- FDR
- Offline
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
For the WK2801, you power up the tx without the Rx, set the binding code, press 'bind' on the tx, and quickly plug in the rx. once bound, power-down the rx and it is now bound to the fixedid.
Please Log in or Create an account to join the conversation.
- sutaburosu
- Offline
- Posts: 8
Weeks ago I had played with setting fixed ID on a Devo 7 with a RX2623V-D in a V100D08, and then entering the same zero-prefixed fixed ID on a Devo 8. It didn't bind, and I couldn't be bothered to dig out a bind plug to reset the rx to non fixed-id.
Tonight, with a few minutes to spare, I picked up my Devo 8 and tried to fly the V100D08. Of course I soon found/remembered it was Fixed ID bound to the Devo 7, so I swapped Txs.
Later the batteries in the Devo 7 expired whilst it was bound to the V100D08. After replacing the batteries I found it wouldn't bind with the V100D08 again, but the Devo 8 would. After clearing fixed-id on the Devo 7 it too would bind again.
I surmise that there must be a dying-gasp packet sent when the Tx batteries expire, which clears the Rx's fixed ID. I guess this is intended to permit attempts to rescue the model using a different Tx with charged batteries.
I don't have a logic probe so I can't sniff the Cypress traffic, sorry.
Please Log in or Create an account to join the conversation.
- FDR
- Offline
For example if you bind a model with a fixed id set up, you can switch models while the rx is bound to an other with a different fixed id or even an auto binding one, and it will still work, and vice versa...
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Thanks, but I've already documented this. A fixed-id will only work with a specific Tx because the protocol is using both the CYRFID (unique to each Tx) and the Fixed-ID. It may also use the # of channels, though I haven't done the necessary experiments to confirm that.sutaburosu wrote: I stumbled across something earlier that may be pertinent to the Devention protocol implementation.
With the Deviation firmware we could actually allow swapping Tx, but I doubt I'll implement that.
Edit: I see you meant it actually did bind without unbinding....Not much I can say about that, it should not be able to do that because the encryption is wrong.
Please Log in or Create an account to join the conversation.
- FDR
- Offline
PhracturedBlue wrote: Well, DEVO, DSM2, J6Pro and Flysky binding all work properly now.
WK2801 still does not yet.
Confirmed for the DEVO...
Please Log in or Create an account to join the conversation.
- sutaburosu
- Offline
- Posts: 8
Indeed, hence my guess there must be some kind of packet to clear the rx's fixed-ID. If this is what is actually occuring, it might be a useful addition to Deviation to have the ability to clear an Rx's fixed ID without having to resort to using a bind plug; on my 250 the Rx1002 is truly inaccessible.PhracturedBlue wrote: Edit: I see you meant it actually did bind without unbinding....Not much I can say about that, it should not be able to do that because the encryption is wrong.
Please Log in or Create an account to join the conversation.
- FDR
- Offline
PhracturedBlue wrote: Another weird thing. I can't seem to get my RX1202 to unbind. I've tried the unbind-plug in every position, but it doesn't seem to want to unbind from its current configuration.
Luckily enough I know the ID it is bound to, so I can still use it.
The page 29 of the DEVO 12 manual says:
"Fixed ID cancellation
Insert the assorted BIND PLUG into the output terminal of BATT before the receiver is powered on, and then plug 5V DC power into one of the other terminals. The red light of receiver will flash slowly. This means the fixed ID code has been cancelled. Pull out the BIND PLUG."
Same method for the DEVO 10...
Please Log in or Create an account to join the conversation.
- Home
- Forum
- Development
- Development
- Protocol Stacks