Protocol Stacks

More
27 Aug 2012 18:35 #1244 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks

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... :unsure:

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.
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.

More
28 Aug 2012 15:15 - 28 Aug 2012 15:36 #1257 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
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
Last edit: 28 Aug 2012 15:36 by PhracturedBlue.

Please Log in or Create an account to join the conversation.

More
28 Aug 2012 15:32 #1258 by FDR
Replied by FDR on topic Protocol Stacks
Can I bind with a manually selected fixed ID somehow?

Please Log in or Create an account to join the conversation.

More
28 Aug 2012 15:36 #1259 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks

FDR wrote: Can I bind with a manually selected fixed ID somehow?

Bad instructions. look at them now.

Please Log in or Create an account to join the conversation.

More
28 Aug 2012 18:52 #1261 by FDR
Replied by FDR on topic Protocol Stacks
It doesn't work for me!
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.

More
28 Aug 2012 19:42 #1264 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
I can't do much until I get a replacement for my Saleae. I think it should be here tomorrow though.

Please Log in or Create an account to join the conversation.

More
28 Aug 2012 19:47 #1265 by FDR
Replied by FDR on topic Protocol Stacks

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

What do you mean on reboot, only the tx, the rx or both?
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.

More
28 Aug 2012 20:00 #1268 by FDR
Replied by FDR on topic Protocol Stacks
Does the fixed id work for you? Have you tried it with your ladybird? If yes, what id did you setup? Maybe I should try the same...

Please Log in or Create an account to join the conversation.

More
28 Aug 2012 20:10 #1269 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
No, as I said above it is completely untested, and I can't do much debug until I have my replacement logic analyzer

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.

More
29 Aug 2012 04:29 #1270 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
Well, DEVO, DSM2, J6Pro and Flysky binding all work properly now.
WK2801 still does not yet.

Please Log in or Create an account to join the conversation.

More
29 Aug 2012 04:32 #1271 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
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.

Please Log in or Create an account to join the conversation.

More
29 Aug 2012 04:47 #1272 by FDR
Replied by FDR on topic Protocol Stacks
Is your binding plug faulty perhaps?

Please Log in or Create an account to join the conversation.

More
29 Aug 2012 05:04 #1273 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
I've tried 4 of them :)

Please Log in or Create an account to join the conversation.

More
29 Aug 2012 05:11 #1274 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks
Ok, wk2801 binding works too. It is just that the steps are different.

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.

More
29 Aug 2012 05:26 #1275 by sutaburosu
Replied by sutaburosu on topic Protocol Stacks
I stumbled across something earlier that may be pertinent to the Devention protocol implementation.

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.

More
29 Aug 2012 05:57 #1276 by FDR
Replied by FDR on topic Protocol Stacks
Or there is something else going on. The DEVOs have weird binding function.
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.

More
29 Aug 2012 05:58 - 29 Aug 2012 06:00 #1277 by PhracturedBlue
Replied by PhracturedBlue on topic Protocol Stacks

sutaburosu wrote: I stumbled across something earlier that may be pertinent to the Devention protocol implementation.

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.
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.
Last edit: 29 Aug 2012 06:00 by PhracturedBlue.

Please Log in or Create an account to join the conversation.

More
29 Aug 2012 05:58 #1278 by FDR
Replied by FDR on topic Protocol Stacks

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.

More
29 Aug 2012 06:28 #1279 by sutaburosu
Replied by sutaburosu on topic Protocol Stacks

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.

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.

Please Log in or Create an account to join the conversation.

More
29 Aug 2012 07:51 #1280 by FDR
Replied by FDR on topic Protocol Stacks

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.

Time to create page: 0.098 seconds
Powered by Kunena Forum