arduino-emulator
All Classes Namespaces Files Functions Enumerations Pages
An Arduino C++ Emulator Library

Jupyter

I really wanted to have an interactive Jupyter environemnt in which I could play around with Arduino commands and when I discovered that Arduino provides a good starting point with their ArduinoCore-API I decided to draft this prototype.

I am using xeus-cling as a runtime environment to simulate an Arduino Development board and I have added the missing implementation using C or the C++ std library.

The goal is finally to be able to provide different alternative implementations for accessing the pins

  • Using a Stream interface to communicate with an real Arduino Device (e.g. via udp)
  • Using some standard Linux userspace APIs for GPIO
  • Using wiringPI to be run on a Raspberry PI
  • Output to a file from where it can be analysed

I have a first working prototype ready but naturally there is still a lot to do.

Content

Using this Project as a library

If you have an Arduino Sketch that you want to run e.g in Linux or OS/X you can include this library with cmake. Here is an example cmake file for a Arduino Audio Sketch.

Documentation

Installation

You can download the library as zip and call include Library -> zip library. Or you can git clone this project into the Arduino libraries folder e.g. with

cd ~/Documents/Arduino/libraries
git clone https://github.com/pschatzmann/Arduino-Emulator