Dreamforce 2014 Workshop RFID Case Generator - Completed Exercise
Dependencies: BufferedSerial C12832 EndpointMain-rfid EthernetInterface Logger StatusReporter-df2014 mbed-rtos mbed
Fork of df-2014-workshop-rfid-case-generator-k64f by
Revision 6:427c387b10e7, committed 2014-08-27
- Comitter:
- ansond
- Date:
- Wed Aug 27 18:30:05 2014 +0000
- Parent:
- 5:606c2b0be78b
- Child:
- 7:5d6e03557246
- Commit message:
- updates
Changed in this revision
--- a/Definitions.h Wed Aug 27 18:10:18 2014 +0000 +++ b/Definitions.h Wed Aug 27 18:30:05 2014 +0000 @@ -40,6 +40,9 @@ // DF2014 CaseGenerator Relay for mbed - ties into the Salesforce APEX host for case generation #define DF_CASE_GEN_URL "https://df2014-arm-developer-edition.na15.force.com/services/apexrest/CaseService" + // Enable/Disable RFID ID12 usage + #define ID12_ENABLE false // true - enable, false - disable + // Buffer length for HTTPS requests #define BUFFER_LENGTH 256
--- a/SalesforceCaseGenerator.lib Wed Aug 27 18:10:18 2014 +0000 +++ b/SalesforceCaseGenerator.lib Wed Aug 27 18:30:05 2014 +0000 @@ -1,1 +1,1 @@ -SalesforceCaseGenerator#8ad19b204ddf +SalesforceCaseGenerator#f506cc61e09e
--- a/main.cpp Wed Aug 27 18:10:18 2014 +0000 +++ b/main.cpp Wed Aug 27 18:30:05 2014 +0000 @@ -19,9 +19,11 @@ // our definitions #include "Definitions.h" - // RFID Reader - on P14 pin - //#include "ID12RFID.h" - //ID12RFID rfid_reader(p14); + // RFID Reader - on P14 pin + #if ID12_ENABLE + #include "ID12RFID.h" + ID12RFID rfid_reader(p14); + #endif // Salesforce Case Generator #include "SalesForceCaseGenerator.h" @@ -44,6 +46,9 @@ #include "EthernetInterface.h" EthernetInterface ethernet; + // HARD RESET +extern "C" void HardFault_Handler() { NVIC_SystemReset(); } + // Main Entry... int main() { // create our object instances @@ -68,17 +73,19 @@ // create the Salesforce Case Generator SalesForceCaseGenerator case_generator(&logger); - /* // Enter the main loop while(true) { +#if ID12_ENABLE // look for a readable RFID tag + logger.log("RFID: Scanning..."); if(rfid_reader.readable()) { // capture the RFID id... + logger.log("RFID: Found RFID.\r\nReading..."); int rfid = rfid_reader.read(); - logger.log("RFID: %d found...\r\nProcessing...",rfid); + logger.log("RFID: ID %d found...\r\nProcessing...",rfid); // look it up in our WidgetDB... proceed only if we find something we know about... - //char *name = db.lookupWidgetName(rfid); + char *name = db.lookupWidgetName(rfid); if (name != NULL) { // build out a simple subject for the case char subject[MAX_NAME_LENGTH+1]; @@ -99,24 +106,29 @@ logger.log("RFID unknown. Ignoring..."); } } +#else + // simply create and dispatch a single case + logger.log("Creating Case..."); + bool success = case_generator.createCase("sample mbed case","this is a sample mbed case"); + if (success == true) { + logger.log("Case Generated!"); + logger.log("Exiting..."); + exit(1); + } + else { + logger.log("Case Generation FAILED"); + logger.log("Exiting..."); + exit(1); + } +#endif // wait a bit and look again wait_ms(WAIT_TIME_MS); } - - */ - - logger.log("Generating Sample Case..."); - bool success = case_generator.createCase("hello mbed","this is a mbed case dispatch"); - if (success == true) { - logger.log("Case Generated!"); - } - else { - logger.log("Case Generation FAILED"); - } } else { logger.log("No Network... Exiting..."); + exit(1); } // disconnect @@ -124,6 +136,6 @@ ethernet.disconnect(); // Exit - logger.log("Sleeping..."); - while(1) wait(1000); + logger.log("Exiting..."); + exit(1); } \ No newline at end of file