AWS IoT – schwerer Start

Zur AWS re:invent in Las Vegas vorletzte Woche stellte der Buchhändler aus den USA seine neuen AWS Services vor. Darunter auch einen für das “Internet of Things” – AWS IoT. Das liess doch gleich meines kleines Nerd-Herz höher schlagen. So setze ich mich am Wochenende hin und wollte mal versuchen was man damit so hinbekommt.

Mittlerweile nenne ich schon diverse kleine Geräte aus der IoT Klasse mein eigen. Darunter zwei Particle Geräte, RaspberryPi und ein vom @holadiho & @chaosblog selbst geklöppelten Arduino mit GPRS Modul. Dachte ich mir das man damit schon etwas hinbekommen würde.

Ohne Titel

Leider scheint das alles nicht so einfach wie erhofft. Amazon bietet den IoT service via HTTP und MQTT an. Beides muss jedoch via TLS verschlüsselt werden. Das ist im Prinzip eine sehr löbliche Grundeinstellung von Amazon. Gerade bei IoT geht es oft um sehr persönliche Daten bei denen man schon sicher sein möchte das die an der richtigen Stelle landen. Verschlüsselung und Zertifikatsbasierte Authentifizierung machen es zumindest sehr schwer die Kommunikation der “Things” mit der AWS IoT Cloud zu beobachten oder manipulieren. Nun muss man wissen das Arduinos und seine Derivate tendentiell schwachbrüstig beim Rechnen sind. Daher können viele der kleinen Arduinos und auch die Geräte von Particle TLS nicht. Das erfordert einfach zu viel Rechenpower. Particle verspricht für seine Core/Photon bis Ende des Jahres TLS Support.

Ohne Titel

OK, also mit den ganz kleinen IoT Geräten geht das so einfach also schon mal nicht. Nächster Versuch mit einem RaspberryPi Model B+ und dem aktuellen Raspbian OS (Debian Wheezy). Amazon bietet für die “Things” bisher 3 SDKs an. Eines für Arduino Yún, eines für C und eines für JavaScript. Da sich meine C-Kenntnisse noch in Grenzen halten, versuchte ich mich am JavaScript SDK. Dieses sollte man theoretisch mittlels Node.js zum Laufen bekommen.

Hier nun scheiterte ich daran ein aktuelles Node.js auf den Raspberry Pi zu bekommen. Das Standardmässige Node scheint zu alt zu sein. Das Node.js for ARM ist scheinbar nicht gegen die richtigen C-Libraries verlinkt 🙁

Damit fallen nun leider auch erst einmal die RaspberryPis als Testgeräte für AWS IoT weg. Meine Geduld für dieses Wochenende ist damit erstmal erschöpft. Man könnte natürlich vom Rechner aus mit dem JavaScript SDK rumspielen oder sich mit einem normalen MQTT Client + TLS versuchen zu verbinden. Aber das ist mir im Moment zu viel Aufwand.

Autor: falko

a *nix nerd

Leave a Reply