Skip to main content
Redhat Developers  Logo
  • Products

    Platforms

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat AI
      Red Hat AI
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • View All Red Hat Products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat Developer Hub
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat OpenShift Local
    • Red Hat Developer Sandbox

      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Secure Development & Architectures

      • Security
      • Secure coding
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • Product Documentation
    • API Catalog
    • Legacy Documentation
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

Enterprise Developer's Journey to the IoT - join us at QCon

November 12, 2015
Burr Sutter

Share:

    Enterprise Developer's Journey to the IoT presentation will be delivered at QCon San Francisco on Nov 17th 2015.

    The IoT presentations and demonstrations have been some of my most popular content throughout 2015.  I have a typical enterprise developer background - mostly working on business-focused applications - leveraging a variety of 4GLs, GUI design tools (e.g. SilverStream, Visual Basic) and Java EE technologies (e.g. JBoss, Tomcat, Struts, Spring, Hibernate, etc.).    I have spent a couple of decades building business applications for ChUI, GUI, web, mobile and now things - connecting the physical world to enterprise software.

    My research focus has been on connecting sensors and actuators to enterprise middleware like Apache ActiveMQ (JBoss Fuse A-MQ), Apache Camel and Apache Spark.

    The Apache Camel demonstration can use various temp sensors, in the case of the recording, I use a TI SensorTag which is connected to an Intel Edison (works the same if connected to a Raspberry Pi), the Edison pulls the sensor data via Bluetooth, wraps the data as MQTT messages and submits those messages to ActiveMQ.  Then an Apache Camel process picks up the messages and makes a determination if it is HOT or NORMAL.  Camel pushes out another message where another Intel Edison has subscribed and it connects to a Lightblue Bean driving a servo.

    TI SensorTag -> Bluetooth -> Intel Edison -> MQTT -> WiFi -> Apache ActiveMQ on the laptop

    ActiveMQ -> Apache Camel -> ActiveMQ -> WiFi -> Intel Edison -> Bluetooth -> Lightblue Bean -> Servo

    The Apache Spark demonstration uses Raspberry Pis with both Bluetooth and WiFi USB adapters.  The Raspberry Pi includes a Vert.x-based Bluetooth Low Energy scanner (leverages bluez library) to look for BLE advertising packets.   It then sends those raw messages via AMQP into the Apache ActiveMQ/JBoss Fuse A-MQ broker running on the laptop.  Apache Spark is running in another process, reviewing the raw messages from all the scanners/Pis (two in this case) and making calculations as two how close a beacon is to a particular scanner (Pi).  Based on proximity, Spark is making decisions - check-ins vs check-outs.   There are then two Rx.js with Node.js backends UIs that show the real-time message flow and a real-time map that shows how the objects are moving around the physical world.    Using this technique, we were able to deploy several hundred BLE beacons ($5 Gimbal) and over a dozen Raspberry Pis to track conference attendees at the 2015 DevNation in Boston.   Scott Stark is the genius behind the Raspberry Pi BLE scanner.  Matt Farrellee crafted the Python-based Apache Spark Streaming program and Brian Leathem made the killer real-time web UIs seen throughout the keynote demonstration.

    I have a lot of other experiments with different sensors and a few actuators, some of which are shown in my various YouTube recordings.  Please check those out and if you have any questions, please reach out to me via Twitter @burrsutter.

     

     

     

     

    Recent Posts

    • A case study in Kubelet regression in OpenShift

    • Profiling vLLM Inference Server with GPU acceleration on RHEL

    • Network performance in distributed training: Maximizing GPU utilization on OpenShift

    • Clang bytecode interpreter update

    • How Red Hat has redefined continuous performance testing

    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2025 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue