Welcome to MattzoBricks › Forums › MattzoBricks General Forum › Beginn meiner Automatisierung
- This topic has 12 replies, 3 voices, and was last updated 6 hours, 43 minutes ago by Dietmar B.
-
AuthorPosts
-
-
September 2, 2024 at 09:53 #7712Dietmar BParticipant
Ein “Hallo” an die Forumsgemeinde,
nachdem ich inzwischen meine ersten Züge mit Kugellager ausgestattet habe und die Stromversorgung im Zug mit mehreren Blockakkus optimiert habe (vielen Dank für die Tipps auf dieser Seite!), und nicht zuletzt mein letztes Bauprojekt (eine große Kirche) beendet habe, möchte ich nun die erste Schritte für die Automatisierung machen. Leider ist meine Erfahrung bzgl. der Elektronik sehr gering und hoffe auf Unterstützung. Vielleicht kommt ja ein Forumsteilnehmer auch aus dem Ruhrgebiet und hätte Lust und etwas Zeit mich auch vor Ort beim Start des Projekts zu unterstützen?
Meine Vorstellung ist es eine große Bahn zu bauen, welche min. 5 Züge (Lego Powered Up) beheimatet mit entsprechenden Weichen usw… Vielleicht sogar über 2 Ebenen, also ein Abstellbahnhof in der unteren Ebene.
Ich habe versucht mich hier etwas einzulesen und habe als erstes Rocrail auf meinen Windows PC kopiert.
Nun denke ich benötige ich die “ESP32 NodeMCU Module WLAN WiFi Dev Kit C Development Board mit CP2102” Boards um den ersten Zug im Oval fahren lassen zu können.Und schon stellen sich die ersten Fragen…
Die Boards sind die Brücke zwischen Lego Powered Bluetooth und dem WLAN. Die Boards lassen sich irgendwo platzieren oder man lässt sie mit dem jeweiligen Zug mitfahren. Da ich auch über eine 2. Ebene nachdenke, nehme ich an, dass das mitfahren die beste Lösung ist um Verbindungsprobleme zu vermeiden?Somit bräuchte ich 5 dieser Boards. Den Link zum Kauf habe ich hier gefunden. Aber was benötige ich für die Stromversorgung der Boards? Kann ich zu Beginn einfach ein handelsübliches Handy Ladegerät 220V auf 5V nehmen? Es muss ja nicht unbedingt von Anfang an mitfahren. So wie ich lese hat das Board aber eine Eingangsspannung von 3,3 V? Ist das ein Problem, bzw. was ist zu tun?
Falls ich mich dazu entscheide es tatsächlich mitfahren zu lassen, dann benötige ich final eine kleine USB Powerbank. Welches bietet sich hier an? Ein Link zum Kauf wäre wirklich hilfreich. Hab schon selbst geschaut, aber hier stellt sich auch die Frage nach der Spannung (üblich 5V statt 3,3V Eingangspannung vom Board).Das Mitfahren hätte aber auch den Nachteil, dass man jedesmal vor dem Fahren die Powerbank einschalten muss. Stelle mir das etwas umständlich bei 5 Zügen vor, jedesmal 5 Lego Hubs und 5 Powerbanks zu starten + evtl. noch den Deckel eines Wagons abnehmen zu müssen. Oder hab ich da etwas nicht richtig verstanden bzw. wie macht ihr das?
Fehlt neben dem Board und der Stromversorgung noch etwas anders an Hardware um den ersten Zug fahren lassen zu können?
Vielleicht sind meine Fragen sehr simpel, aber ich möchte ungern gleich von Anfang an in eine falsche Richtung losrennen. Vielen Dank für eure Unterstützung 🙂
Gruß
DietmarHab nochmal über das Thema nachgedacht… warum eigentlich eine weitere Stromversorgung für das Board im Zug, wenn der Zug doch schon eine eigene Stromversorgung über die 9V Blockbatterien hat. Kann man auch daran das Board anschließen? Dazwischen ein step down converter um die Spannung von 9 auf 3,3 Volt zu reduzieren.
Zusätzlich wäre es schön einen Ein Aus Schalter zu haben. Hab irgendwo in den Videos von einem Schalter mit 8mm Einbaumaß gehört,finde so einen Schalter aber nirgendwo im Internet und auch nicht in der Zubehörliste.Ihr seht meine Gedanke sind noch nicht so richtig sortiert und würde mich freuen wenn mir jemand für den Start hilft.
-
September 18, 2024 at 23:25 #7722Matthias RunteKeymaster
> Da ich auch über eine 2. Ebene nachdenke, nehme ich an, dass das mitfahren die beste Lösung ist um Verbindungsprobleme zu vermeiden?
Kommt drauf an, wie groß Deine Anlage ist. Wenn sie in einen Raum passt, benötigst Du das m.E. nicht, d.h. der Controller kann stationär verbaut werden.
> Somit bräuchte ich 5 dieser Boards.
Du kannst mehrere PU hubs mit einem Board steuern. Ich empfehle nicht mehr als 4 PU Hubs pro Board, damit die Dinger nicht an ihre Grenzen kommen.
> Aber was benötige ich für die Stromversorgung der Boards?
Ein einfaches USB Ladegerät.
> Zusätzlich wäre es schön einen Ein Aus Schalter zu haben. Hab irgendwo in den Videos von einem Schalter mit 8mm Einbaumaß gehört,finde so einen Schalter aber nirgendwo im Internet und auch nicht in der Zubehörliste.
Schau noch einmal auf der Materialliste (8mm switches). Brauchst Du aber nicht, wenn Du eh nur PU Hubs verwendest und die Boards für den MTC4BT stationär betreibst.
Allgemein finde ich es natürlich super, wenn Du in die Mattzobricks-Welt abtauchen willst. Falls Du keinerlei Elektronik-Vorkenntnisse hast, dann besorge Dir am besten erst einmal einen Elektronik-Startkasten und beschäftige Dich mit der Sache allgemein. Habe ich auch so gemacht. Meist gibt es viele Bauanleitungen für witzige Sachen. Wenn man das gemacht hat, hat man schon einmal eine grundsätzlich Vorstellung von dem, wie die Dinge funktionieren.
- This reply was modified 3 months, 3 weeks ago by Matthias Runte.
-
December 29, 2024 at 18:54 #7990Dietmar BParticipant
Leider komme ich aktuell nicht mehr ohne Unterstützung weiter um das Board “ESP32 Node MCU Module WLAN WiFi Dev Kit C Development Board mit CP2102” das erste Mal einzurichten.
Die ersten Schritte sind hoffentlich richtig gemacht:
– Rockrail ist auf dem PC installiert
– VSCode + PlatformIO + Libraries sind installiert
– Treiber für das Board unter WIN ist installiert
– my_platformio.ini ist angelegt
– Ein Project ist erstellt
– Ordner „data\MTC4BT1“ ist angelegt und network_config, controller_config + loco_simple dort abgespeichert
– JSON Extension unter PlattformIO hinterlegt um die 3 json Dateien nun anzupassen.1) Wie bekomme ich das OTA-Passwort heraus, bzw. wie kann ich dieses zum ersten Mal setzen? Oder gibt er eine Werkseinstellung?
2) Was ist MQTT broker IP-Adresse und wie bekomme ich diese heraus?3) Kann man hier bei Fragen auch Screenshots mitschicken? Es wird leider sicher nicht meine letzte Frage sein und Bilder sagen häufig mehr als tausend Worte.
-
December 30, 2024 at 11:13 #7991Matthias RunteKeymaster
Hallo Dietmar,
das OTA-Passwort musst Du selbst in der Datei network_config.json setzen (“otaPassword”). OTA funktioniert aber erst, wenn Du initial einmal erfolgreich die Firmware und Konfiguration jeweils per USB übertragen hast. Ich würde das für den Anfang erst einmal ganz auslassen und die Firmware und Konfiguration per USB übertragen. Das wird erst dann interessant, wenn Du die Controller irgendwie tief in der Anlage oder in Lokomotiven verbaut hast, und sie nicht immer ausbauen willst, wenn Du die Konfiguration änderst oder ein Firmware Update einspielst.MQTT bitte hier nachlesen: https://mattzobricks.com/de/automation/controllers. Gib mal auf der Konsole des Rechners, auf dem Dein Mosquitto läuft, “ipconfig” ein, da steht die IP-Adresse.
-
December 31, 2024 at 11:32 #8023Dietmar BParticipant
Danke für die schnelle Antwort. Versuche Schritt für Schritt weiter zu kommen…
1) Der nächste Schritt “Upload Filesystem Image” hat keinen Fehler angezeigt, jedoch der Schritt “Upload and Monitor”. Was ist zu tun?#include <SPI.h>
compilation terminated.
*** [.pio\build\az-delivery-devkit-v4\lib3d5\Ethernet\EthernetServer.cpp.o] Error 1
In file included from .pio/libdeps/az-delivery-devkit-v4/Ethernet/src/EthernetUdp.cpp:32:
.pio/libdeps/az-delivery-devkit-v4/Ethernet/src/utility/w5100.h:18:10: fatal error: SPI.h: No such file or directory
* Looking for SPI.h dependency? Check our library registry!
* CLI > platformio lib search “header:SPI.h”
* Web > https://registry.platformio.org/search?q=header:SPI.h
2) Der ESP32 hat ein Reset und Boot Button. Muss ich diese in einer speziellen Weise bei den Schritten “Upload Filesystem Image” + “Upload and Monitor“ verwenden?
3) Bisher ist meine main.cpp unverändert. Muss diese auch noch angepasst werden? Habe auf Git-Hub eine main.cpp gefunden, aber wenn ich diese verwende werden gleich Fehler mit Bezug auf „#include “MCJsonConfig.h”; #include “MTC4BTController.h”
#include “MTC4BTMQTTHandler.h”; #include “MattzoMQTTSubscriber.h”;
#include “MattzoWifiClient.h”; #include “loadControllerConfiguration.h”;
#include “loadNetworkConfiguration.h”; #include “log4MC.h”;
#include “rocrailitems/lclist.h”“-
December 31, 2024 at 12:55 #8024Dietmar BParticipant
Die Fehlermeldung bzgl. SPI.h ist nun weg. Der Boot Monitor zeigt nun:
Compressed 8192 bytes to 47…
Writing at 0x0000e000… (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 2129.2 kbit/s)…
Hash of data verified.
Compressed 233600 bytes to 129323…
Writing at 0x00010000… (12 %)
Writing at 0x0001d0b1… (25 %)
Writing at 0x00023b4e… (37 %)
Writing at 0x00028ea9… (50 %)
Writing at 0x0002e35e… (62 %)
Writing at 0x00036852… (75 %)
Writing at 0x0003e971… (87 %)
Writing at 0x00043f9a… (100 %)
Wrote 233600 bytes (129323 compressed) at 0x00010000 in 3.6 seconds (effective 521.3 kbit/s)…
Hash of data verified.Leaving…
Hard resetting via RTS pin…
— Terminal on COM3 | 9600 8-N-1
— Available filters and text transformations: colorize, debug, default, direct, esp32_exception_decoder, hexlify, log2file, nocontrol, printable, send_on_enter, time
— More details at https://bit.ly/pio-monitor-filters
— Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+HIm Monitor sehe ich auch seit Minuten “Task is running”, aber es geht nicht weiter…
Im screen shot in der Beschreibung geht es mit “[1] Setup: Starting MattzotrainController for BLE…” weiter.
Dies erscheint nicht bei mir…. => ??? -
January 1, 2025 at 18:27 #8029Dietmar BParticipant
Bin heute nochmal ganz von vorne gestartet…
Ich habe die Libraries neu installiert, verwende die automatisch erstellte main.cpp (wobei mir hier noch immer unklar ist, ob das für zumindest den Start so okay ist?), verwende die platformio.ini + my-platformio.ini wie ich sie unter github für MTC4BT vorfinde.
Hab die Libraries in der aktuellsten Version aber auch alternativ in den Versionen installiert wie es in der platformio.ini steht, aber in beiden Fällen bleiben die Fehlermeldung beim Schritt “Upload and Monitor” gleich: Mehrmals “fatal error: SPI.h: No such file or directory”.
Muss ich noch andere Dateien vom Github von den Ordnern “include”, “SRC”.. in meiner Ordner kopieren? Oder ist die main.cpp vom Github zu verwenden? Mir gehen inzwischen die Ideen aus was ich falsch mache 🙁
-
-
-
-
January 2, 2025 at 00:34 #8031Hilbert BKeymaster
Wie kommt man an den Quellcode von mattzobricks?
Versuchen Sie es in einem neuen Ordner:
git clone https://github.com/Mattzobricks/MattzoControllers.git
Dann öffne vscode und öffne den “workspace”, der sich in dem neuen Ordner befindet und „MattzConrtrollers“, er heißt „MattzoControllers.code-workspace“
Erstellen Sie eine Kopie von „my_platformio.ini.example“ und benennen Sie sie in „my_platformio.ini“ um.
Weiter:
Wenn Sie platformio in vccode installiert haben, sehen Sie unten in der Leiste: „develop“ und es sollte auch etwas wie „env:“ mit etwas dahinter stehen.
Klicken Sie darauf und wählen Sie: am oberen Rand des Fensters „env:esp32doit-devkit-v1“.
Warum sage ich das, ich sehe Monitorgeschwindigkeit 9600 straan, aber in unserer platformio.ini steht 115200
Wenn Sie jetzt auf das Häkchen unten in der Leiste (neben dem kleinen Haus) klicken, sollte alles anfangen zu bauen.
Möglicherweise müssen Sie den „upload_com_port“ in „my_platformio.ini“ ändern, damit er Ihrer Situation gerecht wird.
-
January 4, 2025 at 18:29 #8045Dietmar BParticipant
Danke für die Rückmeldung, aber ich verstehe die Hinweise nicht. Ich finde auch kein „develop“!
Ich habe nochmals von neuem gestartet. Siehe unten alle von mir gemachten Schritte.
1) VS Code installieren + PlattformIO installieren
2) MattzoControllers.code-workspace von Git kopieren
3) Neues Projekt erstellen
4) Open workspace from file (MattzoControllers.code-workspace) öffnen
5) platformIO.ini + my_platformIO.ini von Git kopieren
In platformIO.ini gewählt:
„; [env:esp32doit-devkit-v1]
; board = esp32doit-devkit-v1
[env:az-delivery-devkit-v4]
board = az-delivery-devkit-v4“
6) Libraries installieren (knolleary/PubSubClient@^2.8, h2zero/NimBLE-Arduino@^2.1.2,
bblanchon/ArduinoJson@^7.3.0, arcao/Syslog@^2.0.0,
arduino-libraries/Ethernet@^2.0.2
7) Com port 3 prüfen, sehe im Geräte Manager => Silicon Labs CP210x USB to UART Bridge (COM3)
8) Ordner „data/MTC4BT1“ im Projekt-Verzeichnis erstellen
9) network_config.json + controller_config.json + loco_simple.json von Git kopieren und in das Verzeichnis „data/MTC4BT1“ ablegen
10) network_config.json bearbeiten (IP Adresse vom PC unter „server“ hinterlegen; SSID + Passwort vom WIFI hinterlegen; IP Adresse vom mqtt ist noch “192.168.x.y”, da ja noch nicht bekannt)
11) loco_simple.json bearbeiten (MAC Adresse vom PU hinterlegen)
12) Upload Filesystem Image (Meldung: “Success”)
13) Upload and Monitor
Mehrfach Fehlermeldung wie z.B.:In file included from .pio/libdeps/az-delivery-devkit-v4/Ethernet/src/Dhcp.cpp:7:
.pio/libdeps/az-delivery-devkit-v4/Ethernet/src/utility/w5100.h:18:10: fatal error: SPI.h:
No such file or directory
* Looking for SPI.h dependency? Check our library registry!
* CLI > platformio lib search “header:SPI.h”
* Web > https://registry.platformio.org/search?q=header:SPI.h
#include <SPI.h>
compilation terminated.Alle Fehlermeldung beziehen sich auf Datei w5100.h, in der sich die Zeile
„#include <SPI.h>“ befindet.Hat sich also nichts geändert. Ich hoffe es kann mir jemand weiterhelfen!
-
-
January 4, 2025 at 22:26 #8047Matthias RunteKeymaster
Hallo Dietmar,
Punkt 2) Deines letzten Posts macht mich etwas nervös. Kopierst Du die Dateien von github einzeln auf Deinen Rechner? Das richtige Verfahren wäre, das Mattzobricks Projekt auf github zu klonen. Bitte den Master-Branch auschecken. Das aktuelle Versions-Tag ist 1.1. Ich denke, dass dies auch die Probleme mit der nicht gefundenen SPI Library lösen könnte.Wenn Du völlig neu in der Materie ist, versuche doch dann erst einmal, ganz einfache Beispiele mit Visual Studio Code und platformIO zum laufen zu bringen. Das Netz ist voller Anleitungen und geeigneter Beispiele.
-
January 5, 2025 at 12:07 #8048Dietmar BParticipant
Hallo Matthias,
tatsächlich mache ich diesen Fehler! Vielen Dank für den Hinweis!
Habe mir inzwischen ein (Hand-)Buch zum Thema ESP32 angeschafft um mich besser in das Thema einlesen zu können und werde mir dann auch Videos anschauen wie man Projekte von Github klont.
Hab in einer Woche ein paar Tage Zeit um weiter dazu zu lernen.
Grüße
Dietmar
-
January 13, 2025 at 15:46 #8068Dietmar BParticipant
Hallo Matthias,
bin wie gehabt nochmals von vorne gestartet und hab nun das Project GEKLONT. Zuvor mich bei Git angemeldet, Git unter WIN installiert, mich in VS Code bei Git angemeldet und hoffentlich alle anderen Schritte, wie network_config und Controller Config anpassen, durchgeführt.
1) Beim vorletzten Schritt “Upload Filesystem Image” kam die Meldung “Success”, jedoch der letzte “Upload and Monitor” war nicht erfolgreich.
Einige Fehlermeldung, z.B.:
src/BLEHubConfiguration.cpp:6:49: error: no matching function for call to ‘NimBLEAddress::NimBLEAddress(std::__cxx11::string&)’
oder
include/BLEHub.h:113:2: error: ‘NimBLEAdvertisedDeviceCallbacks’ does not name a type; did you mean ‘BLEAdvertisedDeviceCallbacks’?
oder
src/BLEHubScanner.cpp:9:2: error: ‘_advertisedDeviceCallback’ was not declared in this scope2) Hab die Einstellung in der platformio.ini wie folgt so belassen:
[env:esp32doit-devkit-v1]
board = esp32doit-devkit-v1
; [env:az-delivery-devkit-v4]
; board = az-delivery-devkit-v4
Aber müsste ich nicht eigentlich die beide unteren Linien aktivieren?
Und entsprechend auch die Linie [env:esp32doit-devkit-v1] in der my.platform.ini anpassen?Da ich diese Woche Zeit habe, hoffe ich mit Unterstützung mein ersten Erfolg zu haben.
-
-
-
AuthorPosts
- You must be logged in to reply to this topic.