Jump to content

Eigene Software mit ESP32 + Rotay Switch + Display + 4-20mA Ausgang


Recommended Posts

Hallo zusammen, ich habe mir den ESP32, das E-Paper Display, den Switch und den 4-20mA Analog Ausgang bestellt.

Ich dachte das geht ganz easy, aber ich habe keine blassen schimmer wie ich mir eine eigene Software dazu schreiben kann.

Ich arbeite schon länger mit Visual Studio Code und schreibe eigene ESP32 Software, aber das bekomme ich nicht zum laufen.

Normal hat man in src die Main cpp Datei, die dann kompiliert wird.

https://www.tinkerforge.com/de/doc/Tutorials/Tutorial_ESP32_Firmware/Tutorial.html

Das versteht ich nicht. 

"um das jeweilige Tutorial-Modul zu aktivieren muss dessen Name am Ende der Optionen custom_backend_modules und custom_frontend_modules der entsprechenden .ini Datei hinzufügt werden"

Ich finde auch leider überhaupt nichts im Internet als Beispiel wo man anfangen kann.

Ich möchte einfach nur den Encoder drehen und die Ausgabe mA auf dem Display anzeigen.

 

Aktuell habe ich auf einem eigen Entwickelten ESP32 Pico einen 4-20mA Ausgang am laufen.

Mir hat einfach die Modulbauweiß gefallen und wollte das mal testen.

Aktuell ist es für mich einfacher den ESP +Hardware + Software selber zu machen, als hier nur eine Software zu erweitern.

Wäre super für eine Hilfestellung.

Danke.

Gruß Holger

https://www.auto-steuerung.de/

2023-05-27 10_47_27-Neuigkeiten und interessante Themen.png

bearbeitet von Trexis5
Link zu diesem Kommentar
Share on other sites

Wenn du einen ESP32 (ohne Ethernet) hast, editierst du die esp32.ini und fügst das „Tutorial Phase 1“ Modul bei custom_backend_modules und custom_frontend_modules ein. Sieht dann z.B. so aus:

custom_backend_modules = ESP32 Brick
                         Watchdog
                         Uptime Tracker
                         Network
                         Wifi
                         NTP
                         Http
                         WS
                         Event
                         Firmware Update
                         Proxy
                         Authentication
                         Device Name
                         Wireguard
                         Coredump
                         Pwa
                         Tutorial Phase 1

custom_frontend_modules = Device Name
                          Proxy
                          Tutorial Phase 1
                          Network Start
                            Network
                            Wifi
                            NTP
                            Wireguard
                          Network End
                          System Start
                            Authentication
                            Event Log
                            Firmware Update
                          System End
                          TF Branding

Ich bin mir aber zugegebenermaßen nicht sicher, was du mit dem „4-20mA Analog Ausgang“ meinst. Unser Industrial Dual 0-20mA Bricklet 2.0 hat einen 0-20mA Eingang und liefert dir einen Wert für den gemessenen Strom.

Link zu diesem Kommentar
Share on other sites

Wenn du in VSCode PlatformIO installiert hast, dann klickst du unten in der Statuszeile auf „env:warp“ und wählst „env:esp32“ aus. Dann klickst du entweder auf den Build- oder Upload-Button (Haken bzw. Pfeil nach rechts). Dann wird das Projekt komplett gebaut und du erhältst im Verzeichnis software/build eine Firmware-Datei endend auf _merged.bin, die du über das Webinterface des ESP32-Bricks hochladen kannst, oder die Firmware wird direkt über USB hochgeladen, falls du den Brick per USB angeschlossen hast.

Link zu diesem Kommentar
Share on other sites

Erstmal gehört zumindest die Fehlerausgabe zu env:warp. Anscheinend hast du noch nicht env:esp32 ausgewählt.

Das schwerwiegendere Problem scheint aber zu sein, dass irgendein anderes Programm auf die Source-Dateien zugreift und dich blockiert. Hast du zufällig noch irgendwelche Explorer-Fenster oder andere Editoren auf? Ich wüsste sonst nicht, was die usb_dfu.h oder zumindest das Verzeichnis, in dem sie liegt, blockieren sollte.

Link zu diesem Kommentar
Share on other sites

Moin,

Ich glaube du und damit dann auch @MatzeTF sind falsch abgebogen. Die ESP32-Firmware zu erweitern ergibt eigentlich nur Sinn, wenn du auch die ganzen Features der Firmware nutzen willst. Webinterface, API usw. Wenn du eine kleine Firmware für einen ESP und ein paar Bricklets schreiben willst, ist es sinnvoller, eine "ganz normale" neue Arduino-Firmware zu schreiben.

Die ganze Struktur kannst du dir anlegen wie hier: https://docs.platformio.org/en/latest/integration/ide/vscode.html#setting-up-the-project beschrieben (den Teil kennst du vermutlich, wenn du mit VSCode schon ESP-Firmwares geschrieben hast). Damit du mit den Bricklets kommunizieren kannst, brauchst du dann unsere C/C++-Bindings für Mikrocontroller, die kannst du hier: https://download.tinkerforge.com/bindings/uc/tinkerforge_uc_bindings_latest.zip herunterladen und dann folgende Ordner/Dateien in dein Projekt packen:

  • Den source\bindings-Ordner aus der Zip-Datei in dein Projekt nach src\bindings
  • Aus source\hal_arduino_esp32_brick bzw. hal_arduino_esp32_ethernet_brick (hängt davon ab ob du den Brick mit oder ohne Ethernet gekauft hast)  die .h und .cpp (nicht die .ino!) nach src\hal_arduino_esp32_brick
  • Wenn du die Beispiele verwenden möchtest, die zu jedem Bricklet in der Dokumentation (und der Bindings-Zip-Datei) enthalten sind, dann kannst du die .ino-Dateo aus source\hal_arduino_esp32_(ethernet_)brick als main.cpp nach source legen und dir eins der Beispiele daneben legen.

Alternativ habe ich das ganze für das E-Paper-Bricklet mal durchgespielt, die Zip im Anhang beinhaltet alles, was du brauchst.

esp32_epaper_example.zip

Link zu diesem Kommentar
Share on other sites

super, danke das teste ich. Ja ich brauche keine Webobefläche usw. Nur deinen Encoder der mit die mA verändert.

Danke ich teste das mal.

 

Jetzt kenne ich mich auch.

Gerade schnell online die Daten kopiert und build. Kein Fehler.

Super.

Wenn ich zuhause bin teste ich es gleich. 

Vielen Dank. Mega

bearbeitet von Trexis5
Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...