Initial commit
This commit is contained in:
commit
42b555b7a2
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
secrets.h
|
||||
|
7
Makefile
Normal file
7
Makefile
Normal file
@ -0,0 +1,7 @@
|
||||
compile:
|
||||
arduino-cli compile --fqbn arduino:samd:mkrwifi1010
|
||||
|
||||
run: compile
|
||||
sudo arduino-cli upload --fqbn arduino:samd:mkrwifi1010 --port /dev/ttyACM0
|
||||
sudo cat /dev/ttyACM0
|
||||
|
78
h3-arduino.ino
Normal file
78
h3-arduino.ino
Normal file
@ -0,0 +1,78 @@
|
||||
#include <Arduino_MKRIoTCarrier.h>
|
||||
#include <WiFiNINA.h>
|
||||
#include <ArduinoMqttClient.h>
|
||||
|
||||
#include "secrets.h"
|
||||
|
||||
MKRIoTCarrier carrier;
|
||||
WiFiSSLClient wifi_client;
|
||||
MqttClient mqtt_client(wifi_client);
|
||||
|
||||
extern const char *wifi_ssid;
|
||||
extern const char *wifi_password;
|
||||
|
||||
extern const char *mqtt_server;
|
||||
extern const char *mqtt_username;
|
||||
extern const char *mqtt_password;
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
Serial.begin(9600);
|
||||
|
||||
Serial.println("Started");
|
||||
|
||||
carrier.begin();
|
||||
carrier.display.init(240, 240);
|
||||
|
||||
pinMode(TFT_BACKLIGHT, OUTPUT);
|
||||
digitalWrite(TFT_BACKLIGHT, HIGH);
|
||||
|
||||
Serial.println("Connecting to WiFi");
|
||||
|
||||
WiFi.begin(wifi_ssid, wifi_password);
|
||||
while (WiFi.status() != WL_CONNECTED) {
|
||||
Serial.print(".");
|
||||
delay(1000);
|
||||
}
|
||||
|
||||
Serial.println("Connected to WiFi");
|
||||
|
||||
mqtt_client.setUsernamePassword(mqtt_username, mqtt_password);
|
||||
if (!mqtt_client.connect(mqtt_server, 8883)) {
|
||||
Serial.print("MQTT connection failed with error code: ");
|
||||
Serial.println(mqtt_client.connectError());
|
||||
return;
|
||||
}
|
||||
|
||||
Serial.println("Connected to MQTT");
|
||||
|
||||
mqtt_client.subscribe("display");
|
||||
|
||||
carrier.display.setCursor(50, 20);
|
||||
carrier.display.setTextSize(4);
|
||||
carrier.display.print("Waiting");
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
int message_size = mqtt_client.parseMessage();
|
||||
if (message_size) {
|
||||
char *message = (char *)malloc(message_size + 1);
|
||||
|
||||
for (int i = 0; i < message_size && mqtt_client.available(); i++) {
|
||||
message[i] = (char)mqtt_client.read();
|
||||
}
|
||||
message[message_size] = '\0';
|
||||
|
||||
Serial.print("Got message: ");
|
||||
Serial.println(message);
|
||||
|
||||
carrier.display.fillScreen(0x000);
|
||||
carrier.display.setCursor(50, 20);
|
||||
carrier.display.setTextSize(4);
|
||||
carrier.display.print(message);
|
||||
|
||||
free(message);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user