1. summary Introduction to Souliss framework.


Souliss is a framework for interconnected Things, smart homes and automated appliances. It runs over AVR, Arduino-like and Android and starting from begin of 2013 runs directly over Olimex's board including all the code and drivers to get started, you just have to compile and load it.

The idea behind the collaboration between Souliss and Olimex is provide a set of building blocks on both software and hardware side, this gives the opportunity to include complex functionality even without write a line of code.

Brief about Souliss

Souliss is build over three layer that builds a complete network of nodes with distributed logics and functionality, all nodes can exchange data in peer-to-peer and there is no need for a central node that coordinate logics and communications. Thanks to its scalable structure the functionality of Souliss can be moved over different nodes or merged on a single one, the best solution can be oriented to the network size and requirements.

Olimex Hardware supported in Souliss

There are several platforms available that can run Souliss, all are based on AVR microcontrollers and has different transceiver of I/O extension, in the following are listed the Olimex's boards that are directly supported in Souliss.

A direct supported boards can be loaded with Souliss in few steps, is only required to specify in the framework the hardware configuration then all drivers will be included automatically in the framework.

Microcontroller Boards
Olimexino-328 (Arduino Duemilanove compatible)
Olimexino-32U4 (Arduino Leonardo compatible)
AVR-T32U4 (Arduino Leonardo compatible)
Transceiver Boards
MOD-ENC28J60 (Ethernet Trasceiver)
MOD-WIFI (WiFi Transceiver)
I/O Boards
MOD-IO (Relay and opto-isolated inputs)
MOD-IO2 (Relay and standard inputs)
MOD-RGB (12V PWM DC Controller for LEDs and resistive loads)
Transceiver Boards that will be supported in next releases

Details on Souliss setup for Olimex's boards is available at Olimex Support Page general wiki is at Souliss Wiki.

Souliss Layers

A flexible installation is a simple goal thanks to the implementation build in layers. From the user point of view, these layers are not directly used, because are embedded into the Souliss API.


Communication runs over vNet, it build a virtual flat network, carrying out bridging and routing over different communication media (wired and wireless) at a lower level, without require any special setup of your own network.

vNet include drivers for many transceiver and potentially runs over all media controllers that has a collision detection mechanism.


Is an event-based and stateless protocol, is binary and tiny and allows peer to peer communication between nodes. Is implemented also in the Android application giving a straightforward connection, the event-based mechanism save battery and offer fast interaction.

Logics and Gateways

Things handling (lights, windows, gate, ...) is build as _typical_, a set of pre-configured logics that has also an available interface in the Android application. All nodes can provide a list of _typical_ used in it.

Gateways are additional protocol to communicate with external application, like Modbus SCADA system or HTTP enabled devices.

This category currently contains no pages or media.