diff --git a/src/gsensor.c b/src/gsensor.c index f0bb714..04306b4 100644 --- a/src/gsensor.c +++ b/src/gsensor.c @@ -15,6 +15,12 @@ #define SPEEDYBOI_ADDR 0x18 #define ACCD_X_MSB 0x03 +typedef struct { + enum {Vooruit, Achteruit} richting; + double timestamp; + int8_t g; +} pakketje; + void * GSensorTask(void *args) { I2C_Handle speedyBoy; @@ -25,6 +31,8 @@ void * GSensorTask(void *args) { int8_t buffer_rcv; uint8_t buffer_send = ACCD_X_MSB; + double timer = 0; + I2C_Transaction RW_Trans; RW_Trans.slaveAddress = SPEEDYBOI_ADDR; RW_Trans.writeBuf = &buffer_send; @@ -35,6 +43,16 @@ void * GSensorTask(void *args) { while(1) { I2C_transfer(speedyBoy, &RW_Trans); // publish read into mailbox (defined in mqtt.c) + timer++; + + pakketje pakket; + pakket.richting = (buffer_rcv < 0) ? Achteruit : Vooruit; + pakket.timestmp = timer; + pakket.g = abs(buffer_rsv); + + MQTTPublish(pakket); + + usleep(100000U); } return 0;