laskee ihmisiä

Dependencies:   Adafruit-GFX-MbedOS6 Adafruit_SSD1331_MbedOS6

Revision:
3:55afdc7fb4f2
Parent:
2:4fcb4138083d
Child:
4:a814f6735023
--- a/main.cpp	Tue Oct 06 08:58:48 2020 +0000
+++ b/main.cpp	Wed Oct 07 10:47:30 2020 +0000
@@ -1,12 +1,29 @@
 #include "mbed.h"
+#include "ESP8266Interface.h"
+#include <MQTTClientMbedOs.h>
+
+//Miten pistän kiinni
+
+//sensori
+//r = virta 5v
+//b = ground
+//w = D6
+
+//wifi
+//L432KC D5=PB6=UART1TX --- 3 RXD
+//L432KC D4=PB7=UART1RX --- 4 TXD
+//L432KC 3V3 --- 1 3.3V
+//L432KC GND --- 2 GND
 
 DigitalOut led1(LED1);
-DigitalIn alarm(D6, PullUp);
+InterruptIn alarm(D6, PullUp);
+
 
-//testi  xDDDDD
 int main() {  
+
+//Tästä alkaa sensori sensuroinnit
     
-    while(1) {
+    while(true) {
         if (alarm){
             led1=1;
             printf("Toimii! Jippii! \r\n");
@@ -14,4 +31,52 @@
         else
             led1=0;
     }
+
+//Tästä alkaa wifi ja mqtt hörjöilyt
+ESP8266Interface esp(MBED_CONF_APP_ESP_TX_PIN, MBED_CONF_APP_ESP_RX_PIN);
+    
+    //Store device IP
+    SocketAddress deviceIP;
+    //Store broker IP
+    SocketAddress MQTTBroker;
+    
+    TCPSocket socket;
+    MQTTClient client(&socket);
+    
+    int ret = esp.connect(MBED_CONF_APP_WIFI_SSID, MBED_CONF_APP_WIFI_PASSWORD, NSAPI_SECURITY_WPA_WPA2);
+    
+
+    esp.get_ip_address(&deviceIP);
+    
+    esp.gethostbyname(MBED_CONF_APP_MQTT_BROKER_HOSTNAME, &MQTTBroker);
+    MQTTBroker.set_port(MBED_CONF_APP_MQTT_BROKER_PORT);
+
+    MQTTPacket_connectData data = MQTTPacket_connectData_initializer;       
+    data.MQTTVersion = 3;
+    char *id = MBED_CONF_APP_MQTT_ID;
+    data.clientID.cstring = id;
+    
+    char buffer[64];
+    sprintf(buffer, "TykkäänMuikuista");
+    
+
+    MQTT::Message msg;
+    msg.qos = MQTT::QOS0;
+    msg.retained = false;
+    msg.dup = false;
+    msg.payload = (void*)buffer;
+    msg.payloadlen = strlen(buffer);
+
+    socket.open(&esp);
+    socket.connect(MQTTBroker);
+    client.connect(data);
+
+    while (true) {
+    client.publish(MBED_CONF_APP_MQTT_TOPIC, msg);
+    ThisThread::sleep_for(30000);
+    }
+    client.yield(100);
+    client.disconnect();
+    
+//Tähän loppuu wifi ja mqtt hörhöily
 }
\ No newline at end of file