A webapp that helsp programming arduino using a web browser
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Arduino Webapp

A webapp that helps programming arduino using a web browser

This app is supposed to run on a remote server connected to an Arduino (or similar) board. It provides a solution to probram the Arduino board from a remote computer using a web browser.

The use cases is an arduino connected to a Raspberry-Pi Computer.


## Arduino-mk

This application requires the Arduino Makefile to work properly, you can either install it from repository (e.g. apt-get install arduino-mk) or install it from the github repo. The second way is recommended becasue updeates: the repository arduino-mk have issues with the Arduino Leonardo Board


When working with python, it is reccomanded to use a virtual environment. Simply run

$ virtualenv env
$ source env/bin/activate

in the same forlder you downloaded the repo, then install dependences with pip

## Flask

This application uses flask microframework to accomplish web tasks, you can simply download it with the commabnd pip install flask. The application also need flask-bootstrap and flask-script.

(env)$ pip intall flask flask-bootstrap flask-script pyserial

Setting up

Before running the application, you need to You need to export some environmental variables: ARDUINO_PORT -> The port where arduino is connected ARDUINO_MK -> The route to Arduino.mk file ARDUINO_BOARD -> The tag name of the board connected, (e.g., uno or leonardo)

example (with default values):

$ export ARDUINO_PORT=/dev/ttyUSB0
$ export ARDUINO_BOARD=leonardo
$ export ARDUINO_MK=/usr/share/arduino/Arduino.mk

Running the server

simply run the command

(env)$ ./manage.py runserver -h --threaded

then connect to the path http://< IP or HOSTNAME >:5000 and enjoy!


The application:

  • presents a text editor where you can write directly from the webapp Arduino code with syntax highlitghing
  • compiles and upload the code to arduino
  • Monitor Serial messages from Arduino


This Application has been test on a Respberry Pi 2 (B) running Ubunut 14.04 and an Arduino Leonardo. Tested Clients are Google Chrome and Safari Browsers on Mac OS X Yosemite