RemoteXY
1. Introduction
Framework to design a graphical interface to control Arduino via
Anrdoid or iOS based smartphone or tablet.
2. Prerequisites
- Arduino IDE has been installed
- Espressif board package has been added
- ESP32C3 has been connected to the development computer
- ESP32C3 has been selected as board on the development computer
3. Getting Started
3.1 Prepare Arduino IDE
Add RemoteXY library:
- Open Sketch → Include Library → Manage
Libraries
- Enter
RemoteXY
in the field “Filter your search
…”
- Select RemoteXY by Evgeny
Shemanuev, RemoteXY
- Click INSTALL
3.2 Create a User Interface
- Open the RemoteXY
editor on the web: https://remotexy.com/editor/
- Configure properties:
- Connection: Bluetooth
- Board: ESP32 based board
- Module: Integrated Bluetooth
- IDE: Arduino IDE
- Set connection settings (board name and password)
- Design interface, e.g.:
- Add controls
- Add indication
- Download source code via Get source code button
3.3 Test Generated Source Code
- Check the value of the following two defines in the source code
REMOTEXY_BLUETOOTH_NAME
: your board’s Bluetooth
name
REMOTEXY_ACCESS_PASSWORD
: your board’s access
password
- Click Upload
- Wait for upload to
finish
- Install RemoteXY on your Smartphone
- Connect RemoteXY app to your
board
- A Bluetooth LE device with the name you configured in the RemoteXY
editor should appear
- To connect the password configured in the RemoteXY editor is
required
- The RemoteXY app should show the configured user interface
3.4 Adapt Generated Source
Code
The generated source code consists of three sections:
- RemoteXY configuration
void setup()
function
void loop()
function
//////////////////////////////////////////////
// RemoteXY include library //
//////////////////////////////////////////////
...
/////////////////////////////////////////////
// END RemoteXY include //
/////////////////////////////////////////////
void setup()
{
...
}
void loop()
{
...
}
3.4.1 RemoteXY Configuration
This section contains
- the user interface configuration
- the stucture holding the user interface inputs, outputs and status
variables
3.4.2 void setup()
https://www.arduino.cc/reference/de/language/structure/sketch/setup/
3.4.3. void loop()
https://www.arduino.cc/reference/de/language/structure/sketch/loop/
4. Examples
4.1 App-Only
4.2 ADC
4.3 Motor