laskee ihmisiä
Dependencies: Adafruit-GFX-MbedOS6 Adafruit_SSD1331_MbedOS6
main.cpp@6:e5fdc96a8310, 2020-10-18 (annotated)
- 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?
User | Revision | Line number | New 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 | } |