Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Fun. I'm looking into turning my old iPhone into a drone as it has great hardware already to do higher level tasks and use ESP32 for the more real time stuff like actually driving the motors based on sensor input.

If you think about it, an old iPhone 6 comes with GPS, gyro, accelerometer, multiple cameras, pretty powerful processors, bluetooth + wifi + LTE, sound + light, ambient + proximity sensors. Get rid of the case, and you have a great mini computer that can be aware of its surroundings and communicate.

On more modern iPhones, you can even use advanced tech like ARKit to have great spatial understanding of your drone and environment and do autonomous drones. With an iPhone 15, you can even get spatial video. How amazing would that be?

I wish Apple provided a straightforward way to unlock(like remove restrictions on the OS level) old phones and use them for DIY projects.



Do you really need the phone? The dual core 240MHz ESP32 seems to be able to do the job at lower weight and power consumption.

Maybe the old phone is better used as a controller?


I got an ESP32 WROOM 32U board that I intent to use it as the flight controller which will keep the drone within its flight envelope and do the maneuvering upon receiving commands from the phone.

I find the phone appealing because I want try to make it somewhat autonomous, like im RTS games where you give a unit a command to go somewhere and it figures the path out by itself and avoids obstacles without direct input. The phone has quite a lot of processing power and sensors and IMHO doing it on board will be more interesting. Also, I'm not sure that the connection will be always stable and high bitrate make the drone a thin client.


Still I think I'd just have the phone run an app that talks to a microcontroller by Wifi, even if it is strapped to the drone all the time.


I haven't tried it yet but as it appears that will be my choice too. Other options appear to be bluetooth or ethernet tethering over USB.


You would want to use quite literally anything except Apple-manufactured hardware for this purpose. Just don't even waste your life-minutes on that kind of thing.


Not a realtime os though


True but, IMHO, a lot of the higher level task should be able to handle it. I guess you can have a simple real time IC to handle the flight envelope to provide stable flight and then use the iPhone to do the advanced operations. For example, if you are building a drone that is mapping the environment and follows you through a bike ride, does it really matter if the 3D environment it creates for autonomous navigation is slightly off? You can continuously compensate for it, stick with moving averages and avoid extreme moves.


That real-time controller still needs the IMU sensors, which is maybe what GP was responding to. (Your iPhone could have an additional set of them, but the ones on the phone don't do any good to the real-time subsystem.)


Oh, I got an accelerometer card for that. It's very small and cheap, there are also cards that contain a gyro + barometer. So if the phone ones are not real-time enough cheap options exist.


imo "realtime" is such a misnomer. It should be re-termed as "jitter minimized" or "loop interval stabilized" or something along that.


Hence a microcontroller for flight control. The iPhone can just decide on the higher level tasks and send control signals to the microcontroller, similar to how a microcontroller delegates tasks to the underlying hardware peripherals.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: