diff --git a/src/components/Blockly/generator/sensebox-osem.js b/src/components/Blockly/generator/sensebox-osem.js index 72e27f1..bc3a496 100644 --- a/src/components/Blockly/generator/sensebox-osem.js +++ b/src/components/Blockly/generator/sensebox-osem.js @@ -44,8 +44,6 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { } var num_sensors = count; Blockly.Arduino.libraries_["library_senseBoxIO"] = "#include "; - Blockly.Arduino.setupCode_["initBearSSL"] = - "ArduinoBearSSL.onGetTime(getTime);"; Blockly.Arduino.definitions_["num_sensors"] = "static const uint8_t NUM_SENSORS = " + num_sensors + ";"; Blockly.Arduino.definitions_["SenseBoxID"] = @@ -53,22 +51,6 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { Blockly.Arduino.definitions_["host"] = 'const char server [] PROGMEM ="ingress.opensensemap.org";'; if (wifi === true) { - if (ssl === "TRUE") { - Blockly.Arduino.definitions_["WiFiSSLClient"] = "WiFiSSLClient client;"; - port = 443; - } else if (ssl === "FALSE") { - Blockly.Arduino.definitions_["WiFiClient"] = "WiFiClient client;"; - port = 80; - } - } else if (ethernet === true) { - if (ssl === "TRUE") { - Blockly.Arduino.definitions_["WiFiSSLClient"] = "WiFiSSLClient client;"; - port = 443; - } else if (ssl === "FALSE") { - Blockly.Arduino.definitions_["EthernetClient"] = "EthernetClient client;"; - port = 80; - } - if (ssl === "TRUE") { Blockly.Arduino.libraries_["library_bearSSL"] = "#include "; @@ -80,31 +62,45 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { Blockly.Arduino.functionNames_["getTime"] = `unsigned long getTime() { return WiFi.getTime(); }`; + Blockly.Arduino.setupCode_["initBearSSL"] = + "ArduinoBearSSL.onGetTime(getTime);"; port = 443; } else if (ssl === "FALSE") { Blockly.Arduino.definitions_["WiFiClient"] = "WiFiClient client;"; port = 80; } - - Blockly.Arduino.definitions_["measurement"] = `typedef struct measurement { + } else if (ethernet === true) { + if (ssl === "TRUE") { + Blockly.Arduino.libraries_["library_bearSSL"] = + "#include "; + Blockly.Arduino.libraries_["library_arduinoECC08"] = + "#include "; + Blockly.Arduino.definitions_["WiFiSSLClient"] = "WiFiSSLClient client;"; + port = 443; + } else if (ssl === "FALSE") { + Blockly.Arduino.definitions_["EthernetClient"] = "EthernetClient client;"; + port = 80; + } + } + Blockly.Arduino.definitions_["measurement"] = `typedef struct measurement { const char *sensorId; float value; } measurement;`; - Blockly.Arduino.definitions_["buffer"] = "char buffer[750];"; - Blockly.Arduino.definitions_[ - "num_measurement" - ] = `measurement measurements[NUM_SENSORS]; + Blockly.Arduino.definitions_["buffer"] = "char buffer[750];"; + Blockly.Arduino.definitions_[ + "num_measurement" + ] = `measurement measurements[NUM_SENSORS]; uint8_t num_measurements = 0;`; - Blockly.Arduino.definitions_["lengthMultiplikator"] = - "const int lengthMultiplikator = 35;"; - Blockly.Arduino.functionNames_["addMeasurement"] = ` + Blockly.Arduino.definitions_["lengthMultiplikator"] = + "const int lengthMultiplikator = 35;"; + Blockly.Arduino.functionNames_["addMeasurement"] = ` void addMeasurement(const char *sensorId, float value) { measurements[num_measurements].sensorId = sensorId; measurements[num_measurements].value = value; num_measurements++; }`; - if (type === "Stationary") { - Blockly.Arduino.functionNames_["writeMeasurementsToClient"] = ` + if (type === "Stationary") { + Blockly.Arduino.functionNames_["writeMeasurementsToClient"] = ` void writeMeasurementsToClient() { // iterate throug the measurements array for (uint8_t i = 0; i < num_measurements; i++) { @@ -116,8 +112,8 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { // reset num_measurements num_measurements = 0; }`; - Blockly.Arduino.functionNames_["submitValues"] = - ` + Blockly.Arduino.functionNames_["submitValues"] = + ` void submitValues() { if (client.connected()) { client.stop(); @@ -129,8 +125,8 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { for (uint8_t timeout = 2; timeout != 0; timeout--) { Serial.println(F("connecting...")); connected = client.connect(_server, ` + - port + - `); + port + + `); if (connected == true) { // construct the HTTP POST request: sprintf_P(buffer, @@ -158,33 +154,33 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { } }`; - var code = ""; - code += branch; - code += "submitValues();\n"; - } else if (type === "Mobile") { - var lat = Blockly.Arduino.valueToCode( - Block, - "lat", - Blockly.Arduino.ORDER_ATOMIC - ); - var lng = Blockly.Arduino.valueToCode( - Block, - "lng", - Blockly.Arduino.ORDER_ATOMIC - ); - var timestamp = Blockly.Arduino.valueToCode( - Block, - "timeStamp", - Blockly.Arduino.ORDER_ATOMIC - ); - var altitude = Blockly.Arduino.valueToCode( - Block, - "altitude", - Blockly.Arduino.ORDER_ATOMIC - ); - Blockly.Arduino.definitions_["lengthMultiplikator"] = - "const int lengthMultiplikator = 77;"; - Blockly.Arduino.functionNames_["writeMeasurementsToClient"] = ` + var code = ""; + code += branch; + code += "submitValues();\n"; + } else if (type === "Mobile") { + var lat = Blockly.Arduino.valueToCode( + Block, + "lat", + Blockly.Arduino.ORDER_ATOMIC + ); + var lng = Blockly.Arduino.valueToCode( + Block, + "lng", + Blockly.Arduino.ORDER_ATOMIC + ); + var timestamp = Blockly.Arduino.valueToCode( + Block, + "timeStamp", + Blockly.Arduino.ORDER_ATOMIC + ); + var altitude = Blockly.Arduino.valueToCode( + Block, + "altitude", + Blockly.Arduino.ORDER_ATOMIC + ); + Blockly.Arduino.definitions_["lengthMultiplikator"] = + "const int lengthMultiplikator = 77;"; + Blockly.Arduino.functionNames_["writeMeasurementsToClient"] = ` void writeMeasurementsToClient(float lat, float lng, float altitude, char* timeStamp) { // iterate throug the measurements array for (uint8_t i = 0; i < num_measurements; i++) { @@ -196,10 +192,10 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { // reset num_measurements num_measurements = 0; }`; - Blockly.Arduino.variables_["latitude"] = "float latitude;"; - Blockly.Arduino.variables_["longitude"] = "float longitude;"; - Blockly.Arduino.functionNames_["submitValues"] = - ` + Blockly.Arduino.variables_["latitude"] = "float latitude;"; + Blockly.Arduino.variables_["longitude"] = "float longitude;"; + Blockly.Arduino.functionNames_["submitValues"] = + ` void submitValues(float lat, float lng, float altitude, char* timeStamp) { if (client.connected()) { client.stop(); @@ -211,8 +207,8 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { for (uint8_t timeout = 2; timeout != 0; timeout--) { Serial.println(F("connecting...")); connected = client.connect(_server, ` + - port + - `); + port + + `); if (connected == true) { // construct the HTTP POST request: sprintf_P(buffer, @@ -240,19 +236,18 @@ Blockly.Arduino.sensebox_osem_connection = function (Block) { } } }`; - code = ""; - code += branch; - code += - "submitValues((" + - lat + - "/float(10000000)),(" + - lng + - "/float(10000000)),(" + - altitude + - "/float(100))," + - timestamp + - ");\n"; - } - return code; + code = ""; + code += branch; + code += + "submitValues((" + + lat + + "/float(10000000)),(" + + lng + + "/float(10000000)),(" + + altitude + + "/float(100))," + + timestamp + + ");\n"; } + return code; };