The last DevBlog is pretty a while ago, but we continued working and now I can write about a lot of changes and even a kind of project presentation!
After we decided to replace Android Things with C++ on Raspbian Stretch Lite, Tim and I (Thomas) finally started coding on the Flight Controller.
We began to read the HC-SR04 Ultrasonic Sensors. It worked a lot better than with Android Things, so we continued and worked on our 10DOF (Degrees of freedom) chip.
This chip includes an accelerometer, a gyroscope, a barometer with a built in temperature sensor and a magnetometer.
This chip is connected via i2c, so we had to find out the addresses of the sensors and we had to read the 16-Bit values and convert it to useful numbers.
Every sensor (except the magnetometer) works as expected. We'll work on the magnetometer in the next few days.
Michael and Markus worked on the "Flight Planner" tab. The included OSM and the feature to create Flight Plans.
Each Flight Plan can have multiple waypoints, that can be added, modified and deleted on the OSM GUI.
Flight Plans can have a name and a description. Flight Plans that already have been saved can also be modified.
On the 23th November 2018 we presented our OpenDrone project at the so called "Open-Door day" in our school (people, who may want to go to our school visit us and they can inform themselves about our school). We had our own booth to present our project.
We had to prepare something for this event, so we interrupted the work on the sensors and implemented the feature to trigger the motors of our drone.
Moreover, we created a TCP-Server on the Flight Controller and the App. We created a slider in our app, the slider sends a integer to our drone and the drone triggers the motors with this value.
We installed an oscilloscope between the PWM-Pin and the ESC (Electronic Speed Control) to see the change when the person changes the slider.
Next to our drone we had our 3D-printer. The printer printed some keychains as a gift to our visitors.
We're very motivated to continue working, the next steps are
- to implement a good communication protocol between app and drone
- to start coding on balancing our drone
- to implement the GUI of the "Manual Flight" feature in our app
If you want to have a look at our code, feel free to visit our GitHub-Repository!