I’m working on making and programming my own drone. The main thought I’ve had recently is that it’d be nice to have a group that would meet every so often and build one. We could build one (body, motors etc) from scratch and use the code/microcontroller base I’ve got already, since that would make it a lot faster.
The programming language is C, programmed on an STM32F103C8 (a.k.a. a “Blue Pill”). I can help people set up toolchains etc so they can mess about with the boards as they’re dirt cheap (about £3 per board).
So far I’ve got:
1x transmitter, STM32 controller sampling potentiometers and switches, encoding the data and sending it over a USART packet radio with CRC’s and stuff for error detection.
1x receiver, STM32 controller “heart”, receiving the radio packets and decoding/error checking, sampling a 9 axis gyro/accelerometer, and outputting a I2C signal to a PWM generation board. The PWM board outputs a signal to an ESC, which then spins the motors proportionally.
It does technically fly at the moment, but not well and will crash very quickly.
What needs to be done:
-Make a new body from scratch, maybe using the laser cutter and plywood or something.
-New ESC’s. The ones I currently have are crap and have bad resolution. I have another STM32 board as an ESC and have succeeded in getting it to work when connected to a PC, but when I try with a PWM signal it doesn’t listen.
-Addition of a GPS module.
-New PCB for receiver and transmitter. The transmitter PCB is too big, and the receiver needs one, as currently it’s just soldered.
-Control algorithm programming.
If anyone is interested in helping out I think it could be a fun project for a group!
If you’re curious about how drones or any of this stuff works I’d be glad to explain in person, you don’t have to commit to helping out to be curious