Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Navigation

esp32

ESP32


Installation

Komplette Doku der API sowie Einrichten einer Entwicklungsumgebung mit Eclipse findet sich hier. Version 4.1 ist Stand vom April 2020.

Aufbau der IDE:

  • Windows 10 Pro
  • Java JRE 8
  • Eclipse 2020-03
  • Python 3.7
  • git 2.21.0

Einfach den Installer benutzen, der lädt alles benötigte herunter und richtet die Programme ein mit Ausnahme von Java und Eclipse. Zuletzt erfolgt noch die Installation des benötigten Eclipse Plugins, diese ist hier beschrieben.

Projekte

Fügt man einem Projekt eigene Source- und Headerfiles hinzu, werden keine Standardpfade zum Compiler- und Headerdateien referenziert!?
Es erscheint dann die Fehlermeldung „…unresolved inclusion…„

FIXME Meine Lösung: Die neue Datei in die CMakeLists.txt im Order main aufnehmen:

Alles speichern und neu übersetzen → funktioniert!

Protokolle

MQTT

Die Nutzung eines verschlüsselten und Kennwort-geschützten Brokers stellt mit ESP32 und den zur Verfügung gestellten Bibliotheken kein Problem mehr dar. Der Verbindungsaufbau erfolgt z.B. so:

const esp_mqtt_client_config_t mqtt_cfg = {
        .uri = mqtts_uri,
	.port = 8883,
	.cert_pem = cert_letsencrypt,
	.username = "Master",
	.password = "StrenGeheim",
    };
esp_mqtt_client_handle_t client = esp_mqtt_client_init(&mqtt_cfg);

Die im Beispiel verwendete Version für letsencrypt setzt voraus, dass ein gültiges Zertifikat vom ausgebenden Zertifizierer vorliegt. Bei letsencrypt kann dies unter https://letsencrypt.org/certificates/ heruntergeldaden werden. Aktuell (Mai 2020) sieht die Definition für das Zertifikat folgendermaßen aus:

static const char *cert_letsencrypt =\
		"-----BEGIN CERTIFICATE-----\n"
		"MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/\n" \
		"MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT\n" \
		"DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow\n" \
		"SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT\n" \
		"GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC\n" \
		"AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF\n" \
		"q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8\n" \
		"SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0\n" \
		"Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA\n" \
		"a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj\n" \
		"/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T\n" \
		"AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG\n" \
		"CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv\n" \
		"bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k\n" \
		"c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw\n" \
		"VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC\n" \
		"ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz\n" \
		"MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu\n" \
		"Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF\n" \
		"AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo\n" \
		"uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/\n" \
		"wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu\n" \
		"X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG\n" \
		"PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6\n" \
		"KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==\n" \
		"-----END CERTIFICATE-----\n";

Fertige libs zur Nutzung des MQTT-Protokolls am ESP32: coming soon…

Task Programmierung

esp32.txt · Zuletzt geändert: 2020/05/20 20:50 von admin