Dreamforce 2014 Workshop Exercise - RFID Case Generator

Dependencies:   BufferedSerial C12832 EndpointMain-rfid EthernetInterface Logger StatusReporter-df2014 mbed-rtos mbed

Fork of df-2014-workshop-rfid-case-generator-k64f by Doug Anson

Overview

This code demonstrates how to use the mbed platform with a ID-12LA RFID reader and a Freescale K64F to get data into the SalesForce cloud.
This project was generated as a workshop for DreamForce 2014..

Details

The 2014 DreamForce workshop centers around an example scenario where you, as a street light technician, will "check in" to a given street light to service it. The street lights in this example are intelligent - they are connected, have knowledge about who/what they are, and in this example, contain an RFID sensor to allow technicians to "check in" during a service event.

The purpose of the workshop exercise is to provide exposure to new developers that the mbed IDE and development environment/ecosystem is very simple and easy to setup and use. Additionally, the workshop highlights that mbed devices can directly interact with SalesForce. The slides for the workshop can be found here.

For more information about the mbed SalesForce Interface API and its use, please see: http://developer.mbed.org/teams/MBED_DEMOS/code/SalesforceInterface/

Pretty Pictures

For the workshop the mbed team designed breakout boards to connect the ID12LA to the Freescale K64F for ease of use. Pictures of the boards can be found below. If you are interested in the breakout board you can order one from the OSHPark project page or use the eagle or gerber files as you see fit.

The ID-12LA sockets onto the RFID Brekout Board which then is put onto the Freescale K64F.

/media/uploads/mbedAustin/rfidboard_-8-.small.jpg

/media/uploads/mbedAustin/rfidboard_-9-.small.jpg

Files at this revision

API Documentation at this revision

Comitter:
ansond
Date:
Wed Aug 27 16:53:35 2014 +0000
Parent:
3:03108e424931
Child:
5:606c2b0be78b
Commit message:
updated - working now with the gateway

Changed in this revision

Definitions.h Show annotated file Show diff for this revision Revisions of this file
HTTPClient.lib Show annotated file Show diff for this revision Revisions of this file
SalesforceCaseGenerator.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/Definitions.h	Wed Aug 27 05:40:16 2014 +0000
+++ b/Definitions.h	Wed Aug 27 16:53:35 2014 +0000
@@ -38,10 +38,11 @@
  #define APP_VERSION              "1.0.0"
   
  // DF2014 CaseGenerator Relay for mbed - ties into the Salesforce APEX host for case generation
- #define DF_CASE_GEN_URL          "http://pacific-ridge-7439.herokuapp.com/GenerateCase"
+ //#define DF_CASE_GEN_URL          "http://pacific-ridge-7439.herokuapp.com/GenerateCase"
+ #define DF_CASE_GEN_URL          "http://192.168.1.170:8080/GenerateCase"
  
  // Buffer length for HTTPS requests
- #define BUFFER_LENGTH             512
+ #define BUFFER_LENGTH             256
  
  // maximum log message length
  #define MAX_LOG_MESSAGE           128
--- a/HTTPClient.lib	Wed Aug 27 05:40:16 2014 +0000
+++ b/HTTPClient.lib	Wed Aug 27 16:53:35 2014 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/ansond/code/HTTPClient-basicAuth/#19392aabd83d
+https://mbed.org/users/donatien/code/HTTPClient/#2f43397172e9
--- a/SalesforceCaseGenerator.lib	Wed Aug 27 05:40:16 2014 +0000
+++ b/SalesforceCaseGenerator.lib	Wed Aug 27 16:53:35 2014 +0000
@@ -1,1 +1,1 @@
-SalesforceCaseGenerator#5c876ee72cf0
+SalesforceCaseGenerator#670837d3e248
--- a/main.cpp	Wed Aug 27 05:40:16 2014 +0000
+++ b/main.cpp	Wed Aug 27 16:53:35 2014 +0000
@@ -107,7 +107,7 @@
           */
           
           logger.log("Generating Sample Case...");
-          bool success = case_generator.createCase("hello doug","this is a mbed case dispatch");
+          bool success = case_generator.createCase("hello mbed","this is a mbed case dispatch");
           if (success == true) {
             logger.log("Case Generated!");
           }
@@ -120,5 +120,10 @@
      }
      
      // disconnect
+     logger.log("Disconnecting...");
      ethernet.disconnect();
+     
+     // Exit
+     logger.log("Sleeping...");
+     while(1) wait(1000);
   }
\ No newline at end of file