Servers by jDrones

DShot and BLHeli ESC Telemetry support

blheli
dshot

(Tiziano Fiorenzani) #4

That is going to be a real time saver. Plus all the telemetry coming from the esc allows for a better understanding of the vehicle’s performance. Thanks


(edge540T) #5

Oh… esc telemetry on pixhawk, we can see escs on logs?


(rmackay9) #6

edge540T,
Yes, the ESC rpm, voltage, current and temp are stored to the dataflash logs.


(rmackay9) #7

Fnoop,
Copter-3.6 will default to NuttX in the mission planner (and probably other ground stations) but we will make both NuttX and ChibiOS available and we hope the beta testers will help us test both when testing start in the next few days.


(Luca Ceccarelli) #8

Hi,

congrats for the great jobs, is it mandatory to configure the DSHOT? Because I would like just have the ESC telemetry.


(rmackay9) #9

Luca,

I think for the moment at least the telemetry requires using dShot. The reason is that because the ESCs’ telemetry connections (which are serial) are all connected to a single serial port on the flight controller, we need to use the dShot connection to tell the ESC when the line is clear for them to send their message. If we didn’t do this then the messages from the ESCs could (and probably would) arrive at the same time and they would end up corrupted.


(Luca Ceccarelli) #10

Thanks for clear reply… for the moment i’ll use kg 4in1 blheli_32 esc as a standard esc, i.e. with pwm waiting for the 3.6 final release.


(Nathan E) #11

Spoke with @tridge yesterday about reverse thrust support (https://github.com/ArduPilot/ardupilot/issues/8579). Hopefully coming soon! The rest works well on plane 3.9 beta1.


(wkf94025) #12

Nate, glad to see you are pursuing this. I just read your issue 8579 writeup. It implies that reverse throttle works as expected for non-dShot. Is that the case?

What are you doing/thinking re ESC telemetry display while in flight?

Kelly


(Nathan E) #13

I think I tested reverse thrust on the bench and it worked well with PWM (continuous smooth throttle range). I haven’t flown with it yet, but I don’t anticipate any issues.

I would really like to see the percent throttle for every motor while in-flight. For my twin-engine planes, that would be a -100% to 100% range for each motor. That way I can monitor their health and tune.


(wkf94025) #14

Now seeing rpm, amps, temp in ESC fields of DF log. What’s next step toward getting real-time display of those in either GCS or OSD?

Kelly


(priseborough) #15

Does the baud rate setting on the serial port connected to the ESC matter? The wiki doesn’t mention what to set it to.


(tridge) #16

It is automatically set to 115200, so it doesn’t matter what the parameter is set to


(James Pattison) #17

It should set itself to 115200 when you assign the function to the uart.


(tridge) #18

support for realtime ESC telemetry is now in master. It is also in the latest releases of pymavlink and MAVProxy.
What we need next is a way to display it in MissionPlanner and QGC


(priseborough) #19

I am using a pixracer and due to the need to run a second GPS on the Telem2 port, was trying to use the FRsky connector for the ESC telemetry connection, which according to this page http://ardupilot.org/copter/docs/common-pixracer-overview.html is serial 4, however this may not be the case as I am also not able to get that port to read a known working GPS receiver.


(Fnoop) #20

That port’s got a hardware inverter hasn’t it?


(priseborough) #21

That would explain it :slight_smile: Telemetry works when connected to Telem2.


(priseborough) #22

I might be able to use the debug port


(tridge) #23

There are several solutions I can think of:

  • we can change in the hwdef.dat to add the UART7 debug port to UART_ORDER list, and add a hal.uartG and SERIAL6, so we allow for 6 configurable ports on pixracer.
  • we can make the FrSky_INV control pin be user configurable. I’ve opened a PR for that just now (see https://github.com/ArduPilot/ardupilot/pull/8700). That will allow RELAY_* settings to control if FrSky port is inverted or not
  • we could add a BRD_* parameter for controlling FrSky invert