:warning: Under development: The library openiolink is a work in progress, and we expect it to change rapidly, including breaking API changes. Feedback is highly appreciated.
The easiest way to deploy for Arduino is to use the Arduino IDE. It is available for Windows, macOS, and Linux.
In the Arduino IDE, click File->Open and select the *.ino
file in the local Git repository in the subfolder Demonstrator/
. If the code is open, you can click Sketch->Upload and the IDE will compile the code and flash it to the Arduino.
To edit the code, it is more comfortable to use Visual Studio Code. The big advantage is that VS Code can do syntax highlighting and IntelliSense works. The problem in the Arduino IDE is that it doesn't display files in subfolders, so only the project file is displayed at startup.
To communicate with the Raspberry Pi, a SSH client is required. On Windows, we suggest to use Putty. On Linux and macOS, the SSH client (typically a version of OpenSSH) is usually already installed. SCP can be used to copy files from or to the Raspberry Pi on the command line or via a GUI such as FileZilla or WinSCP.
To use the application on Raspberry Pi 3B, the operating system Raspbian is used. Also, the library WiringPi and the build tool CMake is required.
This can get installed using the command:
sudo apt-get install wiringpi cmake
After a successful installation, the Raspberry Pi is ready to use.
The easiest was to compile the project is, to copy all sources to the Raspberry Pi, and compile the project on the Raspberry Pi itself.
/home/pi/projects/
cd /home/pi/projects/
cd Demonstrator/
cmake .
make
If every step was successful, an executable file (e.g. Demonstrator_v1_0.bin
) is created in the project folder. This one can be executed using ./Demonstrator_v1_0.bin
.
If a problem in the application exists, there is a possibility to edit the files on the target. This can be done for example using WinSCP.
It is more comfortable to use Visual Studio Code with the plugin "SSH FS", which is available on the Visual Studio Marketplace. This plugin can mount a filesystem over SSH to the local filesystem. This means, all changes will be made online. The big advantage is that Visual Studio Code can do syntax highlighting and IntelliSense works.
If you would like to debug the application using Windows, cross-compiling is quite difficult. You must download the source files from Raspberryi Pi, compile the executable, and upload the binary file.
It is very easy to deploy an application using Visual Studio. Since VS 2017, it is possible to create a Linux project, see here.
If the project has been created, a README shows how to connect to the target platform. It is only necessary to add all source and include files to the project as well as to add the library wiringPi
as a linker input (also described in the README
). Finally, VS will copy all files to the target, build the application on the target, and it is then able to debug the built application on the target. It does not cross compile, but it is a nice way to debug the application.