Pcf8583 start automatically

Good morning

I work with a pixhawk 4 with differents fixed wings and I want to use a rpm sensor pcf8583. I saw in the doc that the sensor has to be starting manually by taping “pcf8583 start -X” in the mavlink console. To do that autoatically I saw a solution which requires modifying the file in the SD card. Is it possible to modifying the airframe file to customize the soft and not the SD card. With this solution the sensor starts automatically when it’s switched on and the “rpm frequency” is logged in the ulg file ? If yes is it right to simply add “pcf8583 -start X” directy after the “param set” line ?

Thank you for your response :slight_smile:

Maël Forestal

Hi Mael,

The TFRPM01 board driver does not (yet) support the automatic selection of the bus with the connected sensor. Therefore, it is not possible to put it in the airframe startup files (then it would require having the sensor always connected to the same port).

After programming this feature, it will be possible to start the sensor in the same way as other sensors.

“rpm frequency” is logged in the ulg file ?

RPM frequency is logged if it is measured.

If yes is it right to simply add “pcf8583 -start X” directy after the “param set” line ?

Command must look like:
pcf8583 -start X -b <bus number>

You can add it there, but you must specify the bus number. Without this automatic port selection feature, this will not be mergeable to upstream.


Good morning,

Thank you for your response and your time !

I would like to work with 2 rpm sensor (1 for each rotor). It’s describe in the doc that it’s possible to modify the I2C address of the PCB but when I do that and use the command : pcf8583 start -X in the mavlink console, there is only one sensor logged.

How can I activate/log the 2 sensors ? Do I need to modify the pcf8583 driver ? (I work with the firmaire v11)

Thank you :slight_smile:
Forestal Maël

Hi Mael,

currently, multiple TFRPM sensors are not supported by the driver. The address is selected from the PX4 parameters and there is no input argument for this. It would be possible to run the driver twice on a different bus. But the data would be published in the same report (you don’t know which sensor it is from). These adjustments are planned but now it is unknown when (due to time).

Are you able to help us in any way? We can tell you more about it and give you guidance. Write me a PM.

1 Like

Dear @Mael_Forestal,

I have an update on this issue. Since this PR PX4 supports connection of multiple TFRPM sensors to single autopilot. And support for multiple instance sensor (logging data from multiple RPMs, transmission data via mavlink, …)

To ensure that the user is not limited by the number of I2C addresses by the number of free I2C ports, we have developed an I2C address converter that allows you to very easily connect 6 RPM sensors to one port. More details about this TFI2CADT module is in PX4 docs.