Internet of Customers – Building Management Automation with Salesforce1 and Arduino

What could the power of Arduino and Salesforce achieve for building management? In the following proof of concept, we examine how Salesforce1 can help building management organizations leverage Arduino devices to proactively monitor and manage various units. Using native workflow and mobile capabilities the data collected from the Arduino can become immediately actionable.

The following screens show the system that is used within our proof, showing the Arduino device used and a dashboard, along with debug information from our Node.js application showing temperature readings.

As with our prior Internet of Customers example, we are connecting to a Node.js application running in Heroku that connects to Salesforce via REST APIs via the nforce library. This time our application reads the temperate data from sensors and includes a dashbaord created with Visualforce that uses web sockets to stay updated in realtime.

At a high level our above proof works as follows

    1. Arduino uses a small program gather temperate data, sending it via REST to a Node.js application
    2. The Node.js application sends the data to Salesforce via REST using nforce
    3. The Node.js application uses web sockets to update a Visualforce dashboard in Salesforce
    4. Salesforce Task rules are used to check if the reading requires a technician to review the unit
    5. The Salesforce1 mobile application is able to view any out of bound readings, as we have enabled Feed Tracking on All Related Objects for Units in the Chatter feed, as long as the user has Followed the Unit

The Task is created on the basis of the following rule applied to our Units and their field values.

Stay tuned for our next post that will include all source code for the above proof of concept!

3 Comments
  • Lut Garcia
    Reply
    October 1, 2014

    Hi John,
    Can we take a look at the code you used for this project (Arduino and node.js)?
    Is there a library for RoR apps?

  • John Brunswick
    Reply
    October 1, 2014

    Lut Garcia Yes – apologies for not updating with a decent link.  Take a look at http://www.johnbrunswick.com/2014/01/internet-of-customers-custom-visualforce-page-with-web-sockets-arduino-temperature/

    After Dreamforce will be updating the blog and hopefully starting to use the new Heroku deploy button to make life easier https://blog.heroku.com/archives/2014/8/7/heroku-button

    Cheers

  • Lut Garcia
    Reply
    October 1, 2014

    Great!! See you at Dreamforce. Will you bring your demos?! Could you point me out to a tutorial where they use a RoR app instead of node.js?

Leave a comment