* This is the code for "BLE Device for motorbike". The device is attached on any bike at will. * User can control 2 switches and these switches can control anything that user wants ie: turn on * the bike, turn on the alarm system of the bike, turn on the light... * Temperature sensor is also included in the device. User can view the temperature when he/she gets * near the bike. * For the next version, humidity and air quality sensor are also added.

Dependencies:   DHT22

Revision:
3:d6fbd4f3a3d4
Parent:
2:65ed7cd0480c
--- a/source/bike_service.h	Thu Nov 02 18:38:02 2017 +0000
+++ b/source/bike_service.h	Fri Nov 03 04:24:42 2017 +0000
@@ -18,10 +18,11 @@
      
 /** 
   * @param[in] _ble BLE object for the underlying controller.
-  * @param[in] currentTemperature The temperature measured from the sensor.
+  * @param[in] currentTemperature The temperature measured from the sensor
+  * @param[in] currentHumidity    The humidity measured from the sensor
   */
 
-    bikeService(BLE &_ble, bool initialSwitchState, int16_t currentTemperature, uint8_t currentHumidity, uint16_t airQuality) :
+    bikeService(BLE &_ble, bool initialSwitchState, int8_t currentTemperature, uint8_t currentHumidity /*, uint16_t airQuality */) :
         ble(_ble), 
         switchState(SWITCH_CONTROL_UUID, &initialSwitchState),
         temperatureCharacteristic(GattCharacteristic::UUID_TEMPERATURE_CHAR, &currentTemperature, GattCharacteristic::BLE_GATT_CHAR_PROPERTIES_NOTIFY),
@@ -29,7 +30,7 @@
         airQualityCharacteristic(AIR_QUALITY_MEASURE_UUID, &airQuality, GattCharacteristic::BLE_GATT_CHAR_PROPERTIES_NOTIFY)        
     {
             /* Create and add the service */    
-            GattCharacteristic *charTable[] = {&switchState, &temperatureCharacteristic, &humidityCharacteristic, &airQualityCharacteristic};
+            GattCharacteristic *charTable[] = {&switchState, &temperatureCharacteristic, &humidityCharacteristic /*, &airQualityCharacteristic */};
             GattService         bikeService(BIKE_SERVICE_UUID, charTable, sizeof(charTable) / sizeof(GattCharacteristic *));
             ble.gattServer().addService(bikeService);
     }
@@ -38,9 +39,9 @@
         return switchState.getValueHandle();
     }
 
-    void updateTemperatureCharacteristic(int16_t newTemperature) {
+    void updateTemperatureCharacteristic(int8_t newTemperature) {
         currentTemperature = newTemperature; 
-        ble.gattServer().write(temperatureCharacteristic.getValueHandle(), (uint8_t *) &currentTemperature, sizeof(int16_t));
+        ble.gattServer().write(temperatureCharacteristic.getValueHandle(), (uint8_t *) &currentTemperature, sizeof(int8_t));
     }
     
     void updateAirQualityCharacteristic(uint8_t newHumidity) {
@@ -53,23 +54,23 @@
         ble.gattServer().write(airQualityCharacteristic.getValueHandle(), (uint8_t *) &airQuality, sizeof(uint16_t));
     }
     
-    void updateAllCharacteristics(int16_t newTemperature, uint8_t newHumidity, uint16_t newAirQuality) {
+    void updateAllCharacteristics(int8_t newTemperature, uint8_t newHumidity /*, uint16_t newAirQuality */) {
         currentTemperature = newTemperature;
         currentHumidity = newHumidity;
-        airQuality = newAirQuality;
+/*        airQuality = newAirQuality; */
         
-        ble.gattServer().write(temperatureCharacteristic.getValueHandle(), (uint8_t *) &currentTemperature, sizeof(int16_t));
+        ble.gattServer().write(temperatureCharacteristic.getValueHandle(), (uint8_t *) &currentTemperature, sizeof(int8_t));
         ble.gattServer().write(humidityCharacteristic.getValueHandle(), (uint8_t *) &currentHumidity, sizeof(uint8_t));
-        ble.gattServer().write(airQualityCharacteristic.getValueHandle(), (uint8_t *) &airQuality, sizeof(uint16_t));
+/*        ble.gattServer().write(airQualityCharacteristic.getValueHandle(), (uint8_t *) &airQuality, sizeof(uint16_t));  */
     }
 private:
-    int16_t currentTemperature;
+    int8_t currentTemperature;
     uint8_t currentHumidity;
     uint16_t airQuality;
 
     BLE                                  &ble;
     ReadWriteGattCharacteristic<bool>     switchState;
-    ReadOnlyGattCharacteristic<int16_t>   temperatureCharacteristic;
+    ReadOnlyGattCharacteristic<int8_t>    temperatureCharacteristic;
     ReadOnlyGattCharacteristic<uint8_t>   humidityCharacteristic;
     ReadOnlyGattCharacteristic<uint16_t>  airQualityCharacteristic;
 };