This talk has two parts. The first gives an overview and demo of a simple IP camera that was built with the goal of using as much Erlang as possible to implement a self-contained and realistic embedded device. The project also shows separation of the hard real-time components of servicing the raw imager from the majority of the soft real-time code that provides network streaming, web management, and system infrastructure. The second part talks about issues that were encountered along the way and how they were (or were not) addressed.
The goal of the talk is to provide attendees with an 'in the trenches' view of building an embedded device from the perspective of a long time embedded C/C++ programmer. Additionally, since all code used in the project is open source, the talk will provide pointers to the code and projects used in the camera in the hope that they will also be useful in the attendee's embedded projects.
This talk will appeal to embedded software developers, hardware hackers, Raspberry Pi and BeagleBone enthusiasts and others interested in using Erlang in their devices.
Slides
Frank Hunleth designs embedded Linux-based software that can be found in products spanning the medical, consumer, telecommunications and defense industries. His work on high density VOIP switches in the 1990s eventually led him to discover Erlang. Since then, he has re-implemented Erlang design elements in everything from a cutting edge diabetic screening device at LKC Technologies to motion controlled UI frameworks at Hillcrest Labs. He started the open-source Nerves project to make it easier to use Erlang in a cross-compiled environment. Twitter: @fhunleth Github: fhunleth