Servers by jDrones

Loading firmware to raspberry pi 3 B without existing firmware (first time)

Hi so I’m trying to make a boat.
What I have access to is a windows laptop, a raspberry pi 3 B, a DC motor, 2 servos, some wires and a power source.
The plan:
Set up ardupilot rover for boats on the raspberry pi, connect it to mission planner on my laptop.
Connect the servo and DC motor to the raspberry pi.
Specify the pins for the servo to be used as a rudder and the DC motor to be used as a propeller

The problem(s):
I’ve been reading the docs (here) and I found this page after a looong search but had no clue which one of those to download. Until I found this page which talks about ardupilot for raspberry so I thought I should download the navio one and clicked that file and now I have a file called ardurover and it’s not dot anything.
So I installed the STM32 cube programmer like the guide in the docs says and now I’m having a hard time because the raspberry pi 3 b has only one micro usb connector and that connector only supports power, not data so I don’t know how to have this STM32cube programmer talk to the raspi.
But I also already transfered the ardurover (without the dot anything) file to the raspi so does anybody have a clue about how to start the raspi as a rover in my situation? I also have an ethernet cable I can connect between my laptop and the raspi and I don’t have any USB cable that has the same USB A type on both ends.

I also commented my problems here


Ardupilot needs to be run on autopilot hardware. Only the Raspberry Pi will not be enough. Emlids Navio2 is a HAT to be connected to the GPIO header of a Raspberry Pi. It provides all the sensors and connections for a working autopilot. Ardupilot will then run as a linux program on the RPi, using the sensors. That is what you downloaded.
Any programming devices are only needed if somehow a MCU based flightcontroller got bricked. They are of no use for a Raspberry Pi.

1 Like

Hi, thanks for answering me, I really appreciate it.
So I have a couple of questions.
Can I still make a suuuuuper basic (maybe literally only one forward thrust on/off) “autopilot” with just the raspi and the DC motor?
What do you mean when you say programming devices?

I don’t have this navio2 HAT (yet?) and I understand that the ardupilot firmware needs to have some stuff to work 100% but I’m just trying to make a super basic beginning type thing (like this guy talks about in this video ) of a boat and then when I get that working I can look into the next step. Which probably is to get those sensors (magnetometer, accelerometer and gyroscope (two sets?), barometer, antenna (not sure about it, might get a 4G connection instead to use the telecommunications network for long missions but that’s way out in the future I suppose) and LEDs? I would also like a way of measuring wind direction and strength).

But yeah, in my mind, version 1 would be something like this:

  • Turn on the raspi
  • SSH into it
  • Say go
  • Motor spins
  • Say stop
  • Motor stops spinning

And that’s it.
I don’t know how ardupilot handles being turned on without for example a barometer but I don’t think it’s absolutely 100% required so I’m wondering what does autopilot hardware mean?
Thanks again, I’m trying to understand and also not to spend too much time and money on this.

A Raspberry Pi can certainly do what you are planing to do with it, but it does not have much to do with an autopilot. Ardupilot will not help you with this, either. Ardupilot needs to run on specific hardware (microcontroller based flightcontrollers) or on a computer (Raspberry Pi) with specific hardware attached to it (Navio2 i.e.). Without any hardware/sensors Ardupilot will do nothing.
I would buy a cheap STM32 based flightcontroller (not an APM2.8!!!) and use the Raspberry Pi as a companion computer. Here is a list of supported flightcontrollers:

P.S.: Starting this kind of hobby (or any hobby) with the plan to not spend to much time and money on it, it might be better to not do it at all.

1 Like

Hey, thanks again for the replies :slight_smile: I appreciate them.
(Life really took over for a while that’s why I’m answering so late).

So I took your advice about the plan to not spend time/money and changed the plan and the budget so there is more room for stuff now.

All right, I understand the hardware/sensor problem now, but have a couple of questions.

Are you saying I can buy something called an STM32 flight controller and it will be cheaper than this navio2 thing and it will do the same stuff?

What is the difference between STM32 and APM2.8 (I do not know what those are)?

If a flight controller takes care of navigating the boat, what would the purpose of the RPi as a companion computer be?

Thanks again!

A STM32 is a family of 32bit microcontrollers made by STmicroelectronics. They are used on many different flightcontrollers. The oldest are STM32F1, the newest STM32H7. An APM2.8 is a modified clone of the old APM2.6. This is the last 8bit (ATmega 2560 microcontroller) hardware that was supported by the ardupilot project. Chinese sellers still try to make a quick buck with them, but they are not supported any more for a long time now. The Raspberry Pi (or other single board computers) as a companion computer allows you to do a lot of different things. I use them to get wifi telemetry/video/control for example.

Ah okay, thanks. Will beware of the 8bit controllers.

So finding a flight controller with an STM32 chip is a good find?

Do you know about any bundles with all the basics (like the GPS, and telemetry radio for both the drone and the PC) that I could get which is a surefire way to get started?

To find a flightcontroller compatible with ardupilot, this list is a good place to start:

Different flightcontrollers have different features. Things like canbus/uavcan, lua script support etc. are not available with all flightcontrollers. The cheapest with support for most features would be the Pixhawk 1 (sold as Pixhawk 2.4.8). I had no luck running lua scripts on it, though. There are bundles containing most parts on amazon for example.

1 Like

Thank you so much! This really helps! I hope I can figure the rest out from here on, is it okay if I contact you through this post if I have more questions that I can’t find answers to by googling or searching this forum?

Of course you can, the forum is for asking questions. If I do not know the answer (as it is often the case), someons else will.

1 Like

Excellent :slight_smile: Thank you!

Servers by jDrones