Thursday Nov 21, 2013

Coding at Internet of Things (IoT) Hack Fest

Devoxx IoT Hack Fest offered the chance for attendees to code with Java Embedded for multiple devices. Attendees built embedded applications using devices and sensors in just a couple of days. A pre-configured panel, created by Globalcode founder Vinicius Senger, a long-time Java embedded developer and trainer, connects Raspberry Pi, Arduino, Beaglebone black, and Gemalto boards to a series of sensors such as distance, motion, alcohol and temperature sensors, as well as relays and camera. Those components are accessible remotely via a web server and REST calls. A new addition to IoT Hack Fest at Devoxx was the Leap Motion. ZeroTurnaround senior developer Geert Bevin lent nine Leap Motion controllers, gave a training session and was the onsite mentor for the Leap Motion.  

During two days, attendees learned and hacked the panel and the Leap Motion. For example, Hartmut Lang hacked a sensor distance and the blink(1) component with Java Embedded Suite, Jersey API. He turned on a ThingM blink(1) multi-colored USB light via the proximity sensor on the Java Embedded Panel. The proximity data is accessible through a Java sever running on a Raspberry PI with an Arduino bridge. REST calls give access to the current sensor data. This was then translated to Java calls that control the intensity of the blink(1) light. Everything was programmed in Netbeans and was running on a dedicated Raspberry PI.

A number of projects were about controlling the relays using Java SE Embedded, Pi4J and JavaFX. They connected their applications to the panel with the Raspberry Pi's and relays. Others worked with JavaFX and Raspberry Pi. They created a distance measurement using Fuzzy Logic, Arduino, Java Embedded Suite, RXTX, Things API and JavaFX to control lights. Thomas Kriechbaum worked with Java SE Embedded, Apache Camel, MQTT for Android, MQTT with Camel and Mosquito to control actuators and reading sensors. Geert Van Landeghem built an animation framework for LCD displays using Java SE Embedded, Pi4J/I2C and LCDPlate Adafruit

Senior software architect Claude Falguière created an interactive game to teach kids the principle of programmed operations. This is done by leading a robot through a maze. Changing the directions of the robot is done via hand gestures with the leap Motion controller. Each direction change is recorded as a card and shown as the list of operations. These can be manipulated and started again.

An ant-chasing game, written in Scratch used the Leap Motion plugin with a Java application for the gesture-interpreting gateway. Players moved their fingers around in the air and an ant chased its movements. 

Geert Bevin created an application controlling multi-colored led strip with hand gestures. The Leap Motion controller detects hand position in 3D-space and sends the X/Y/Z data straight to the led strip to control the intensity of the red/green/blue lights. The led strip was connected to a Raspberry PI with an Arduino bridge and could be piloted through REST calls running on an embedded Java server. In this video, Geert explains the project.  

More projects online at the IoT Community on


Insider News from the Java Team at Oracle!

javeone logo


« April 2014