Kategoriarkiv: Iot

Google summer of code project XMPP-IoT toolkit

Over the summer I have mentored a very good student from Hyderadad Adhish Singla he has without prior skills in XMPP worked with two visalisation tools and extensions to the SleekXMPP package to make it simple to create and use interoperable IoT devices talking XMPP.


What is that? It is a collection of open extensions to the famous well proven http://xmpp.org standard that has been used in millions of installations and different applications including settop-boxes and chat clients.

XMPP is a perfect suited messaging backbone for IoT since it can federate clients on different domains to ”friend” each other why not friend your neighbours outside temperature if yours is broken?

Any device running XMPP towards any of the other federated servers can talk to any other device, when you have

more: http://xmpp-iot.org http://xmpp.org http://xmpp.net


SleekXMPP python tools for running on devices. Python is perfect for easy programming of smart devices most of medium and high range devises is equipped with python from the start. like Intel Edison, raspberry Pi, Cubieboard, beagelbone and alike.

The code is currently in a branch on github to incorporate your local IO device you create field’s that can be readable or writeable and you start a GPIO python file r on your device and it is accessable as a device on the xmpp network. You can use any account on any on the available servers around just look at https://xmpp.net/list.php

Cordova Client

We have created a Cordova Strophe based client that can be used to view and change values from devices below is a simple example of running the cordova android emulator client and controling a philips_hue lamp available over the xmpp network.

Converse.js Client

to be able to have a webbased viewer we have incorporated the functionality in the converse.js web chat client it has been incorporated in the http://xmpp-iot.org websiteChat_and_value_example

XMPP summit / Fosdem 2015

This is my second year participating in the XMPP summit and the huge FOSDEM open source conference. The summit is a very interesting event and this year was no exception.  It is really fantastic to see so much voluntary effort put into these issues with discussions and solutions.

The state of XMPP-IoT was discussed an the general issue was that you need an introduction view of the basic core concepts and use-cases to connect the thoughts to the solution. The XMPP-IoT.org site is a starter and help is needed to get it better.

We had many visitors in the XMPP real time lounge and the ”chatting lamps” where a joy in the booth. We are already starting the planning for the next years event.

Talk Fosdem Brussels 2015

A radio intervju on hackerpublicradio.org

Being friend with an Intel Edison and have Secure access over XMPP

Today I started the amazing Intel Edison board to try and use the XMPP-IoT tools to connect it securely over internet and it worked like a charm.

inittial setup and configuring for wifi was done with the instructions from Intel, i used the mac version. It didn’t take long to get i hooked upp to wifi. Activate a password on root for it to enable remote ssh



Upgrade flash image to the latest



 Get the software started

I am using a fork from the python SleekXMPP package. Just wget the SleekXMPP package with the XMPP-IoT extensions from my Github. Python 2.7.3 is  already on the machine. The GPIO package ”mraa” for python is also installed from the beginning very handy.

You need two XMPP accounts on a server somewhere there are many https://xmpp.net/directory.php I usually use the swedish jabber.se. Create two accounts so they later can talk to each other.

in the /home/root folder on the Edison do:

wget --no-check-certificate https://github.com/joachimlindborg/SleekXMPP/archive/xep_0323_325.zip
unzip xep_0323_325.zip

Start off with blinking the magical led

Go down in the example katalog and start the python Edison example with your xmpp account.

cd SleekXMPP-xep_0323_325/examples/IoT/
python IoT_GPIODevice_Edison.py -j yourfirstaccount@domain.com -p password -n test_device

should look something like this


Now direct your browser to https://conversejs.org/# login with the other xmpp user you created. yoursecondaccount@domain.com.  Then choose to add a contact and  provide the first account it should just accept and you can start chat with the device. use ”hi”, ”toggle” ”relay=true” and ”?”



If you have a RELAY and a PIR sensor wire them up to the board use GPIO pin 13 for the relay and GPIO 8 for the PIR you can see the PIR sensor changing

Wirediagram_edisonRelay Pir and temp sensor on Edison

Some more interesting articles


The journal logs keep filling up so I changed the journaling.conf

to restart a clean image but I failed totally the reflashed edison keeps all settings


I found dokumentation on the opkg package manager very useful, especially the command to remove a package with dependencies


opkg --force-removal-of-dependent-packages remove <<yourpackage>>

Examples on using GPIO with python on the Edison Aurduion board


Jumpers on the Edison board





IoT, will we ever leave the silos?

Internet of Things is today huge, but as always it is hyped and includes almost every-Thing. Today we are back in the 1990’s creating business models based on a connected thing, letting the mainframe investigate and use our data. And for me as a customer I again, as it was in the 1990’s, end up with a bunch of incompatible systems, today called apps.

from Postscapes I found a very good sentence

When data is removed from siloed warehouses and is able to be identified and shared between products and services like it is within the current Internet architecture a true Internet of Things can emerge.

The explosion on apps on the phone is a result of innovation, based on the easy accessible sensors on the phone such as, camera, temperature, gps, gyro etc. Imagine the services that could be created if all IoT things was as easy to use as if they all were in the same phone? And in that case which phone?

We will always need integration and a way to interconnect system, IoT also needs that and no company based solution should win expecially if they own a phone. Please go for open solutions when you create your things, from my heart I think that XMPP-IoT is one of the more beautiful solutions.


Chatty things

Being at the Advanced Energy Conference 2013. I started to use the term chattering things or chatty things this is a very good abstract view of whats happening in the Internet of Things world.

The billion devices that is to be connected will in classical way be connected to private clouds which is just somewhat better than the old legacy, proprietary protocols. We are getting an exploding number of slightly different web api’s. Creating new web mashup services will therefor never happen since you need to support so many protocols.

The solution is to leverage the instant message paradigm and the XMPP.org standard. To be used by all things letting them chat with each other. A sensor can be friend with an actuator regardless of its origin or business domain. A humidity sensor in an alarm system could then easily be connected to the ventilation system.

When these chattering things are available in an interoperable way there truly is a possibility for real smart energy services to happen without the need of adding more hardware. You just let the sensor doing a friend request to the energy service. The just let them start chitchatting.