-
-
Notifications
You must be signed in to change notification settings - Fork 428
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ko Propo Mini-z Protocols ASF/MHS #947
Comments
Hey, I have found this guide [#379](#379 (comment)) I used a BitScopeBS05U so i could only record on 8MHz. Please let me know i this is enough resolution or if I should order another logic analyzer. Thank You, |
Wow it looks quite small to solder wires on this board... I can see only 3 arrows on the PIC does it mean you haven't connected one of the signal (blue)? |
Hey, yes I found only these Three Pins on the mcu, but i will recheck it tomorow, mabye I missed the Connection. |
Today I got the Logic Analyser and went to work:
I probed the SPI with PulseView in 12MHz Mode, here are the Session Files: Hopefully this helps with the analysis, Thank you! |
I've only looked at the On_Idle file for now. |
I see that some TXs/RXs have 4 channels. Do you confirm? |
Bind payload 4 bytes (from "Binding_Fresh" and "Bind_Long")
Timing RF channels Why is it listening on 52 and 54? From "Binding" Normal payload 9 bytes
Payload |
I've found many RXs with 4 channels: https://fr.aliexpress.com/item/1005003078678987.html |
Hey, Your TX has only 2 channels right? How many channels do you have on your RX? What's the bind procedure?
|
Can you record CH3? |
Okay, I will Try it Later. |
Having the 3rd channel should be enough to clear the assumptions. |
I need to check my decoder there might be something I'm not seeing on the bind... I do see the difference with On_idle but I can't see what's helping for the bind. |
Okay mabye i have to unbind the RX first to see the Binding. |
Not sure how you can unbind it unless you have a second TX? |
Was the RX powered on and in bind mode when you launched the "Binding" capture? The only thing I see different during the bind is that the TX looks for a free channel before transmitting. Traxxas TQ is also transmitting on a single channel, use the last known good channel (same as above?), and if it hears about another TX, it will tell the RX to meet at another channel before switching. If the RX is lost, it doesn't scroll through all the RF channels (may be that's what the ASF RX does but that can take a long time to scan the full 39 available channels so a lot of packet loss) but instead it sends "help" on a specific channel, the TX receives it and sends a "hello" packet saying I'm using this specific channel come to me. |
Is it possible to bind multiple RXs to your TX? |
Was the RX powered on and in bind mode when you launched the "Binding" capture? It even never switches to normal mode during the dump Have you done all your dumps On/STR/THR without powercycling the radio? Is it possible to bind multiple RXs to your TX? What happens in this example: Bind your RX but power it off, launch a new bind on the TX with the RX still off, power of the TX. Will the RX reconnect after that? I have also recorded a new Binding with an previous unbound RX (I borrowed another TX) |
I tried also to Capture CH3, but on the TX I can only map it to toggle buttons, so full left or full right. |
CH3 is showing what I was expecting. It goes from 01 to FF. For the 2 additional bits I have been able to correlate the change and one of the 2 bits so I'm sure of the position of CH4 and CH3 but not STR and THR. The last 2 bits are hard to identify due to the noise, they keep moving quite a lot... |
Binding_Fresh and Bind_Long are completly different compare to Binding. There is actually a 4 bytes bind packet being sent with the ID. I'm wondering if I can simply scan for a free channel 04..50 and blindly send bind packets. Same for normal mode by the way. FYI I keep updating my first post with my findings and questions |
I can now code this protocol but I will need other dumps to see what happens when the frequency is used. Your TX is sending always on 4 so you could start recording, turn on the multi module which will also sends on 4 and we will then see what happens. My guess is that on detection of a used channel the alternating normal packets will be sent on 2 different channels current and a free channel for a (long) period of time and then fully switch to this new channel for a "smooth" transition. |
Please test v1.3.4.3 SFC available here: https://downloads.multi-module.org/latest-test/ For @FilePhil, please test as follow:
For others who also wants to test, just follow step 2 and report. |
Awesome, how fast you managed it.
|
Also i Attached the IRQ Pin to the Logic Analyser and recorded the Sessions: |
Can you test with v1.3.4.4 ? For Throttle not reaching maximum speed, it might just be due to the stuttering which I hop is solved in this version. |
Thanks, I tested v1.3.4.4: Binding a new RX works if the binding on TX is launched first and then the binding on the RX is started (Releasing the Binding Button on RX). The binding seems to reuse my original TX ID for the new bound RX. |
We are not done yet.... We will change the ID later.
|
I followed the Steps and the RX is still working on the original TX and Multi. |
Ok so strangely when there is a clash the TX doesn't change the RF frequency but instead shorten the packet (5 bytes instead of 9) and sends it less often which means that only steering is getting out every 16ms... Is it because it has seen the same ID? |
Can you try v1.3.4.5 which supports multi IDs? Assuming it works, I would need 2 dumps of the original TX:
|
Try to bind any RX, is it working? Verify connectivity after a power cycle of the RX, connectivity after a power cycle of multi. Make sure that the RX doesn't work anymore with the previous TX. Assuming it works, I would need 2 dumps of the original TX I also noticed that the range is only around 1m, is this a test firmware thing? :) |
This is unexpected and I don't see why since I'm setting the cyrf to full power unless you have checked low power... |
Too bad your TX has changed its RF channel outside of the dumps surely during your tests above. So I still don't have the info on what to do when there is a RF conflict... |
Okay new try, now the first time both turned on the same time: |
I recorded also a range test, where i am walked away with the RX. |
I've never asked for both TX to be turned on at the same time... I've asked first original, record then multi... |
Nothing is going to change even at a distance since the RX doesn't send anything. The latest version I've pushed looks for a free channel before transmitting. Try that one out. |
Okay, I assume from the Answer you need only the 2. sequence, right? To be clear this time:
Record Sequence:
|
I did try to power cycle, but the same result. |
I tested the Latest Firmware and the Range issue is resolved. @pascallanger is the Sequence Planning OK? |
I'm closing this issue as the code works as it is. |
Hi, what about the MHS protocol? |
Hi, i would like this protocols to be added
The text was updated successfully, but these errors were encountered: