laskee ihmisiä

Dependencies:   Adafruit-GFX-MbedOS6 Adafruit_SSD1331_MbedOS6

Committer:
vaeries
Date:
Sun Oct 18 15:56:57 2020 +0000
Revision:
6:e5fdc96a8310
Parent:
5:fbb8f4417298
Child:
7:d6cbb33f21fd
JSON update

Who changed what in which revision?

UserRevisionLine numberNew contents of line
koodimuikku 0:8d549d45642e 1 #include "mbed.h"
koodimuikku 3:55afdc7fb4f2 2 #include "ESP8266Interface.h"
koodimuikku 3:55afdc7fb4f2 3 #include <MQTTClientMbedOs.h>
vaeries 6:e5fdc96a8310 4
koodimuikku 3:55afdc7fb4f2 5 //Miten pistän kiinni
vaeries 6:e5fdc96a8310 6
koodimuikku 3:55afdc7fb4f2 7 //sensori
koodimuikku 3:55afdc7fb4f2 8 //r = virta 5v
koodimuikku 3:55afdc7fb4f2 9 //b = ground
koodimuikku 3:55afdc7fb4f2 10 //w = D6
vaeries 6:e5fdc96a8310 11
koodimuikku 3:55afdc7fb4f2 12 //wifi
koodimuikku 3:55afdc7fb4f2 13 //L432KC D5=PB6=UART1TX --- 3 RXD
koodimuikku 3:55afdc7fb4f2 14 //L432KC D4=PB7=UART1RX --- 4 TXD
koodimuikku 3:55afdc7fb4f2 15 //L432KC 3V3 --- 1 3.3V
koodimuikku 3:55afdc7fb4f2 16 //L432KC GND --- 2 GND
vaeries 6:e5fdc96a8310 17
koodimuikku 0:8d549d45642e 18 DigitalOut led1(LED1);
koodimuikku 3:55afdc7fb4f2 19 InterruptIn alarm(D6, PullUp);
vaeries 6:e5fdc96a8310 20
vaeries 6:e5fdc96a8310 21
koodimuikku 4:a814f6735023 22 int main() {
koodimuikku 0:8d549d45642e 23
koodimuikku 4:a814f6735023 24 //Tästä alkaa wifi ja mqtt hörjöilyt
koodimuikku 4:a814f6735023 25
koodimuikku 4:a814f6735023 26 ESP8266Interface esp(MBED_CONF_APP_ESP_TX_PIN, MBED_CONF_APP_ESP_RX_PIN);
koodimuikku 3:55afdc7fb4f2 27
koodimuikku 3:55afdc7fb4f2 28 //Store device IP
koodimuikku 3:55afdc7fb4f2 29 SocketAddress deviceIP;
koodimuikku 3:55afdc7fb4f2 30 //Store broker IP
koodimuikku 3:55afdc7fb4f2 31 SocketAddress MQTTBroker;
koodimuikku 3:55afdc7fb4f2 32
koodimuikku 3:55afdc7fb4f2 33 TCPSocket socket;
koodimuikku 3:55afdc7fb4f2 34 MQTTClient client(&socket);
koodimuikku 3:55afdc7fb4f2 35
koodimuikku 3:55afdc7fb4f2 36 int ret = esp.connect(MBED_CONF_APP_WIFI_SSID, MBED_CONF_APP_WIFI_PASSWORD, NSAPI_SECURITY_WPA_WPA2);
koodimuikku 3:55afdc7fb4f2 37
koodimuikku 3:55afdc7fb4f2 38 esp.get_ip_address(&deviceIP);
koodimuikku 3:55afdc7fb4f2 39
koodimuikku 3:55afdc7fb4f2 40 esp.gethostbyname(MBED_CONF_APP_MQTT_BROKER_HOSTNAME, &MQTTBroker);
koodimuikku 3:55afdc7fb4f2 41 MQTTBroker.set_port(MBED_CONF_APP_MQTT_BROKER_PORT);
vaeries 6:e5fdc96a8310 42
koodimuikku 3:55afdc7fb4f2 43 MQTTPacket_connectData data = MQTTPacket_connectData_initializer;
koodimuikku 3:55afdc7fb4f2 44 data.MQTTVersion = 3;
koodimuikku 3:55afdc7fb4f2 45 char *id = MBED_CONF_APP_MQTT_ID;
koodimuikku 3:55afdc7fb4f2 46 data.clientID.cstring = id;
koodimuikku 3:55afdc7fb4f2 47
koodimuikku 3:55afdc7fb4f2 48 char buffer[64];
koodimuikku 3:55afdc7fb4f2 49 sprintf(buffer, "TykkäänMuikuista");
koodimuikku 3:55afdc7fb4f2 50
vaeries 6:e5fdc96a8310 51
koodimuikku 3:55afdc7fb4f2 52 MQTT::Message msg;
koodimuikku 3:55afdc7fb4f2 53 msg.qos = MQTT::QOS0;
koodimuikku 3:55afdc7fb4f2 54 msg.retained = false;
koodimuikku 3:55afdc7fb4f2 55 msg.dup = false;
koodimuikku 3:55afdc7fb4f2 56 msg.payload = (void*)buffer;
koodimuikku 3:55afdc7fb4f2 57 msg.payloadlen = strlen(buffer);
vaeries 6:e5fdc96a8310 58
koodimuikku 3:55afdc7fb4f2 59 socket.open(&esp);
koodimuikku 3:55afdc7fb4f2 60 socket.connect(MQTTBroker);
koodimuikku 4:a814f6735023 61 client.connect(data);
vaeries 6:e5fdc96a8310 62
koodimuikku 4:a814f6735023 63 //Tästä alkaa sensori sensuroinnit
koodimuikku 4:a814f6735023 64
koodimuikku 5:fbb8f4417298 65 int counter;
koodimuikku 5:fbb8f4417298 66 counter = 0;
koodimuikku 5:fbb8f4417298 67
koodimuikku 4:a814f6735023 68 while(true) {
koodimuikku 4:a814f6735023 69 if (alarm){
koodimuikku 5:fbb8f4417298 70 counter++;
koodimuikku 5:fbb8f4417298 71 printf("Toimii! Jippii! '%d' \r\n", counter);
koodimuikku 4:a814f6735023 72
koodimuikku 4:a814f6735023 73 //Tässä laite lähettää mqtt paketin
vaeries 6:e5fdc96a8310 74
koodimuikku 3:55afdc7fb4f2 75 client.publish(MBED_CONF_APP_MQTT_TOPIC, msg);
koodimuikku 3:55afdc7fb4f2 76 client.yield(100);
koodimuikku 3:55afdc7fb4f2 77 client.disconnect();
koodimuikku 4:a814f6735023 78 }
koodimuikku 4:a814f6735023 79 }
koodimuikku 0:8d549d45642e 80 }