Souliss Automation and IoT Framework Makes Your Home Smarter

Souliss is an open-source framework written in C/C++ for the Internet of Things and home automation that runs on Arduino boards, or other Atmel AVR MCU based boards, and let your control lighting, heating, or anything else you can think of via your Android device, or switches connected to your board(s).

Souliss_Getting_Started_Steps

You can get started with Souliss in 3 steps:

  1. Getting the building blocks, for example:
    • Arduino, Olimex, or other AVR boards (See list of supported boards)
    • Relay boards
    • ON/OFF Switches, Lights, etc…
    • Wi-Fi router
  2. Download and load Souliss to an AVR powered board controlling real things such as lights.
  3. Monitor and/or control via Souliss Home Automation App for Android.

A detailed getting started guide is provided on Souliss Google Code page.

Internally, the framework is composed of three parts: Souliss, an application level layer, MaCaco, a communication protocol and vNet, a transport layer. I’ll skip details in this post, but if you’re interested you can read the Wiki, and Souliss is fully open source so you can download the code as well.

Let’s see one example called Souliss – Fiat Lux with 2 lights.

Light Control Example with Souliss
Light Control Example with Souliss

In this example, the first Arduino board (on the right) controls 2 lights via a relay board. You can turn off the lights directly via the wall switches also connected to the Arduino, or IP networks with the Android app that sends commands via Wi-Fi to the router which are then forwarded to the Arduino board via Ethernet. If you lights are outdoors for example, and it’s freezing, you can also turn them off via 2 switches connected to a second Arduino boards (on the left) that asks the first Arduino board to turn on/off the lights via Ethernet.

One of the co-founder of the project is running his house over Souliss, and in one room (party room?), he can control 2 LED strips (power and colors) via Souliss Home Automation Android app, control the songs that play via the speakers, and turn the LED strips into some sort of audio frequency visualizer, as it follows the current song beats. Watch the demo below.

You can find more information, including examples, tutorials, and more, on souliss.net.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX Rockchip RK3588 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
4 Comments
oldest
newest
notzed
notzed
11 years ago

C and C++ are distinct and very different languages – there is no such language as “C/C++”.

Dario
11 years ago

Yes, Souliss mix C and C++ based on needs. All the code that is written directly is just C, but as open-source project is based on other code that some times is in C++.

Generally I don’t like OO programming, especially on AVRs, because you haven’t direct control of the allocated memory. Really in many cases OO can be avoided, just using C and macros can give an user friendly result.

Regards,
Dario.

Boardcon Rockchip RK3588S SBC with 8K, WiFI 6, 4G LTE, NVME SSD, HDMI 2.1...