All sensors sending to server via http
Dependencies: C12832 CCS811 MMA7660 Sht31 TSL2561 mbed-http vl53l0x_api
Fork of HTTP-Python-Demo by
main.cpp@3:409108394e75, 2017-11-25 (annotated)
- Committer:
- lwc24
- Date:
- Sat Nov 25 20:53:09 2017 +0000
- Revision:
- 3:409108394e75
- Parent:
- 2:b91140c3c3f6
- Child:
- 4:061755016e24
Working sensor readings sending to server
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jenny Plunkett |
0:c5b042cf8162 | 1 | //---------------------------------------------------------------------------- |
Jenny Plunkett |
0:c5b042cf8162 | 2 | // The confidential and proprietary information contained in this file may |
Jenny Plunkett |
0:c5b042cf8162 | 3 | // only be used by a person authorised under and to the extent permitted |
Jenny Plunkett |
0:c5b042cf8162 | 4 | // by a subsisting licensing agreement from ARM Limited or its affiliates. |
Jenny Plunkett |
0:c5b042cf8162 | 5 | // |
Jenny Plunkett |
0:c5b042cf8162 | 6 | // (C) COPYRIGHT 2016 ARM Limited or its affiliates. |
Jenny Plunkett |
0:c5b042cf8162 | 7 | // ALL RIGHTS RESERVED |
Jenny Plunkett |
0:c5b042cf8162 | 8 | // |
Jenny Plunkett |
0:c5b042cf8162 | 9 | // This entire notice must be reproduced on all copies of this file |
Jenny Plunkett |
0:c5b042cf8162 | 10 | // and copies of this file may only be made by a person if such person is |
Jenny Plunkett |
0:c5b042cf8162 | 11 | // permitted to do so under the terms of a subsisting license agreement |
Jenny Plunkett |
0:c5b042cf8162 | 12 | // from ARM Limited or its affiliates. |
Jenny Plunkett |
0:c5b042cf8162 | 13 | //---------------------------------------------------------------------------- |
lwc24 | 3:409108394e75 | 14 | #include <sstream> |
lwc24 | 3:409108394e75 | 15 | #include <string> |
lwc24 | 3:409108394e75 | 16 | |
Jenny Plunkett |
0:c5b042cf8162 | 17 | #include "mbed.h" |
Jenny Plunkett |
0:c5b042cf8162 | 18 | #include "OdinWiFiInterface.h" |
Jenny Plunkett |
0:c5b042cf8162 | 19 | #include "http_request.h" |
Jenny Plunkett |
0:c5b042cf8162 | 20 | |
lwc24 | 3:409108394e75 | 21 | #include "C12832.h" |
lwc24 | 3:409108394e75 | 22 | #include "CCS811.h" |
lwc24 | 3:409108394e75 | 23 | #include "Sht31.h" |
lwc24 | 3:409108394e75 | 24 | #include "TSL2561.h" |
lwc24 | 3:409108394e75 | 25 | #include "MMA7660.h" |
lwc24 | 3:409108394e75 | 26 | |
lwc24 | 3:409108394e75 | 27 | #include "vl53l0x_api.h" |
lwc24 | 3:409108394e75 | 28 | #include "vl53l0x_platform.h" |
lwc24 | 3:409108394e75 | 29 | #include "vl53l0x_i2c_platform.h" |
lwc24 | 3:409108394e75 | 30 | |
lwc24 | 3:409108394e75 | 31 | #define USE_I2C_2V8 |
lwc24 | 3:409108394e75 | 32 | |
lwc24 | 3:409108394e75 | 33 | struct vector { |
lwc24 | 3:409108394e75 | 34 | public: |
lwc24 | 3:409108394e75 | 35 | double x, y, z; |
lwc24 | 3:409108394e75 | 36 | vector (double xval, double yval, double zval) : x(xval), y(yval), z(zval) {}; |
lwc24 | 3:409108394e75 | 37 | }; |
lwc24 | 3:409108394e75 | 38 | |
Jenny Plunkett |
0:c5b042cf8162 | 39 | // GLOBAL VARIABLES HERE |
lwc24 | 3:409108394e75 | 40 | C12832 lcd(PE_14, PE_12, PD_12, PD_11, PE_9); |
lwc24 | 3:409108394e75 | 41 | DigitalOut led(PB_6, 1); |
lwc24 | 3:409108394e75 | 42 | Sht31 temp_sensor(PF_0, PF_1); |
lwc24 | 3:409108394e75 | 43 | CCS811 air_sensor(PF_0, PF_1); |
lwc24 | 3:409108394e75 | 44 | TSL2561 light_sensor(PF_0, PF_1, TSL2561_ADDR_HIGH); |
lwc24 | 3:409108394e75 | 45 | MMA7660 accel(PF_0, PF_1); |
lwc24 | 3:409108394e75 | 46 | |
lwc24 | 3:409108394e75 | 47 | OdinWiFiInterface wifi; |
lwc24 | 3:409108394e75 | 48 | |
lwc24 | 3:409108394e75 | 49 | InterruptIn post_button(PF_2); |
lwc24 | 3:409108394e75 | 50 | InterruptIn get_put_button(PG_4); |
lwc24 | 3:409108394e75 | 51 | volatile bool post_clicked = false; |
lwc24 | 3:409108394e75 | 52 | volatile bool get_clicked = false; |
lwc24 | 3:409108394e75 | 53 | volatile bool put_clicked = false; |
lwc24 | 3:409108394e75 | 54 | |
lwc24 | 3:409108394e75 | 55 | // FUNCTION DEFINITIONS HERE |
lwc24 | 3:409108394e75 | 56 | void lcd_print(const char* message) { |
lwc24 | 3:409108394e75 | 57 | lcd.cls(); |
lwc24 | 3:409108394e75 | 58 | lcd.locate(0, 3); |
lwc24 | 3:409108394e75 | 59 | lcd.printf(message); |
lwc24 | 3:409108394e75 | 60 | } |
Jenny Plunkett |
0:c5b042cf8162 | 61 | |
Jenny Plunkett |
0:c5b042cf8162 | 62 | |
lwc24 | 3:409108394e75 | 63 | float * read_temp() { |
lwc24 | 3:409108394e75 | 64 | float t = temp_sensor.readTemperature(); |
lwc24 | 3:409108394e75 | 65 | float h = temp_sensor.readHumidity(); |
lwc24 | 3:409108394e75 | 66 | //char val[32]; |
lwc24 | 3:409108394e75 | 67 | //sprintf(val, "TEMP: %3.2fC, HUM: %3.2f%%", t, h); |
lwc24 | 3:409108394e75 | 68 | //lcd_print(val); |
lwc24 | 3:409108394e75 | 69 | static float out[2]; |
lwc24 | 3:409108394e75 | 70 | out[0] = t; |
lwc24 | 3:409108394e75 | 71 | out[1] = h; |
lwc24 | 3:409108394e75 | 72 | return out; |
lwc24 | 3:409108394e75 | 73 | } |
lwc24 | 3:409108394e75 | 74 | |
lwc24 | 3:409108394e75 | 75 | uint16_t * read_air() { |
lwc24 | 3:409108394e75 | 76 | air_sensor.init(); |
lwc24 | 3:409108394e75 | 77 | uint16_t eco2, tvoc; |
lwc24 | 3:409108394e75 | 78 | air_sensor.readData(&eco2, &tvoc); |
lwc24 | 3:409108394e75 | 79 | //char val[32]; |
lwc24 | 3:409108394e75 | 80 | //sprintf(val, "eCO2: %dppm, TVOC: %dppb", eco2, tvoc); |
lwc24 | 3:409108394e75 | 81 | //lcd_print(val); |
lwc24 | 3:409108394e75 | 82 | static uint16_t out[2]; |
lwc24 | 3:409108394e75 | 83 | out[0] = eco2; |
lwc24 | 3:409108394e75 | 84 | out[1] = tvoc; |
lwc24 | 3:409108394e75 | 85 | return out; |
lwc24 | 3:409108394e75 | 86 | } |
lwc24 | 3:409108394e75 | 87 | |
lwc24 | 3:409108394e75 | 88 | int * read_light() { |
lwc24 | 3:409108394e75 | 89 | int vis = light_sensor.getLuminosity(TSL2561_VISIBLE); |
lwc24 | 3:409108394e75 | 90 | int infr = light_sensor.getLuminosity(TSL2561_INFRARED); |
lwc24 | 3:409108394e75 | 91 | //char val[32]; |
lwc24 | 3:409108394e75 | 92 | //sprintf(val, "VIS: %d, INFR: %d ", vis, infr); |
lwc24 | 3:409108394e75 | 93 | //lcd_print(val); |
lwc24 | 3:409108394e75 | 94 | static int out[2]; |
lwc24 | 3:409108394e75 | 95 | out[0] = vis; |
lwc24 | 3:409108394e75 | 96 | out[1] = infr; |
lwc24 | 3:409108394e75 | 97 | return out; |
lwc24 | 3:409108394e75 | 98 | } |
lwc24 | 3:409108394e75 | 99 | |
lwc24 | 3:409108394e75 | 100 | |
lwc24 | 3:409108394e75 | 101 | double * read_accel() { |
lwc24 | 3:409108394e75 | 102 | double x = accel.x(); |
lwc24 | 3:409108394e75 | 103 | double y = accel.y(); |
lwc24 | 3:409108394e75 | 104 | double z = accel.z(); |
lwc24 | 3:409108394e75 | 105 | //char val[32]; |
lwc24 | 3:409108394e75 | 106 | //sprintf(val, "x=%.2f y=%.2f z=%.2f", x, y, z); |
lwc24 | 3:409108394e75 | 107 | //lcd_print(val); |
lwc24 | 3:409108394e75 | 108 | static double out[3]; |
lwc24 | 3:409108394e75 | 109 | out[0] = x; |
lwc24 | 3:409108394e75 | 110 | out[1] = y; |
lwc24 | 3:409108394e75 | 111 | out[2] = z; |
lwc24 | 3:409108394e75 | 112 | return out; |
lwc24 | 3:409108394e75 | 113 | } |
lwc24 | 3:409108394e75 | 114 | |
lwc24 | 3:409108394e75 | 115 | |
Jenny Plunkett |
0:c5b042cf8162 | 116 | |
lwc24 | 3:409108394e75 | 117 | VL53L0X_Error WaitMeasurementDataReady(VL53L0X_DEV Dev) { |
lwc24 | 3:409108394e75 | 118 | VL53L0X_Error Status = VL53L0X_ERROR_NONE; |
lwc24 | 3:409108394e75 | 119 | uint8_t NewDatReady=0; |
lwc24 | 3:409108394e75 | 120 | uint32_t LoopNb; |
lwc24 | 3:409108394e75 | 121 | |
lwc24 | 3:409108394e75 | 122 | if (Status == VL53L0X_ERROR_NONE) { |
lwc24 | 3:409108394e75 | 123 | LoopNb = 0; |
lwc24 | 3:409108394e75 | 124 | do { |
lwc24 | 3:409108394e75 | 125 | Status = VL53L0X_GetMeasurementDataReady(Dev, &NewDatReady); |
lwc24 | 3:409108394e75 | 126 | if ((NewDatReady == 0x01) || Status != VL53L0X_ERROR_NONE) { |
lwc24 | 3:409108394e75 | 127 | break; |
lwc24 | 3:409108394e75 | 128 | } |
lwc24 | 3:409108394e75 | 129 | LoopNb = LoopNb + 1; |
lwc24 | 3:409108394e75 | 130 | VL53L0X_PollingDelay(Dev); |
lwc24 | 3:409108394e75 | 131 | } while (LoopNb < VL53L0X_DEFAULT_MAX_LOOP); |
lwc24 | 3:409108394e75 | 132 | |
lwc24 | 3:409108394e75 | 133 | if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) { |
lwc24 | 3:409108394e75 | 134 | Status = VL53L0X_ERROR_TIME_OUT; |
lwc24 | 3:409108394e75 | 135 | } |
lwc24 | 3:409108394e75 | 136 | } |
lwc24 | 3:409108394e75 | 137 | |
lwc24 | 3:409108394e75 | 138 | return Status; |
lwc24 | 3:409108394e75 | 139 | } |
lwc24 | 3:409108394e75 | 140 | |
lwc24 | 3:409108394e75 | 141 | VL53L0X_Error WaitStopCompleted(VL53L0X_DEV Dev) { |
lwc24 | 3:409108394e75 | 142 | VL53L0X_Error Status = VL53L0X_ERROR_NONE; |
lwc24 | 3:409108394e75 | 143 | uint32_t StopCompleted=0; |
lwc24 | 3:409108394e75 | 144 | uint32_t LoopNb; |
lwc24 | 3:409108394e75 | 145 | |
lwc24 | 3:409108394e75 | 146 | if (Status == VL53L0X_ERROR_NONE) { |
lwc24 | 3:409108394e75 | 147 | LoopNb = 0; |
lwc24 | 3:409108394e75 | 148 | do { |
lwc24 | 3:409108394e75 | 149 | Status = VL53L0X_GetStopCompletedStatus(Dev, &StopCompleted); |
lwc24 | 3:409108394e75 | 150 | if ((StopCompleted == 0x00) || Status != VL53L0X_ERROR_NONE) { |
lwc24 | 3:409108394e75 | 151 | break; |
lwc24 | 3:409108394e75 | 152 | } |
lwc24 | 3:409108394e75 | 153 | LoopNb = LoopNb + 1; |
lwc24 | 3:409108394e75 | 154 | VL53L0X_PollingDelay(Dev); |
lwc24 | 3:409108394e75 | 155 | } while (LoopNb < VL53L0X_DEFAULT_MAX_LOOP); |
lwc24 | 3:409108394e75 | 156 | |
lwc24 | 3:409108394e75 | 157 | if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) { |
lwc24 | 3:409108394e75 | 158 | Status = VL53L0X_ERROR_TIME_OUT; |
lwc24 | 3:409108394e75 | 159 | } |
lwc24 | 3:409108394e75 | 160 | |
lwc24 | 3:409108394e75 | 161 | } |
lwc24 | 3:409108394e75 | 162 | |
lwc24 | 3:409108394e75 | 163 | return Status; |
lwc24 | 3:409108394e75 | 164 | } |
lwc24 | 3:409108394e75 | 165 | |
lwc24 | 3:409108394e75 | 166 | void send_post() { |
lwc24 | 3:409108394e75 | 167 | post_clicked = true; |
lwc24 | 3:409108394e75 | 168 | } |
lwc24 | 3:409108394e75 | 169 | |
lwc24 | 3:409108394e75 | 170 | void send_put() { |
lwc24 | 3:409108394e75 | 171 | put_clicked = true; |
lwc24 | 3:409108394e75 | 172 | } |
Jenny Plunkett |
0:c5b042cf8162 | 173 | |
Jenny Plunkett |
0:c5b042cf8162 | 174 | int main() { |
Jenny Plunkett |
0:c5b042cf8162 | 175 | |
lwc24 | 3:409108394e75 | 176 | // Initialize reading variables |
lwc24 | 3:409108394e75 | 177 | int var=1, measure=0; |
lwc24 | 3:409108394e75 | 178 | int ave=0, sum=0; |
lwc24 | 3:409108394e75 | 179 | double * acc; |
lwc24 | 3:409108394e75 | 180 | int * light; |
lwc24 | 3:409108394e75 | 181 | uint16_t * air; |
lwc24 | 3:409108394e75 | 182 | float * temp; |
lwc24 | 3:409108394e75 | 183 | |
lwc24 | 3:409108394e75 | 184 | // Setup Laser |
lwc24 | 3:409108394e75 | 185 | VL53L0X_Dev_t MyDevice; |
lwc24 | 3:409108394e75 | 186 | VL53L0X_Dev_t *pMyDevice = &MyDevice; |
lwc24 | 3:409108394e75 | 187 | VL53L0X_RangingMeasurementData_t RangingMeasurementData; |
lwc24 | 3:409108394e75 | 188 | VL53L0X_RangingMeasurementData_t *pRangingMeasurementData = &RangingMeasurementData; |
lwc24 | 3:409108394e75 | 189 | |
lwc24 | 3:409108394e75 | 190 | // Initialize Comms laster |
lwc24 | 3:409108394e75 | 191 | pMyDevice->I2cDevAddr = 0x52; |
lwc24 | 3:409108394e75 | 192 | pMyDevice->comms_type = 1; |
lwc24 | 3:409108394e75 | 193 | pMyDevice->comms_speed_khz = 400; |
lwc24 | 3:409108394e75 | 194 | |
lwc24 | 3:409108394e75 | 195 | |
lwc24 | 3:409108394e75 | 196 | VL53L0X_RdWord(&MyDevice, VL53L0X_REG_OSC_CALIBRATE_VAL,0); |
lwc24 | 3:409108394e75 | 197 | VL53L0X_DataInit(&MyDevice); |
lwc24 | 3:409108394e75 | 198 | uint32_t refSpadCount; |
lwc24 | 3:409108394e75 | 199 | uint8_t isApertureSpads; |
lwc24 | 3:409108394e75 | 200 | uint8_t VhvSettings; |
lwc24 | 3:409108394e75 | 201 | uint8_t PhaseCal; |
lwc24 | 3:409108394e75 | 202 | |
lwc24 | 3:409108394e75 | 203 | VL53L0X_StaticInit(pMyDevice); |
lwc24 | 3:409108394e75 | 204 | VL53L0X_PerformRefSpadManagement(pMyDevice, &refSpadCount, &isApertureSpads); // Device Initialization |
lwc24 | 3:409108394e75 | 205 | VL53L0X_PerformRefCalibration(pMyDevice, &VhvSettings, &PhaseCal); // Device Initialization |
lwc24 | 3:409108394e75 | 206 | VL53L0X_SetDeviceMode(pMyDevice, VL53L0X_DEVICEMODE_CONTINUOUS_RANGING); // Setup in single ranging mode |
lwc24 | 3:409108394e75 | 207 | VL53L0X_SetLimitCheckValue(pMyDevice, VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, (FixPoint1616_t)(0.25*65536)); //High Accuracy mode, see API PDF |
lwc24 | 3:409108394e75 | 208 | VL53L0X_SetLimitCheckValue(pMyDevice, VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, (FixPoint1616_t)(18*65536)); //High Accuracy mode, see API PDF |
lwc24 | 3:409108394e75 | 209 | VL53L0X_SetMeasurementTimingBudgetMicroSeconds(pMyDevice, 200000); //High Accuracy mode, see API PDF |
lwc24 | 3:409108394e75 | 210 | VL53L0X_StartMeasurement(pMyDevice); |
Jenny Plunkett |
0:c5b042cf8162 | 211 | |
lwc24 | 3:409108394e75 | 212 | // Setup wifi |
lwc24 | 3:409108394e75 | 213 | lcd_print("Connecting..."); |
lwc24 | 3:409108394e75 | 214 | int ret = wifi.connect(MBED_CONF_APP_WIFI_SSID, MBED_CONF_APP_WIFI_PASSWORD, NSAPI_SECURITY_WPA_WPA2); |
lwc24 | 3:409108394e75 | 215 | if (ret != 0) { |
lwc24 | 3:409108394e75 | 216 | lcd_print("Connection error."); |
lwc24 | 3:409108394e75 | 217 | return -1; |
lwc24 | 3:409108394e75 | 218 | } |
lwc24 | 3:409108394e75 | 219 | lcd_print("Successfully connected!"); |
lwc24 | 3:409108394e75 | 220 | //char ipaddress[] = "http://10.25.1.118:5000"; |
lwc24 | 3:409108394e75 | 221 | |
lwc24 | 3:409108394e75 | 222 | post_button.rise(&send_post); |
lwc24 | 3:409108394e75 | 223 | get_put_button.rise(&send_put); |
lwc24 | 3:409108394e75 | 224 | while (true) { |
lwc24 | 3:409108394e75 | 225 | |
lwc24 | 3:409108394e75 | 226 | // Get laser measurement |
lwc24 | 3:409108394e75 | 227 | while(var<=4){ |
lwc24 | 3:409108394e75 | 228 | WaitMeasurementDataReady(pMyDevice); |
lwc24 | 3:409108394e75 | 229 | VL53L0X_GetRangingMeasurementData(pMyDevice, pRangingMeasurementData); |
lwc24 | 3:409108394e75 | 230 | measure=pRangingMeasurementData->RangeMilliMeter; |
lwc24 | 3:409108394e75 | 231 | sum=sum+measure; |
lwc24 | 3:409108394e75 | 232 | VL53L0X_ClearInterruptMask(pMyDevice, VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY); |
lwc24 | 3:409108394e75 | 233 | VL53L0X_PollingDelay(pMyDevice); |
lwc24 | 3:409108394e75 | 234 | var++; |
lwc24 | 3:409108394e75 | 235 | } |
lwc24 | 3:409108394e75 | 236 | ave=sum/var; // This is the measurement value |
lwc24 | 3:409108394e75 | 237 | var=1; |
lwc24 | 3:409108394e75 | 238 | sum=0; |
lwc24 | 3:409108394e75 | 239 | |
lwc24 | 3:409108394e75 | 240 | // Get accelerometer measurement |
lwc24 | 3:409108394e75 | 241 | acc = read_accel(); |
lwc24 | 3:409108394e75 | 242 | |
lwc24 | 3:409108394e75 | 243 | light = read_light(); |
lwc24 | 3:409108394e75 | 244 | |
lwc24 | 3:409108394e75 | 245 | //temp = read_temp(); |
lwc24 | 3:409108394e75 | 246 | temp[0] = 0; |
lwc24 | 3:409108394e75 | 247 | temp[1] = 1; |
lwc24 | 3:409108394e75 | 248 | |
lwc24 | 3:409108394e75 | 249 | //air = read_air(); |
lwc24 | 3:409108394e75 | 250 | air[0] = 0; |
lwc24 | 3:409108394e75 | 251 | air[1] = 0; |
lwc24 | 3:409108394e75 | 252 | |
lwc24 | 3:409108394e75 | 253 | if (post_clicked) { |
lwc24 | 3:409108394e75 | 254 | //post_clicked = false; |
lwc24 | 3:409108394e75 | 255 | NetworkInterface* net = &wifi; |
lwc24 | 3:409108394e75 | 256 | HttpRequest* request = new HttpRequest(net, HTTP_POST, "http://10.25.1.118:5000"); |
lwc24 | 3:409108394e75 | 257 | request->set_header("Content-Type", "application/json"); |
lwc24 | 3:409108394e75 | 258 | //const char body[] = "{\"post\":\"request\" , \"message\" : \"hello\" }"; |
lwc24 | 3:409108394e75 | 259 | std::ostringstream datastr; |
lwc24 | 3:409108394e75 | 260 | datastr << "{ \"dist\" : " << ave << |
lwc24 | 3:409108394e75 | 261 | ", \"acceleration\" : { \"x\" : " << acc[0] << ", \"y\" : " << acc[1] << ", \"z\": " << acc[2] << "}" << \ |
lwc24 | 3:409108394e75 | 262 | ", \"co2\" : " << air[0] << ", \"voc\" : " << air[1] << \ |
lwc24 | 3:409108394e75 | 263 | ", \"visible\" : " << light[0] << ", \"infared\" : " << light[1] << \ |
lwc24 | 3:409108394e75 | 264 | ", \"temperature\" : " << temp[0] << ", \"humidity\" : " << temp[1] << " }"; |
lwc24 | 3:409108394e75 | 265 | std::string dstr = datastr.str(); |
lwc24 | 3:409108394e75 | 266 | //const char body[] = dstr.c_str(); |
lwc24 | 3:409108394e75 | 267 | HttpResponse* response = request->send(dstr.c_str(), strlen(dstr.c_str())); |
lwc24 | 3:409108394e75 | 268 | lcd_print(response->get_body_as_string().c_str()); |
lwc24 | 3:409108394e75 | 269 | delete request; |
lwc24 | 3:409108394e75 | 270 | } |
lwc24 | 3:409108394e75 | 271 | |
lwc24 | 3:409108394e75 | 272 | if (put_clicked) { |
lwc24 | 3:409108394e75 | 273 | put_clicked = false; |
lwc24 | 3:409108394e75 | 274 | post_clicked = false; |
lwc24 | 3:409108394e75 | 275 | NetworkInterface* net = &wifi; |
lwc24 | 3:409108394e75 | 276 | HttpRequest* request = new HttpRequest(net, HTTP_PUT, "http://IP_ADDRESS_HERE:8080"); |
lwc24 | 3:409108394e75 | 277 | request->set_header("Content-Type", "application/json"); |
lwc24 | 3:409108394e75 | 278 | const char body[] = "{\"put\":\"request\"}"; |
lwc24 | 3:409108394e75 | 279 | HttpResponse* response = request->send(body, strlen(body)); |
lwc24 | 3:409108394e75 | 280 | lcd_print(response->get_body_as_string().c_str()); |
lwc24 | 3:409108394e75 | 281 | delete request; |
lwc24 | 3:409108394e75 | 282 | } |
lwc24 | 3:409108394e75 | 283 | |
lwc24 | 3:409108394e75 | 284 | //wait_ms(10); |
lwc24 | 3:409108394e75 | 285 | |
lwc24 | 3:409108394e75 | 286 | } |
Jenny Plunkett |
0:c5b042cf8162 | 287 | |
Jenny Plunkett |
0:c5b042cf8162 | 288 | } |