Voxl2 Spektrum Receiver error
-
@Eric-Katzfey I am also getting my hands on a DX6e for me to test. I should be able to try that in the morning. I still would like to figure out the DX8 as well though since we already have a bunch on hand in our lab.
-
@Chase-Riley Did you analyze the flight log?
-
@Chase-Riley For the DX8 there are some configuration options on the transmitter. There is DSMX versus DSM2. That may need to be changed. Have you tried the different options yet?
-
@Eric-Katzfey I have tried all of the options in the DX8. 11, 22 and DSM2, DSMX. They all seemed to produce the same results in the logs.
-
@Eric-Katzfey Here is a
voxl-px4
log while testing with a DX6e this morning. I was able to bind and calibrate no problem. I am just not able to control the motors. Flight mode and kill switch seem to be working fine. So seems to have the same behavior as the DX8 with a error in the log for 32 bytes and 0x00.INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 ERROR [muorb] SLPI: Spektrum RC: Invalid DSM frame. 32 bytes. Protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf5 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Armed by external command INFO [logger] Start file log (type: full) INFO [logger] [logger] /data/px4/log/2024-01-24/19_14_37.ulg INFO [logger] Opened full log file: /data/px4/log/2024-01-24/19_14_37.ulg WARN [mavlink] Event dropped (297, 65527) WARN [mavlink] Event dropped (297, 65527) WARN [mavlink] Dropped 65230 events (seq=65527) WARN [mavlink] Dropped 65230 events (seq=65527) INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00 INFO [muorb] SLPI: Spektrum RC: DSM message parsed successfully INFO [muorb] SLPI: Spektrum RC: Publishing input_rc INFO [muorb] SLPI: 0x00 0x00 0x8c 0x05 0x01 0x56 0x14 0x00 INFO [muorb] SLPI: 0x1b 0xf6 0x2e 0xaa 0x3c 0x00 0x34 0x00 INFO [muorb] SLPI: Spektrum RC: 16 bytes from UART, protocol byte 0x00
-
@Chase-Riley Huh, that still doesn't look right. When you calibrate you can move each stick and it shows properly in QGC? And listener input_rc shows the values moving properly when you move the sticks? What is the value of the parameter COM_RC_IN_MODE?
-
@Eric-Katzfey yes, each stick moves correctly in QGC.
listener input_rc
shows all sticks move correctly. I have tested withCOM_RC_IN_MODE
set to 0 and 2 and both yield the same results. -
@Chase-Riley And they are mapped correctly such that throttle is on the stick you want? Can you do listener on manual_control_setpoint and see the throttle value move when you move the throttle stick?
-
@Eric-Katzfey
RC_MAP_THROTTLE
is set to Channel 3,RC_MAP_YAW
is set to Channel 4,RC_MAP_ROLL
is set to Channel 1, andRC_MAP_PITCH
is set to Channel 2.Moving the Throttle and Yaw stick while running
listener manual_control_setpoint
shows Throttle and Yaw changing values as it should. It also shows that Stick movement goes TRUE. -
@Chase-Riley Then at this point I can't think of how the RC could be related to the motors not spinning up. Can you arm, try to throttle up a few times, then disarm and send us the px4 flight log?
-
@Chase-Riley And you have tried to throttle up in manual flight mode?
-
@Eric-Katzfey I have tried to spin the motors in manual mode as well with no change. I have included a drop box link with the px4 flight log you requested.
-
@Chase-Riley I'm having some others take a look at the log file. I'm kind of stumped at the moment.
-
@Eric-Katzfey Please let me know what you or your team find. This seems to be the last hurdle to getting me to flight testing. I have a shipping deadline to make on Friday with this system.
-
@Chase-Riley Seems like ESC param issue. Alex is going to respond with some suggestions.
-
@Chase-Riley , we have discussed and the data on the PX4 side looks ok so far, which leads me to believe there may be an error in ESC params, specifically the RPM curve calibration
pwm_vs_rpm_curve_a0
,pwm_vs_rpm_curve_a1
,pwm_vs_rpm_curve_a2
.Please confirm that you performed the calibration (with propeller mounted on motor!) according to instructions here and updated the results (a0, a1, a2) params in your esc params xml file and sent it to the ESC ?
Also double check the
min_rpm
andmax_rpm
in your esc params -
Additionally, I saw that you use
THR_MDL_FAC
set to 0.8, which is what we use in our Sentinel drone. However, your propellers, if i am not mistaken, are much larger and this factor may need to be correct. I will double check how to calculate this factor correctly. -
Another suggestion: you can test your ESC response with the following command:
https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-esc/-/blob/dev/voxl-esc-tools/calibration.md?ref_type=heads#test-esc-using-rpm-commands (at the very bottom)
(you can adjust your test command according to your motor / prop and min/max rpm, etc)
-
@Alex-Kushleyev I went and checked my .xml file and verified it was correct and re uploaded it to the ESC just to make sure. I had already run the calibration and updated the A0, A1, and A2.
I did find that my
min_rpm
andmax rpm
were different in the xml file than I had them set in px4. That may have been the issue because control seems to be working fine now. Between re flashing the xml and changing the values one or both of the solutions solved the issue. I will contnue testing and report back with any issues. Thanks for jumping in and helping out.@Eric-Katzfey you said this morning that the DX6e data I sent over did not look correct. Is there something else we want to look into there. As I said before after looking at the logs the DX8 and the DX6e seem to behave the same way.
-
@Alex-Kushleyev Do you have a rough idea of what this value should be set to? If you need to know my motor and prop combo send me an email. I would rather not disclose on the forums.