Need Advice for new Driver Developer

Hello Everyone,
i am new to the PX4 world. i am working on a project in which i am tasked to connect a new sensor(Airspeed, Aplha, Beta sensor) to pixhawk i.e running PX4.
After some research i came to know that i have to write a new driver for it to get the data and feed in into the autopilot.
I want an advice from you guys

  1. where should i start with, like for now i am looking at the MS4525D0 code thinking to make changes in it and compile)
  2. what skills do i need for it, i just know basic programming. Should i be familiar with Nuttx, Lua scripting etc…?
  3. i am just looking at the code for the past 1 month or so but no progress, is it a time taking task or am i doing anything wrong.
  4. Can i do through a companion computer? Like connecting the sensor to Pi and then sending the data through MAVLINK. Do i need to write a custom MAVLINK message for it?
  5. Is writing the MAVLINK message as difficult as writing a new driver?

Plz respond…as i am banging my head with the PX4 documentation but found no solution.

That’s what I would have suggested. Basically, you want to go from a situation that works, and then take very small steps and validate and test as you go, until you arrive at your goal. You will pick up PX4, NuttX, etc. up on the way as required. You will however want to know the basics of C, C++, cmake and git to know somewhat what you’re doing.

First question, what interface does your new sensor have? Serial, I2C, DroneCAN?

The sensor is FTB-1 airspeed sensor from Swiss Air-Data along with ADC-10. It is operating at RS485 but i can convert it with MAX485 module to TTL.
So the plan for now is to use UART interface.

Ok, in that case copy and rename another sensor driver that connects via UART, and then get it to build. Then you start changing it to understand your device.

where will i store /install /place the file in sd card through lua script ?


Px4 doesn’t support LUA script. This may be possible through Ardupilot.