Getting Started with Souliss

Dario Di Maio edited this page Oct 8, 2016 · 16 revisions
Clone this wiki locally

Getting Started with Souliss

Souliss is an interconnection framework composed of two main parts:

  • The framework : Is the code that runs on your nodes, is distributed as source code and need to be compiled and loaded on your nodes. A node is an interacting object, based on an Arduino compatible electronics module.
  • The user interface : Is the way you can interact with your nodes, SoulissApp is the starting point and lets you control your nodes from any Android based device. There are others user interfaces, but keeps things simple now.

The following checklist will help you getting started with Souliss, is generally a task that require less than an hour if you are used with Arduino enviroments.

Getting Started Checklist :

  • Verify if your node is supported
  • Get the latest supported Arduino IDE
  • Get the latest Souliss framework code for Arduino
  • Get the latest SoulissApp Android application
  • Verify the Blink example
  • Configure the Souliss
  • Compile and load Souliss, then have fan

Step 1 : Verify if your node is supported

The Souliss framework is designed to run on multiple architectures and communication interfaces, so you should first verify which are the supported hardware platforms. If your hardware is listed, then you can move further.

There are two main option, get a board that contains all the required hardware (like the ProDINO boards by KMP Electronics) or assemble by your self a node with one or multiple communication interfaces and I/O based on your needs.

Step 2 : Get the latest supported Arduino IDE

The Arduino IDE is a tool to write, compile and load the Souliss framework on your nodes. You should download Arduino IDE 1.6.12 for Windows ZIP file for non admin install as Souliss has been tested on that release in portable mode.

Consider that the Arduino IDE is shipped by default with support for some ATmega microcontrollers and others based on the official Arduino products, however some boards may require you to install additional cores to support specific microcontrollers (like Moteino boards and ESP8266 ones).

Please refer to the supported microcontrollers section for details on required cores for the microcontroller used in Souliss.

Step 3 : Verify the Blink example

If is the first time that you use your Arduino board, the best is start with a simple example, to be sure that your IDE is ready for compiling. From the menu File -> Examples -> Basics you load the Blink sketch.

From the Arduino website ( you can get the starting guide for the Blink example. Once you will compile and run Blink properly, you can move to next step.

Step 4 : Get the latest Souliss framework code

The framework source code is available from the Library Manager, follow the guide on the Arduino website, just search souliss in the Library Manager and install the latest available release.

You can also install manually the library, from the download page use the zip file and import into the Arduino IDE, this allow you to use latest commit that hasn't yet been released on the Library Manager. Before install Souliss manually delete previous Souliss release from the Library Manager and the download the ZIP file and use the Import function from the Arduino IDE.

Once installed you have can see under File -> Example-> Souliss a list of examples, each one has a small description on the top. Have care, the examples include yet the configuration of a specific board and transceiver type. You can easily use the same example over different board or transceiver, changing the configuration files.

Step 5 : Get the latest Souliss Android application

The SoulissApp interface is the entry point of your Souliss network, you can download the binaries from Google Play Store and install directly on your device.

If your device hasn't the Play Store, you can download the binaries for manual installation (need the Enable Unknown Sources enabled).

Step 6: Configure Souliss features

Just because Souliss runs on multiple architectures and transceiver, it requires a configuration. In the configuration you specify the board, transceiver and functionality that want on your node.

If you are starting with a simple Arduino Ethernet (or compatible) you just have to specify an IP address and define your Souliss Gateway node.

Step 7 : Compile and load Souliss, then have fun

You are now ready, compile and load your code and you will be ready to play with Souliss and SoulissApp.

If you feel that some more explanation is required, have a look at Your First Upload to have a step-by-step description for a simple case with one Ethernet board.

You can ask for support using the community mailing list.