Android phone as GUI for Arduino
I have many obsolete Android phones, obsolete not because they are broken but the Android version cannot be upgraded. These phones are in perfect working condition. I was thinking of interfacing the phone as a display interface to Arduino projects. Since phones have Bluetooth, isn't it nice for Arduino to send the display commands via a Bluetooth interface?
Here's a simplified diagram.
The possibilities are endless. The Arduino also can use the phone's rich interfaces such as GPS, compass, speaker, touch screen etc.. as extended GUI components (similar to Amarino).
Here's a simplified diagram.
The possibilities are endless. The Arduino also can use the phone's rich interfaces such as GPS, compass, speaker, touch screen etc.. as extended GUI components (similar to Amarino).
High level requirements
On the Android side:
- Be able to send device capabilities (eg: LCD X/Y pixel limit, number of colors, other peripherals) to Arduino
- Process display commands and data received via Bluetooth
- Send acknowledgements to Arduino
- Play preset audio and video files (ie: files live on the phone, Arduino will send file ID to play)
- Sprite movements (see SwinGame for simple API)
On the Arduino side:
- Send display commands and data via Bluetooth to phone
Some people have already tried many similar ideas:
- Using an old phone with USB OTG and RS232 pins: https://youtu.be/iobvVl8jZ5o
- Android reflow controller - very similar to what I want to achieve
- Amarino enables phone events visible on your Arduino - Research paper
This is the holy-grail of what I am trying to achieve - The Arduino ADK is a microcontroller board based on the powerful ATmega2560. It has a USB host interface to connect with Android based phones - $85
- A Smartphone Robot - Phone controlled by PC via WiFi, Arduino via Bluetooth
- Hippo-ADK controller board plugs into a user’s Android phone, allowing it to utilize the phone’s proximity sensor, gyroscope, Bluetooth, camera, and other features
Direct LCD hardware interface
- Raspberry Pi with iPhone LCD - uses MIPI DSI
- Interfacing 640×360 TFT LCD from the Sony U5 Vivaz mobile phone
- Reverse-Engineering an LCD Display
- Reverse engineering LG KF700 3" 480×240 LCD
- HOW TO Disassemble And Recover Parts from a dead tablet/phone
- Interfacing Arduino with Nokia 6100 Color LCD (128x128)
Contains a nice Arduino library - https://www.generationrobots.com/en/401121-color-lcd-shield-for-arduino.html - Graphics co-processor with the STM32F0 MCU controlling Sony Ericsson Vivaz U5 (3.2" 640×360)
Related :
- USB IO Board PIC18F2455 / PIC18F2550 - converts USB signals to IO
- Connect a Mobile Application to your C.H.I.P. Using Bluetooth
- LightBlue Bean+ is an Arduino-compatible board that you program wirelessly using Bluetooth
- MIPI DSI = Mobile Industry Processor Interface Digital Serial Interface defines a serial communication protocol for the display controllers for mobile products.
- MEMS = Micro-Electro-Mechanical Systems
- BlueTooth-HC05-HC06-Modules
- Ionic framework : Bluetooth to Arduino


Leave a Comment