User Tools

Site Tools


arduino:wio-de

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
arduino:wio-de [2020/02/08 01:54] rainerkarduino:wio-de [2024/03/20 15:04] (current) – [I/O Extender PCF8574] rjversluis
Line 1: Line 1:
 [[:arduino:wio-fr|{{ icons:fr.png|French Version}}]][[:arduino:wio-de|{{ icons:de.png|Deutsche Version}}]][[:arduino:wio-en|{{ icons:uk.png|English Version}}]] [[:arduino:wio-fr|{{ icons:fr.png|French Version}}]][[:arduino:wio-de|{{ icons:de.png|Deutsche Version}}]][[:arduino:wio-en|{{ icons:uk.png|English Version}}]]
-======WIO - Fahrtregler - 32 I/O - LEDs - Servos - RFID - Displays - DCC======+======WIO - Firmware======
 [[:german|{{ :hardware.png}}]][[:german|{{ :rocrail-logo-35.png}}]] [[:german|{{ :hardware.png}}]][[:german|{{ :rocrail-logo-35.png}}]]
 [[:german|Inhalt]] -> [[:hardware-de#arduino|Arduino]] [[:german|Inhalt]] -> [[:hardware-de#arduino|Arduino]]
-  * [[arduino:wio-overview-de|WIO-Übersicht]] | [[:arduino:wio-setup-de|WIO-Konfiguration]] | [[:arduino:wioctrl-de|WIO Control]] | [[:arduino:amp-de|Benutzer-Bitmaps]] | **[[:arduino:wio-de|WIO-Firmware]]** | [[:arduino:wio-cam-de|WIO CAM]] +  * [[arduino:wio-overview-de|WIO-Übersicht]] | [[:arduino:wio-setup-de|WIO-Konfiguration]] | [[:arduino:wioctrl-de|WIO Control]] | [[:arduino:amp-de|Benutzer-Bitmaps]] | **[[:arduino:wio-de|WIO-Firmware]]** | [[:arduino:wio-mobile-de|WIO Mobil]] | [[:arduino:wio-cable-de|Kabel]] | [[:wio:wio-ledscript-en|LEDScript]] (en) 
 +  * [[:arduino:wio-rascii-en|WIO RASCII]] (en) | [[:arduino:wio-canprot-en|WIO CAN Protocol]] (en) 
 + 
  \\  \\
-{{ :arduino:rici-proto.png?0x400}}{{  :arduino:wio_01_v2._pict3.jpg?250}} 
-|< >| 
-^  I n - A r b e i t ...  ^ 
- 
  \\  \\
 =====Einführung===== =====Einführung=====
-Diese Lösung basiert auf ESP8266/ESP32-Familie.\\+Dieses Projekt ist auf die Plattformen ESP8266ESP32 und RP2040 ausgerichtet.\\ 
 +Der Quellcode ist nur verfügbar, um ihn auf dem Zielgerät flashen zu können, wenn keine andere Methode möglich ist.\\ 
 +Das Forken oder Manipulieren des Quellcodes ist NICHT erlaubt und urheberrechtlich geschützt.\\ 
  
 Sie kann verwendet werden als: Sie kann verwendet werden als:
Line 33: Line 34:
  
 ====Unterstützte Boards==== ====Unterstützte Boards====
-  * Lolin D1 Mini+  * Lolin/Wemos D1 Mini ESP 8266
   * Lolin D32   * Lolin D32
   * ESP32 Dev Module   * ESP32 Dev Module
 +  * ESP32 CAM Module
  
-====Verwendete ESP-Stifte====+====Verwendete Stifte====
 Stift-Zuordnung in ''Pins.cpp'' prüfen: Stift-Zuordnung in ''Pins.cpp'' prüfen:
   * https://gitlab.com/rocrail/wio/-/blob/master/Pins.cpp   * https://gitlab.com/rocrail/wio/-/blob/master/Pins.cpp
Line 56: Line 58:
  
 =====Arduino IDE===== =====Arduino IDE=====
-//Getestet mit Version 1.8.10//\\ 
 Die Arduino IDE mit folgenden Boards und Bibliotheken vorbereiten: Die Arduino IDE mit folgenden Boards und Bibliotheken vorbereiten:
 ====Boardverwalter===== ====Boardverwalter=====
 Im Einstelldialog bei "Zusätzliche Boardverwalter-URLs" die folgende URL hinzufügen: Im Einstelldialog bei "Zusätzliche Boardverwalter-URLs" die folgende URL hinzufügen:
 <code> <code>
-https://arduino.esp8266.com/stable/package_esp8266com_index.jsonhttps://dl.espressif.com/dl/package_esp32_index.json+https://arduino.esp8266.com/stable/package_esp8266com_index.json 
 +https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json 
 +https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
 </code> </code>
 {{ :arduino:board-manager-en.png?300}} {{ :arduino:board-manager-en.png?300}}
-Und die ESP8266 Board-Bibliothek installieren.\\+Und die ESP8266 und ESP32 Board-Bibliotheken installieren.\\
 ====Board-Auswahl==== ====Board-Auswahl====
 {{ :arduino:lolin-ide-board.png?240}} {{ :arduino:lolin-ide-board.png?240}}
 ''LOLIN(WEMOS)D1 R2 & mini''\\ ''LOLIN(WEMOS)D1 R2 & mini''\\
 +
 ====Bibliotheken==== ====Bibliotheken====
-  ESP8266WiFi (Board Manager) \\ :!: Stick mit Version **2.5.2**, weil es ungelöste Probleme mit Version 2.6.x gibt. +===ESP8266 & ESP32=== 
-  * Wire (I2C+  ESP8266 (Board Manager) 
-  * FastLED ​(WS2812)+  * Adafruit NeoPixel ​(WS2812)
   * RotaryEncoder   * RotaryEncoder
   * MFRC522 ​(RC522)   * MFRC522 ​(RC522)
   * Servo   * Servo
   * ArduinoOTA   * ArduinoOTA
 +  * mcp_can 
 +    * https://github.com/coryjfowler/MCP_CAN_lib
 +    * [[:arduino:rcan-de#modifikationen|MCP_CAN Modifikationen]]
 +  * SparkFun APDS9960 RGB and Gesture Sensor \\ Zeile 198 in Arduino/libraries/SparkFun_APDS9960.h muss von NA_STATE in NO_STATE geändert werden, da sie mit der WiFi RP2040-Bibliothek in Konflikt steht. Dieser Enum-Wert wird in der Arduino/libraries/SparkFun_APDS9960.cpp nicht verwendet. (Implementierung)
  
-====SPIFFS==== +===ESP32=== 
-2M SPIFFS-Größe auswählen:\\ +  * ESP32 (Board Manager) 
-{{:arduino:arduino-esp8266-spiffs-2m.png?400}}\\ +  * ESP32Servo 
-SPIFFS ist ein Datei-System, das in WIO für das Hochladen von Benutzer-Bitmaps verwendet werden kann.\\ +  * ESP32CAN 
-Installieren des Arduino-IDE-Plugin für das Hochladen von Daten: +    * https://github.com/miwagner/ESP32-Arduino-CAN
-  * https://github.com/esp8266/arduino-esp8266fs-plugin+
  
-====Dunkles Thema==== +__**ESP32CAN Modifikationen**__\\ 
-Wer ein Dunkles Thema für die Arduino-IDE wünscht: +Der ''xSemaphoreTake'' sollte nach 500ms ablaufen, anstatt für immer zu warten.\\ 
-  https://github.com/konrad91/OneDarkArduino+''portMAX_DELAY'' mit 500 ersetzen und anstelle von null rc der ''xSemaphoreTake''-Funktion zurückgeben. (CAN.c) 
 +<code c> 
 +int CAN_write_frame(const CAN_frame_t *p_frame) { 
 + if (sem_tx_complete == NULL) { 
 + return -1; 
 + }
  
 + // Write the frame to the controller
 + CAN_write_frame_phy(p_frame);
 +
 + // wait for the frame tx to complete
 + int rc = xSemaphoreTake(sem_tx_complete, 500);
 + return rc;
 +}
 +</code>
 +
 +| Einfach die "Upload-Geschwindigkeit" auf 460800 verringern, falls beim Hochladen des Sketch Kommunikationsfehler angezeigt werden. |
  \\  \\
 +====FileSystem====
 +1M/2M FS-Größe auswählen:\\
 +{{:arduino:esp8266-fs-size.png?240}}\\
 +LittleFS ist ein Datei-System, das in WIO für das Hochladen von Benutzer-Bitmaps verwendet werden kann.\\
 +Installieren des Arduino-IDE-Plugin für das Hochladen von Daten:
 +  * https://github.com/esp8266/arduino-esp8266fs-plugin
 +
 =====WIO-Sketch===== =====WIO-Sketch=====
-| //Copyright (c) 2002-2020 Robert Jan Versluis, Rocrail.net// |+| //Copyright (c) 2002-2022 Robert Jan Versluis, Rocrail.net// |
 WIO ist Firmware zur Steuerung von Fahrtregler, I2C, LEDs, Servos, RFID, Displays und DCC.\\ WIO ist Firmware zur Steuerung von Fahrtregler, I2C, LEDs, Servos, RFID, Displays und DCC.\\
-  * https://gitlab.com/rocrail/wio 
   * [[https://gitlab.com/rocrail/wio/-/archive/master/wio-master.zip|Download als Zip]]   * [[https://gitlab.com/rocrail/wio/-/archive/master/wio-master.zip|Download als Zip]]
 +  * Klonen des Repository: (WIO mit Großbuchstaben!)\\ <code>git clone https://gitlab.com/rocrail/WIO.git</code>
   * [[https://gitlab.com/rocrail/wio/-/network/master|Change Log]]   * [[https://gitlab.com/rocrail/wio/-/network/master|Change Log]]
-Der Quellcode ist öffentlich aber "nicht open source"-lizensiert und darf nur zum Kompilieren und Laden auf den LOLIN D1 Mini verwendet werden.+Der Quellcode ist öffentlich aber "nicht open source"-lizensiert und darf nur zum Kompilieren und Laden auf den LOLIN D1 Mini und D32 verwendet werden.\\
 \\ \\
 +__**WICHTIG**__
 +^ :!::!::!: Das Verzeichnis MUSS nach dem Entpacken des ZIP von "wio-master" in "WIO" umbenannt werden. :!::!::!: ^\\
 +Ohne Umbennen des Quellen-Hauptverzeichnisses sind die Quellen-Dateien in der Arduino-IDE unbrauchbar und ergeben nur eine Unmenge an Kompilierungsfehlern!\\
 + \\
 +(**Wichtig:** Das USB-Kabel muss ein Daten-Kabel sein, ein Nur-Lade-Kabel funktioniert nicht.)
 + \\
 + \\
 ====Binary==== ====Binary====
-{{ :arduino:esp-downloadtool.jpg?400}}+{{ :arduino:esp-downloadtool.jpg?400}}{{ :arduino:espressif_flash_tool_chip.jpg?150}}{{ :arduino:espressif_flash_tool.jpg?300}}
 Das Espressif-Tool verwenden, um das WIO-Binary hochzuladen. Das Espressif-Tool verwenden, um das WIO-Binary hochzuladen.
-  * [[https://launchpad.net/rocrail/+download|WIO Binary]]+  * [[https://gitlab.com/rocrail/wio|WIO Binaries]]
   * [[https://www.espressif.com/en/support/download/other-tools|ESP Flash Download Tool]]   * [[https://www.espressif.com/en/support/download/other-tools|ESP Flash Download Tool]]
  
Line 126: Line 162:
 Ausgabe nach einem ''?''-Befehl:\\ Ausgabe nach einem ''?''-Befehl:\\
 <code> <code>
-Settings: 
 ------------------------------ ------------------------------
-version=0.85 WIO 20191031d (c)Rocrail +revision=458 WIO (c)Rocrail 
-ssid=xxxxxxxx +192.168.100.175 RSSI=-52 
-pwd=xxxxxxxx +battery=186 
-server=xxxxxxxx +EEPROM size=3804 
-port=8051 +Free heap=174271 
-name= +I/O state=00 00 00 00 
-id=33 +------------------------------ 
-io=i2cled +SPIFFS total=1345kb used=0kb 
-i2c=ooooooooooooooooppppiiiibbbbbbbb +file: Disco01.led size=110 
-steps=50 +------------------------------ 
-pulse=50 +Configuration: 
-display=22 +------------------------------ 
-dccsc=0+ssid1= 
 +pwd1= 
 +ssid2= 
 +pwd2= 
 +server
 +name=[local] 
 +id=45 
 +io=i2cled  
 +i2c=ooooooooiiiiiiii 
 +steps=64 
 +sleeptimer=5 
 +pulse=5 
 +pwmsize=0 
 +options=0xC2 0x01 0x00 0x00 
 +booster=0 
 +board=1 
 +display=3
 railcom=0 railcom=0
-maxpower=0 +id12=0 
-RSSI=-53 +depart=0 
-MCP23017 status: 0x20=OK 0x21=OK +stepper=
-I2C device found at address 0x20 +canprot=0(0) 
-I2C device found at address 0x21 +canio=0 
-I2C device found at address 0x3C +canusb=0 
-I2C found 3 devices +trace=0
-loco1=0 loco2=3 active=0 +
- +
-Change settings by typing:+
 ------------------------------ ------------------------------
-*ssid=<your WiFi SSID> 
-*pwd=<your WiFi password> 
-*server=<your Rocrail server IP/host> 
-*port=<your Rocrail server port> 
-*name=<Node name> 
-*id=<Node number> 
-*io=<type> <throttle> or <i2cled> or <i2cservo>> or <i2crfid> or <i2cdcc> or <i2cmobile> 
-*i2c=<oooooooobbbbbbbboooooooobbbbbbbb> o=output, i=input, b=block, p=pulse 
-*steps=<number of rotary steps> 
-*pulse=<output pulse length in 100ms units> 
-*display=<geometry1><geometry2> 0=96x16 1=128x32 2=128x64 
-*dccsc=<short circuit detection> 0=off 1=on 
-*railcom=<use RX for detection> 0=off 1=on 
-*maxpower=<set max. WiFi power> 0=off 1=on (Needs a reboot) 
 </code> </code>
  
  
 ====Benutzer-Konfiguration==== ====Benutzer-Konfiguration====
-Die [[https://gitlab.com/rocrail/Arduino/blob/master/WIO/USERCNF.h|USERCNF.h]]-Datei kann für anfängliches erstes Booten, WiFi und Rocrail-Server-Werte verwendet werden.\\+Die [[https://gitlab.com/rocrail/wio/-/blob/master/USERCNF.h|USERCNF.h]]-Datei kann für anfängliches erstes Booten, WiFi und Rocrail-Server-Werte verwendet werden.\\
 Die Werte müssen eingestellt sein, bevor kompiliert und hochgeladen wird.\\ Die Werte müssen eingestellt sein, bevor kompiliert und hochgeladen wird.\\
 Anschließend können diese Werte mit Monitor-Befehlen geändert werden.\\ Anschließend können diese Werte mit Monitor-Befehlen geändert werden.\\
 +:!: Die Werte aus der USERCNF.h-Datei werden nur verwendet, wenn es noch keine Einstellungen gibt (neues Gerät).\\
 +- Sollen die Werte im Flash-Speicher eines bestehenden WIO durch die Werte in USERCNF.h ersetzt werden, dann in der Arduino-IDE "Erase Flash" auf "All Flash Contents" setzen.\\
 +- Soll nur die Firmware eines bestehenden WIO upgedated werden, ohne die Einstellungen (z.B. WLAN-Einstellungen) zu ändern, dann in der Arduino-IDE "Erase Flash" auf "only Sketch" setzen.
  
 ====Monitor-Befehle==== ====Monitor-Befehle====
-Der Arduino Seriell-Monitor kann zur Änderung der WIO-Einstellungen mit 57600 bit/s verwendet werden.\\ +Der Arduino Seriell-Monitor kann zur Änderung der WIO-Einstellungen mit 115200 bit/s verwendet werden.\\ 
-//(Wenn RailCom aktiviert ist, schaltet die Baudrate automatisch auf 250000 und der serielle Monitor kann "nur lesen".)//\\+  Wenn RailCom aktiviert wurde, schaltet die Baudrate automatisch auf 250000 und der serielle Monitor kann "nur lesen". 
 +  - Wenn ID12 aktiviert wurde, schaltet die Baudrate automatisch auf 9600 bit/s und der serielle Monitor kann "nur lesen".
  
-^ Befehle ^ Beschreibung ^ Standard ^+Grundsätzliche Verbindungs-Einstellung kann auch über die Registerkarte __**[[:arduino:wio-setup-de#wartung_maintenance|Wartung]]**__ des WIO Einstelldialogs erfolgen.\\ 
 + 
 +|< >| 
 +^ Befehle ^ Beschreibung ^ Standard ^ Bemerkung ^
 | ?  | Zeigt die momentanen Einstellungen und wie sie geändert werden. | | ?  | Zeigt die momentanen Einstellungen und wie sie geändert werden. |
 | !  | Auflistung des verwendeten Flash-Speichers. | | !  | Auflistung des verwendeten Flash-Speichers. |
-| *ssid=<value> | Setzt die WiFi-Access-Point SSID. | - | +| *sod | Erzwingt Start of Day |*scan | List all available WiFi APs | 
-| *pwd=<value> | Setzt das WiFi-Passwort. Ein WiFi-Neuverbindung wir gestartet. | - | +| *scan | Listet alle verfügbaren WiFi APs | 
-| *server=<value> | Setzt die Rocrail-Server-IP oder den Namen. | - | +| *ssid1=<​value>​ | Setzt die WiFi-AP SSID. | - | Primäre SSID (max. 30 Zeichen) |  
-| *port=<value> | Setzt den Rocrail-Server-Port. | 8051 |+| *pwd1=<value> | Setzt das WiFi-Passwort. Ein WiFi-Neuverbindung wir gestartet. | - | Primäres WiFi-Passswort (max. 30 Zeichen) | 
 +| *ssid2=<value> | Setzt die WiFi-Access-Point SSID. | - | Alternative SSID (max. 30 Zeichen) 
 +| *pwd2=<value> | Setzt das WiFi-Passwort. Ein WiFi-Neuverbindung wir gestartet. | - | Alternatives WiFi-Passswort (max. 30 Zeichen) 
 +| *server=<value> | Setzt die Rocrail-Server-IP oder den Namen. | - | Kann ein CSV von max. 30 Zeichen sein. (1.71+) \\ Ggf. auch 2 alternative Server-IPs oder -Namen. \\ Beispiele: "192.168.1.110,192.168.100.5" \\ oder "​mba2019,​win2019" \\ Wenn auf "auto" gesetzt ist, hat das den gleichen Effekt, wie der "autoserver"-Parameter.
 +| *autoserver=<value> | Setzt die Rocrail-Server-Auto-Suche mit R2RNet. | siehe USERCNF.h -> ENABLE_R2RNET | 0=off, 1=on |
 | *name=<value> | Optionaler Node-Name. | - | | *name=<value> | Optionaler Node-Name. | - |
 | *id=<value> | Node-Nummer/Fahrtregler-ID; Muss eindeutig sein . | 33 | | *id=<value> | Node-Nummer/Fahrtregler-ID; Muss eindeutig sein . | 33 |
Line 192: Line 237:
 | *steps=<value> | Anzahl der Drehgeber-Schritte. | 127 | | *steps=<value> | Anzahl der Drehgeber-Schritte. | 127 |
 | *pulse=<value> | Ausgangs-Impuls-Länge in 100ms-Einheiten. | 5 | | *pulse=<value> | Ausgangs-Impuls-Länge in 100ms-Einheiten. | 5 |
-| *display=<value>Standard-Display-Geometrie: 0=96x16 1=128x32 2=128x64 00 +| *canprot=<value>CAN-Protokoll | MBUS | 0=MBUS, 1=RCAN | 
-| *dccsc=<value>Kurzschluss-Erkennungfalls der Booster es meldet. | 0 | +| *dccslave=<value> | DCC-Rolle | Master | 0=Master, 1=Slave(Booster) | 
-| *railcom=<value>Versucht RailCom-Daten am Rx-Stift zu lesen; Der Monitor ist in diesem Modus nicht verfügbar. +| *trace=<value> Trace level | 9 (volatile) | 0=Info, 1=Debug, 9=None \\ Nur für die aktuelle Sitzung. 
-| *maxpower=<value>Stellt die WiFi-Ausgangsleistung auf Maximum von 20,5 dBm. |+| *ptmain=<value>Service-ModusPT, PoM-H-Bridge | 0 (flüchtig) | 0=off, 1=on \\ Nur für Tests! 
 +| *pwm=<value>PWM-Größe für Mobile Motor-Steuerung - | 600=10Hz 
 +| *display=<value>Display-Typ: 0=96x161=128x32, 2=128x64, 3=SH1106 1 | 
 **Hinweis:**  Den <value> (Wert) entsprechend der lokalen Bedingungen ersetzen.\\ **Hinweis:**  Den <value> (Wert) entsprechend der lokalen Bedingungen ersetzen.\\
 **Hinweis:​** ​Nach Änderung des WIO-Typs ist ein Reset erforderlich.\\ **Hinweis:​** ​Nach Änderung des WIO-Typs ist ein Reset erforderlich.\\
Line 206: Line 254:
 | b | Block: Eingang mit 2 Sekunden Aus-Verzögerung. | | b | Block: Eingang mit 2 Sekunden Aus-Verzögerung. |
 | p | Pulse: Ausgang mit autom. Aus. | | p | Pulse: Ausgang mit autom. Aus. |
 +(Block ist ein Input welcher erst Low meldet nachdem es 2 Sekunden stabil Low gewesen ist, wie es bei einem Gleisbesetztmelder sein sollte.)
 +\\
 +\\
  
 ===IO-Typ-Konfiguration=== ===IO-Typ-Konfiguration===
Line 212: Line 263:
 | throttle |  -  |  -  |  -  |  -  |  -  |  -  | | throttle |  -  |  -  |  -  |  -  |  -  |  -  |
 | i2cled |  JA  |  JA  |  Nein  |  Nein  |  JA  |  Nein  | | i2cled |  JA  |  JA  |  Nein  |  Nein  |  JA  |  Nein  |
-| i2cservo |  JA  |  Nein  |  JA|  Nein  |  JA|  Nein  | +| i2cservo |  JA  |  Nein  |  JA  |  Nein  |  JA  |  Nein  | 
-| i2crfid |  JA|  Nein  |  Nein  |  JA  |  JA  |  Nein  |+| i2crfid |  JA  |  Nein  |  Nein  |  JA  |  JA  |  Nein  |
 | i2cdcc |  JA  |  Nein  |  Nein  |  Nein  |  JA  |  JA  | | i2cdcc |  JA  |  Nein  |  Nein  |  Nein  |  JA  |  JA  |
  
- \\ 
-====Grundeinstellung mit WEB-Browser==== 
-|< >| 
-|  //Beim DCC-WIO-Typ nicht aktiviert.//  | 
-Der WIO fungiert als sehr kleiner Zugangspunkt (AP = Access Point), um eine Verbindung herzustellen und die Grundeinstellung ohne seriellen Monitor durchzuführen. \\ 
-Der WIO-AP-Name ist wie folgt formatiert: "WIO<id>.<name>" (Standard: WIO33.local)\\ 
-Die WIO-APs werden aufgelistet und können ausgewählt werden:\\ 
-|{{:arduino:win10-aps.png?0x280}}|{{:arduino:wio-ap.png?0x280}}| 
-|  Netzwerkauswahl  |  WIO-AP-Webseite  |\\ 
-Das AP-Standard-**Passwort** ist "12345678", welches in der USERCNF.h geändert werden kann.\\ 
-Nach dem Herstellen der Verbindung zum WIO kann die Grundeinstellung mit einem WEB-Browser unter folgender URL geändert werden: 
-<code> 
-http://192.168.4.1 
-</code> 
-Nach **Submit** versucht der WIO automatisch, die WLAN- und Rocrail-Server-Verbindung wiederherzustellen.\\ 
-Der AP wird gestoppt nach: 
-  * einem **Submit**. 
-  * 2 Minuten Leerlauf. 
  \\  \\
 ====OTA Updating==== ====OTA Updating====
Line 241: Line 274:
 {{:arduino:wio-ota-en.png?400}}\\ {{:arduino:wio-ota-en.png?400}}\\
 Einfach aus der Liste den gewünschten WIO anstelle eines USB-Ports auswählen und Upload ausführen.\\ Einfach aus der Liste den gewünschten WIO anstelle eines USB-Ports auswählen und Upload ausführen.\\
-Wenn nach einem **Passwort** gefragt wird, ist das dasselbe, wie für den __**[[#http-grundeinstellung|Access Point]]**__.\\+Wenn nach einem **Passwort** gefragt wird, ist das dasselbe, wie für den __**[[#grundeinstellung_mit_web-browser|Access Point]]**__ (Standard "12345678").\\
 {{:arduino:wio-ota-display.png}} {{:arduino:ota-upload-en.png?600}}\\ {{:arduino:wio-ota-display.png}} {{:arduino:ota-upload-en.png?600}}\\
  
  
  \\  \\
 +====OTA von Grund auf neu==== 
 +  * __**[[arduino:wio-setup-de#ota_von_grund_auf_neu|WIO mit OTA von Grund auf neu installieren]]**__
 =====RIC - Fahrtregler===== =====RIC - Fahrtregler=====
 +| **Hinweis:** RIC wird in der Firmware nicht mehr unterstützt und durch [[:arduino:wioctrl-en|WIO Control]] ersetzt.|
 ** Hinweis: ** // RIC steuert Loks nach Adresse, nicht nach Kennung. Es wird also die erste in der Liste verwendet, wenn mehrere Loks dieselbe Adresse haben .// \\ ** Hinweis: ** // RIC steuert Loks nach Adresse, nicht nach Kennung. Es wird also die erste in der Liste verwendet, wenn mehrere Loks dieselbe Adresse haben .// \\
 Der Pocket-Fahrtregler-I/O-Modus benötigt einen Drehgeber (Drehencoder), eine LED und vier Tasten.\\ Der Pocket-Fahrtregler-I/O-Modus benötigt einen Drehgeber (Drehencoder), eine LED und vier Tasten.\\
Line 301: Line 336:
 Der Analog-Eingang prüft die Batterie-Spannung.\\ Der Analog-Eingang prüft die Batterie-Spannung.\\
 Wenn die Spannung unter einen bestimmten Wert kommt, sendet der LOLii automatisch ein Geschwindigkeit-Null-Befehl zur Lok und einen Freigabe-Befehl.\\ Wenn die Spannung unter einen bestimmten Wert kommt, sendet der LOLii automatisch ein Geschwindigkeit-Null-Befehl zur Lok und einen Freigabe-Befehl.\\
-Die LED geginnt sehr schnelles Blinken, solange die Batterie nicht vollständig entladen ist.\\+Die LED beginnt sehr schnelles Blinken, solange die Batterie nicht vollständig entladen ist.\\
 ===Servererkennung=== ===Servererkennung===
-|  UDP-Multicast entleert den Heap-Speicherplatz und ist daher deaktiviert. +Wenn beim Rocrail-Server R2RNet auf Multicast-Adresse 224.0.1.20 aktiviert ist, kann WIO den Servernamen / die IP-Adresse abrufen, um automatisch eine Verbindung zum Client-Port 8051 herzustellen.\\
-<del>Wenn beim Rocrail-Server R2RNet auf Multicast-Adresse 226.0.0.aktiviert ist, kann der LOLii den Servernamen / die IP-Adresse abrufen, um automatisch eine Verbindung zum 8051-Client-Port herzustellen.</del>\\+
  
  \\  \\
Line 310: Line 344:
   * Verbindet direkt mit dem Rocrail-Server-Client-Port 8051. Siehe **[[https://forum.rocrail.net/viewtopic.php?p=207808#p207808|Forum-Beitrag]]**   * Verbindet direkt mit dem Rocrail-Server-Client-Port 8051. Siehe **[[https://forum.rocrail.net/viewtopic.php?p=207808#p207808|Forum-Beitrag]]**
   * Wiederherstellung von WiFi- und Server-Verbindung.   * Wiederherstellung von WiFi- und Server-Verbindung.
-  * 32 Digital-I/O, kompatibel mit allen GCA-Schnittstellen.+  * 32 Digital-I/O, MCP23017, kompatibel mit allen GCA-Schnittstellen.
     * Eingang     * Eingang
     * Ausgang     * Ausgang
     * Block     * Block
     * Pulse     * Pulse
-  * 128 LEDs kompatibel mit WS2812 an D8. (Ausgangs-Typ Farbe in Rocrail.)+  * 100 LEDs kompatibel mit WS2812 an D8. (Ausgangs-Typ Farbe in Rocrail.)
     * RGB-Farbe     * RGB-Farbe
     * Helligkeit     * Helligkeit
Line 329: Line 363:
   * Ausgangs-/Weichen-Befehle werden bestätigt, nachdem sie verarbeitet wurden. (Blink-Ausgänge werden nicht bestätigt.)   * Ausgangs-/Weichen-Befehle werden bestätigt, nachdem sie verarbeitet wurden. (Blink-Ausgänge werden nicht bestätigt.)
   * Eingangs-Ereignisse müssen innerhalb 100ms bestätigt werden. Nach dieser Zeitüberschreitung werden sie erneut gesendet. (Max. 5 Wiederholungen.)   * Eingangs-Ereignisse müssen innerhalb 100ms bestätigt werden. Nach dieser Zeitüberschreitung werden sie erneut gesendet. (Max. 5 Wiederholungen.)
 + \\
 +====I/O Extender PCF8574P====
 +Bis zu 4 Stück I/O-Extender Typ PCF8574 können als Alternative zu 2 Stück von MCP23017 verwendet werden.
 +  - 0x20 und 0x21 sollten nicht als I2C-Slave-IDs verfügbar sein. (Keine MCP23017's installiert.)
 +  - Die Slave-ID's der PCF8574 sollten mit 0x22 beginnen.
  
 +**Achtung:** //Check for the correct type to match the 0x20 base address: PCF8574P or PCF857T. (The PCF8574A type starts with base address 0x38.)//\\
  
- \\+\\
 ====Adressierung==== ====Adressierung====
 |< >| |< >|
 ^ Rocrail ^ WIO ^ ^ Rocrail ^ WIO ^
 | Schnittstellenkennung | "WIO" | | Schnittstellenkennung | "WIO" |
-| Bus | Kennung |+Node ID (Bus| Kennung |
 | Adresse | I2C-Port | | Adresse | I2C-Port |
 | Adresse | LED-Port | | Adresse | LED-Port |
Line 345: Line 385:
   * Signale   * Signale
   * Rückmelder   * Rückmelder
 +
 +===Doppelspulen-Weichen===
 +| //__Deaktivieren__ der Optionen 'Einzel-Ausgang' und 'Zubehör', den Typ 'Ausgang' __aktivieren__.// |
 +Für Weichen mit mehr als einem Port wird die nächste Adresse für den Weichenbefehl verwendet. \\
 +Wenn sich also an Port 1 eine Doppelspulen-Weiche befindet, sollte Port 2 nicht verwendet werden. Die zweite Weiche geht dann an Port 3. \\
 +Beide I2C-Ausgänge werden automatisch als Typ 'p' Pulse verwendet. \\
 +Mögliche Hardware:
 +  * **[[:mgv76-de|GCA76]]**
 +  * [[:gca77-de|GCA77]]
 +  * [[:gca107-de|GCA107]]
  
 ====Blinken==== ====Blinken====
Line 368: Line 418:
   - Schnittstelle -> Adresse setzt die LED-Nummer   - Schnittstelle -> Adresse setzt die LED-Nummer
   - Schnittstelle -> Port-Typ: LED   - Schnittstelle -> Port-Typ: LED
-  - Schnittstelle -> Steuerungs-Typ: Begriffs-Nummern (Max. 6 Sub-LEDs -> 2 x WS2812) +  - Schnittstelle -> Steuerungs-Typ: Begriffs-Nummern (Max. 6 Sub-LEDs -> 2 x WS2812/WS2811
-  - Helligkeit+  - Schnittstelle -> Helligkeit setzt Helligkeit  
 +  - Schnittstelle -> Dimmen (0…15) setzt die Dimm-Schritte (Überblenden). Ein Wert von Null deaktiviert Dimmen.
 Die Begriffs-Werte sind mit __**[[:rocnet:rocnetnode-led-de#signal-unterstuetzung|RocNetNode Pi08]]**__ kompatibel. (WIO version 0.81+)\\ Die Begriffs-Werte sind mit __**[[:rocnet:rocnetnode-led-de#signal-unterstuetzung|RocNetNode Pi08]]**__ kompatibel. (WIO version 0.81+)\\
  
 +====Signale====
 +  - Schnittstelle -> WIO-Kennung: Bus
 +  - Schnittstelle -> Adresse setzt den LED-Offset 
 +  - Schnittstelle -> Port-Typ: Ausgang
 +  - Schnittstelle -> Steuerungs-Typ: Begriffs-Nummern 
 +Die Begriffs-Werte sind mit __**[[:rocnet:rocnetnode-led-de#signal-unterstuetzung|RocNetNode Pi08]]**__ kompatibel. (WIO version 0.81+)\\
 +\\
 +
 +====Charlieplexing Signal Support====
 +
 +Nur verfügbar auf [[:wio:wio03-io16-en|WIOesp32 16 I/O]], [[:wio:wiopico-io16-en|WIOpico 16 I/O]], WIOpico, [[:wio:wiopico-en|SIOpico]]\\
 +Ein Rocrail-Signal mit Steueraspekten und Porttyp-Multiplex verwendet 4 Pins, beginnend mit dem Port-Offset.\\
 +Die Wiederholfrequenz beträgt ca. 4000 Hz.\\
 +Aspektwerte werden aus der Registerkarte „Einzelheiten“ verwendet. Es werden 24 Bit verwendet, die oberen 12 Bit sind zum Blinken.\\
 +Beispiel: LED 1 und 2 an und LED 2 blinkend: 0x002003 -> Aspektwert = 8195 \\
 +
 +Ein zweites Signal am Mast kann in Rocrail mit Adresse + 100 definiert werden, um es mit dem Hauptsignal zu kombinieren.\\
 +
 +Helligkeit setzt Helligkeit, es können nur Werte zwischen 200-255 verwendet werden. Ein Wert < 200 wird auf 200 gesetzt.\\
 +Ein überblenden mit Dimmen ist nicht möglich.\\
 +
 +^ LED Nummber for Viessmann Multiplex Signal^^^^^^^^^
 +|LED|Pin+|Pin-|1|2|3|4|Viessmann| |
 +|1|1|2|H|L| | |Vr_Ge_O|Vorsignal  gelb  oben |
 +|2|1|3|H| |L| |Hp_Rt_R|Hauptsignal rot  rechts |
 +|3|1|4|H| | |L|Hp_Rt_L|Hauptsignal rot  links |
 +|4|2|1|L|H| | |Vr_Gr_O|Vorsignal  grün oben |
 +|5|2|3| |H|L| |Vr_Gr_u|Vorsignal grün unten |
 +|6|2|4| |H| |L| | |
 +|7|3|1|L| |H| |Hp_Ge|Hauptsignal gelb |
 +|8|3|2| |L|H| |Vr_Ge_U|Vorsignal gelb unten |
 +|9|3|4| | |H|L|Hp_Ws_L|Hauptsignal weiß links |
 +|10|4|1|L| | |H|Hp_Gr|Hauptsignal grün |
 +|11|4|2| |L| |H| | |
 +|12|4|3|||L|H|Hp_Ws_R|Hauptsignal weiß rechts |
 +
 +
 +Für eine korrekte Anzeige des Hauptsignals bei Rot und Rangieren muss das Vorsignal ausgeblendet werden. \\
 +Der Helligkeitswert im Haupt- und Vorsignal muss identisch sein. \\
 +
 +Multiplexeingänge von Viessmann, Ansicht von unten auf den Stecker. \\
 +{{:wio:viessmann-stecker.png?200|}}
 +
 + \\
 ====Servos==== ====Servos====
-{{ :arduino:servo.jpg?200}}{{ :arduino:servo-pwm.png?200}}+{{ :arduino:servo.jpg?200}} {{ :arduino:servo-pwm.png?200}}
 Die Adressierung ist die gleiche, wie bei normalen Ausgängen.\\ Die Adressierung ist die gleiche, wie bei normalen Ausgängen.\\
-|< >| +^ Steuerung ^ Ausgang ^ Weiche ^ Signal ^ Segment Drehscheibe ^ Bereich ^ 
-^ Steuerung ^ Ausgang ^ Weiche ^ Bereich ^ +| WIO | Schnittstellenkennung = "WIO" | Schnittstellenkennung = "WIO" | Schnittstellenkennung = "WIO" | Schnittstellenkennung = "WIO" | - | 
-| WIO | Schnittstellenkennung = "WIO" | Schnittstellenkennung = "WIO" | - | +| WIO-Kennung | Knoten-ID Knoten-ID | Knoten-ID | Knoten-ID | 1...255 | 
-| WIO-Kennung | Bus Bus | 1...255 | +| Servo-Port | Adresse | Adresse | Adresse | Adresse | 1...4 | 
-| Servo-Port | Adresse | Adresse | 1...4 | +| Zusätzliche Option | - | Einzel-Ausgang ON | - | - | 
-| Zusätzliche Option | - | Einzel-Ausgang ON | - | +| Steuerung | - | - | Begriffs-Nummern | - | - | 
-| Position 1 | Parameter Ein | Parameter | 0...180° | +| Position 1 | Parameter Ein | Parameter | Rot Begriff 0 **((Signal-Dialog, Registerkarte "Einzelheiten", Eingabedialog "Wert" mit {{:icons:threedotbutton.png?25}} öffnen. \\ Den Wert des Servowinkels im Dezimalfeld eingeben __und mit Enter bestätigen__.))** |  - | 0...180° | 
-| Position 2 | Parameter Aus | Wert | 0...180° | +| Position 2 | Parameter Aus | Wert | Grün Begriff 1 **((Signal-Dialog, Registerkarte "Einzelheiten", Eingabedialog "Wert" mit {{:icons:threedotbutton.png?25}} öffnen. \\ Den Wert des Servowinkels im Dezimalfeld eingeben __und mit Enter bestätigen__.))** |  - | 0...180° 
-| Geschwindigkeit | Verzögerung | Schaltzeit | 1...10 | +| Position | - | - | - | Decoder Gleisnummer | PWM 500...2500 ²
-| Ziel | Port Typ "Servo" | Port Typ "Servo" | - |+| Geschwindigkeit | Verzögerung | Schaltzeit | Dimmen | Schrittverzögerung | 1...10 | 
 +| Ziel | Port Typ "Servo" | Port Typ "Servo" | Port Typ "Servo" | Type wioservo | - | 
 +² Achtung zu hohe oder niedrige Werte können den Servo beschädigen mit PWM 1500 = 0° beginnen. 
  
 +  * **Hinweis:** Die Positions-Werte 0...180° werden als PMW-Werte (Duty Cycle) von 700...2300 µs ausgegeben. \\ Ggf. sind Winkelwerte an die Servo-Eigenschaften anzupassen.  
  \\  \\
 ====RFID==== ====RFID====
 {{ :arduino:wio-spi-rfid.jpg?240}} {{ :arduino:wio-spi-rfid.jpg?240}}
 |  //Sicherstellen, dass keine Servos und LEDs angeschlossen sind, wenn auf RFID umgestellt wird.//  | |  //Sicherstellen, dass keine Servos und LEDs angeschlossen sind, wenn auf RFID umgestellt wird.//  |
 +Mit WIO Type I/O16 nicht möglich, hier bitte ID-12LA verwenden.
  
-  - Zwei [[https://www.sunrom.com/p/mifare-rfid-readerwriter-1356mhz-rc522|Mifare RFID RC522]]-Leser werden unterstützt.+  - Zwei RFID RC522-Leser werden unterstützt.
   - Es werden 5 zusätzliche Ports benötigt; Servos sind parallel nicht möglich.   - Es werden 5 zusätzliche Ports benötigt; Servos sind parallel nicht möglich.
   - Melde-Adressen sind 100 und 101. (In Rocrail 101 und 102.)   - Melde-Adressen sind 100 und 101. (In Rocrail 101 und 102.)
   - Automatisches Rückmelder-Aus-Ereignis nach 1500ms. (Bis dahin muss es vom Server bestätigt sein.)   - Automatisches Rückmelder-Aus-Ereignis nach 1500ms. (Bis dahin muss es vom Server bestätigt sein.)
   - Viermaliges Wiederholen bis zur Bestätigung, bevor aufgeben wird.   - Viermaliges Wiederholen bis zur Bestätigung, bevor aufgeben wird.
 +
 +\\ 
 +
  
 |< >| |< >|
-^ Signal ^ D1 Mini ^ RFID RC522 ^+^ Signal ^ D1 Mini 8266 / Lolin D32 ^ RFID RC522 ^
 | Slave Select 1 | D3 | 1 (SDA) Leser 1 | | Slave Select 1 | D3 | 1 (SDA) Leser 1 |
 | Slave Select 2 | D0 | 1 (SDA) Leser 2 | | Slave Select 2 | D0 | 1 (SDA) Leser 2 |
Line 404: Line 507:
 | MOSI | D7 | 3 (MOSI) | | MOSI | D7 | 3 (MOSI) |
 | MISO | D6 | 4 (MISO) | | MISO | D6 | 4 (MISO) |
 +\\
 +
 +====ID-12LA====
 +{{  :arduino:rfid-card-antenna.jpg?200}} {{  :arduino:id12la-pin6-led-taginrange.jpg?200}} \\
 +Optional kann ein RFID-Leser vom Typ [[http://id-innovations.com|ID-12LA]] an den RX-Stift angeschlossen werden, der Tags erkennen kann, die an Rocrail gemeldet werden.\\
 +Der Tag wird als **[[:sensor-gen-de#kennung|Rückmelder-Kennung]]** oder **[[:sensor-int-de#uid-name|UID-Name]]** verwendet, **[[:can-gc4-de#rfid-schreibweise|dezimal punkt-formatiert]]**.\\
 +Die **[[:gca_rfid-de|GCA-RFID-Platine]]** kann für Montage und Anschluss des ID-12LA verwendet werden.\\
 +__Der serielle Monitor wird auf 9600 Bit/s gesetzt.__\\
 +**Hinweis 1:** Dies ist für das Scannen von Tags zwischen den Schienen, um Rocrail wissen zu lassen, wo das fahrende Fahrzeug ist.\\
 +**Hinweis 2:** Tags verwenden, die schnell reagieren.\\
  
  \\  \\
Line 423: Line 536:
 --></html> --></html>
  
-====Display SSD1306==== +====Stifte S88==== 
-{{:arduino:wio-oled-128x32.jpg?0x160}}{{:cbus:display-goes.jpg?0x160}}\\+|< >| 
 +^ ESP8266 ^ ESP32 ^ PicoW ^ Verwendung ^ 
 +| D0 | 12 | 10 | PS | 
 +| D5 | 17 | 11 | Reset | 
 +| D6 | 26 | 12 | Takt | 
 +| D7 | 27 | 13 | Daten | 
 + 
 + \\ 
 + 
 + 
 +====Display SSD1306/SH1106==== 
 +|{{:arduino:wio-oled-128x32.jpg?0x160}}|{{:arduino:f8.jpg?0x160}}
 +|  Beispiel.  |  {f8} auf einem SH1106 Display.  |
 An I2C können zwei Displays vom Typ SSD1306 mit den I2C-Adressen 0x3C und 0x3D angeschlossen werden.\\ An I2C können zwei Displays vom Typ SSD1306 mit den I2C-Adressen 0x3C und 0x3D angeschlossen werden.\\
 Formatierter Text ist mit **[[:rocnet:rocdisplay-en#text_format|RocDisplay]]** kompatibel.\\ Formatierter Text ist mit **[[:rocnet:rocdisplay-en#text_format|RocDisplay]]** kompatibel.\\
Line 432: Line 557:
 Der Bus wird für die WIO-Kennung verwendet und die Display-Nummer für die Auswahl zwischen 1 und 2. (0x3C oder 0x3D)\\ Der Bus wird für die WIO-Kennung verwendet und die Display-Nummer für die Auswahl zwischen 1 und 2. (0x3C oder 0x3D)\\
 Der Adress-Wert wird nicht verwendet.\\ Der Adress-Wert wird nicht verwendet.\\
 +===Multiplexing===
 +Bis zu 8 Displays können mit **[[:wio:wio-displaymultiplex-en|Display-Multiplexing]]** (en) verwendet werden.\\
 ===Unterstützte Formatierung=== ===Unterstützte Formatierung===
 Formatierungsbefehle sind in geschweiften Klammern eingeschlossen. Formatierungsbefehle sind in geschweiften Klammern eingeschlossen.
Line 441: Line 568:
 ^ Befehl ^ Parameter ^ Beschreibung ^ Hinweis ^ ^ Befehl ^ Parameter ^ Beschreibung ^ Hinweis ^
 | {B#} | #=0-99999999 | Liest eine AMP-Datei, "#.amp", von SPIFFS und zeichnet die Bitmap an der aktuellen Position. | | {B#} | #=0-99999999 | Liest eine AMP-Datei, "#.amp", von SPIFFS und zeichnet die Bitmap an der aktuellen Position. |
-| {B'//name//'} | AMP-Datei //name// | Liest eine AMP-Datei, "//name//.amp", von SPIFFS und zeichnet die Bitmap an der aktuellen Position. | Der Name muss zwischen einfachen Anführungszeichen stehen. |+| {B'//name//'} oder {B[name]} | AMP-Datei //name// | Liest eine AMP-Datei, "//name//.amp", von SPIFFS und zeichnet die Bitmap an der aktuellen Position. | Der Name muss zwischen eckigen Klammern((für Rocview bevorzugt)) oder einfachen Anführungszeichen stehen. |
 | E | - | Lösche Display-Puffer. Ein zusätzliches {P} wird für das Löschen des Display benötigt. | | E | - | Lösche Display-Puffer. Ein zusätzliches {P} wird für das Löschen des Display benötigt. |
 | {F#} | #=0-2 | Font-Auswahl. 0=7x5 1=6x5w 2=6x5n | Font 5x5 wird nicht unterstützt, weil es nicht lesbar ist. | | {F#} | #=0-2 | Font-Auswahl. 0=7x5 1=6x5w 2=6x5n | Font 5x5 wird nicht unterstützt, weil es nicht lesbar ist. |
 | {H#} | #=0-255 | Setzt den Display-Kontrast. | | {H#} | #=0-255 | Setzt den Display-Kontrast. |
 | {I#} | #=0-1 | Invertiert das Display. 0=normal 1=invertiert | | {I#} | #=0-1 | Invertiert das Display. 0=normal 1=invertiert |
-| {L#} | #=0-3 | Gehe zur Zeile. Der Bereich ist von der Displaygröße abhängig. | +| {L#} | #=0-3 | Gehe zur Zeile. Der Bereich ist von der Displaygröße abhängig. (Y = L * 8) 
-| P | - | Puffer zum Display kopieren | +| P | - | Puffer zum Display kopieren |  
-| {R#} | #=0,2 | Legt die Drehung der Anzeige fest. 0=0° 2=180° |+| {R#} | #=0,2 | Legt die Drehung der Anzeige fest. 0=0° 2=180° | Siehe auch **[[:arduino:wio-setup-de#display|Display Konfiguration]]** 
 | {?V} | - | Zeige Firmware-Version. | | {?V} | - | Zeige Firmware-Version. |
 | {X#} | #=0-127 | Gehe zur Spalte. Der Bereich ist von der Displaygröße abhängig. | | {X#} | #=0-127 | Gehe zur Spalte. Der Bereich ist von der Displaygröße abhängig. |
 | {Y#} | #=0-32 | Gehe zur Reihe. Der Bereich ist von der Displaygröße abhängig. | | {Y#} | #=0-32 | Gehe zur Reihe. Der Bereich ist von der Displaygröße abhängig. |
 ^ Neue Befehle ^ Parameter ^ Beschreibung ^ ^ Neue Befehle ^ Parameter ^ Beschreibung ^
-| {c#} | #=0-16 | Zeichnet eine Analog-Uhr mit dem angegebenen Radius an der aktuellen Position. | +| {c#} | #=1-16 | Zeichnet eine Analog-Uhr mit dem angegebenen Radius an der aktuellen Position. | Nur eine (Modellzeit)-Uhr je Display wird aktualisiert. | 
-| {g#} | #=0,**1**,2 | Setzt die Display-Geometrie. 0=96x16, 1=128x32, 2=128x64 ​(1 ist Standard) | Dies dient nur zu Testzwecken. Um CPU-Last zu sparen, die Option **[[#monitor-befehle|display]]** setzen. |+| {g#} | #=0,**1**,2,3 | Setzt die Display-Geometrie. 0=96x16, 1=128x32, 2=128x64, 3=SH1106 ​(1 ist Standard) | Dies dient nur zu Testzwecken. Um CPU-Last zu sparen, die Option **[[#monitor-befehle|display]]** setzen. \\  Siehe auch **[[:arduino:wio-setup-de#display|Display Konfiguration]]** |
 | {i} | - | Invertierten Text umschalten. | | {i} | - | Invertierten Text umschalten. |
 | {s#} | #=1-x | Zeichnet Lauftext mit einer Anzeige-Breite von # Zeichen an der aktuellen Position. | Beispiel: {s12}Scrolling text to show...{s} | | {s#} | #=1-x | Zeichnet Lauftext mit einer Anzeige-Breite von # Zeichen an der aktuellen Position. | Beispiel: {s12}Scrolling text to show...{s} |
 | {d} | - | Eine Textzeile herunterscrollen. | | {d} | - | Eine Textzeile herunterscrollen. |
-| {f} | - | 7-Segment-Modellzeituhr. |+| {f#} | #=1-| 7-Segment-Modellzeituhr. | Nur eine (Modellzeit)-Uhr je Display wird aktualisiert. | 
 +| {f7} | - | Benutzerdefinierte Modellzeituhr. Benötigte Dateien: ''0.amp...9.amp'' und ''colon.amp'' | Beispieldaten: {{:arduino:f7.zip}} \\ Max. Dateigröße ist 1024 Bytes pro ''amp''. \\ ''DISPLAY_FASTCLOCK'' muss in der ''USERCNF.h'' auf ''true'' gesetzt sein. | 
 +| {f8} | - | wie {f7} aber mit führender Null. | Beispiel: 08:22 anstatt von 8:22|
 | {p} | - | Displays wechseln. | | {p} | - | Displays wechseln. |
 +| {l#,#} | - | Zeichnet eine Linie von X,Y nach #,# |
 +| {r#,#} | - | Zeichnet ein Rechteck links oben X,Y nach rechts unten #,# |
 +| {z#} | - | Zeichnet einen Kreis mit Mittelpunkt und Radius # |
 +| {x#,#} | - | Zeichnet ein Pixel an #,# |
 +| {+} | - | [[:arduino:wio-ampchar-en|Verwendet große Zeichen vom Datei-System.]] | Die Zeichen sind auf dem Datei-System im "amp"-Format. Beispiel: ''3.amp'' |
 +| {-} | - | Große Zeichen beenden. |
 +
 **Hinweis:** //Wenn die Geometrie nicht standardmäßig ist, 128x32, **MUSS** der Text mit einem {gn}-Befehl beginnen, damit die richtige Geometrie ausgewählt wird.//\\ **Hinweis:** //Wenn die Geometrie nicht standardmäßig ist, 128x32, **MUSS** der Text mit einem {gn}-Befehl beginnen, damit die richtige Geometrie ausgewählt wird.//\\
  
  \\  \\
 +
 +====7-Segment Display HT16K33 ====
 +{{ :arduino:adafruit-ht16k33.jpg?200}}
 +//Modellzeit-Uhr//\\
 +Das Adafruit-breakout-board HT16K33 wird auf I2C-Adresse 0x70 unterstützt.\\
 +Es zeigt abwechselnd Uhrzeit, Datum und Temperatur.\\
 +Mit der USERCNF.h-Einstellung ''NTP_CLOCK'' wird der ''pool.ntp.org''-Dienst verwendet, um die Tageszeit anstelle der Zeit vom Rocrail-Server zu erhalten. Dabei wird nicht zwischen Datum und Temperatur gewechselt.\\
 + \\
 +
 ====DCC-Generator==== ====DCC-Generator====
-:!: Nur auf ESP8266-Baugruppen unterstützt.\\ 
 {{ :arduino:pulseview-wio-dcc.jpg?400}} {{ :arduino:pulseview-wio-dcc.jpg?400}}
 === WIO unterstützt folgende DCC-Pakete === === WIO unterstützt folgende DCC-Pakete ===
   * Lok-Geschwindigkeit und -Fahrtrichtung. (14 Fahrstufen werden nicht unterstützt.)   * Lok-Geschwindigkeit und -Fahrtrichtung. (14 Fahrstufen werden nicht unterstützt.)
-  * Lok-Funktionen 0 - 28+  * Lok-Funktionen 0 - 32
-  * POM schreiben/lesen. (Für POM lesen wird ein RailCom-Detektor benötigt.)+  * PoM schreiben/lesen. (Für PoM lesen wird ein RailCom-Detektor, GCA214, benötigt.)
   * Zubehör   * Zubehör
   * BinState   * BinState
-  * Lok-Adressen >= 100 werden gelten als Lange Addressen.+  * Programmiergleis; Service-Modus. (Es ist eine zweite H-Brücke erforderlich: __**[[:gca:wioprog2-en|WIO-Prog2]]**__) 
 +    - Globale Gleisspannung muss EIN sein. 
 +    - PT muss auf EIN gestellt sein. 
 +    - Lesen/Schreiben CV 
 +  * Lok-Adressen >= 100 gelten als Lange Addressen.
   * Die Kurzadresse 111 wird als Dummy verwendet, um andere Decoder zu veranlassen, ihre Adresse zu senden.   * Die Kurzadresse 111 wird als Dummy verwendet, um andere Decoder zu veranlassen, ihre Adresse zu senden.
  
Line 485: Line 633:
 ^ Stift ^ Verwendung ^ Hinweis ^ ^ Stift ^ Verwendung ^ Hinweis ^
 | D6 & D7 | Symmetrisches DCC-Signal. | | D6 & D7 | Symmetrisches DCC-Signal. |
-| D5 | H-Bridge-Aktivierung | |+| D5 | H-Brücke 1 aktivieren | Betrieb | 
 +| D8 | H-Brücke 2 aktivieren Service |
  
 ===ORD3=== ===ORD3===
Line 492: Line 641:
 |< >| |< >|
 ^ Schnittstellenkennung | WIO | Bemerkung | ^ Schnittstellenkennung | WIO | Bemerkung |
-^ Bus | WIO-Kennung |+Node ID (Bus| WIO-Kennung |
 ^ Adresse | DCC-Decoder-Adresse. | Adressen > 99 werden als lange DCC-Adressen berücksichtigt. | ^ Adresse | DCC-Decoder-Adresse. | Adressen > 99 werden als lange DCC-Adressen berücksichtigt. |
 ^ Fahrstufen | 28 oder 128 | ^ Fahrstufen | 28 oder 128 |
Line 500: Line 649:
 Der Lokomotiven-__**[[:loc-int-de#bus|Bus]]**__-Wert muss auf die WIO-Kennung gesetzt sein.\\ Der Lokomotiven-__**[[:loc-int-de#bus|Bus]]**__-Wert muss auf die WIO-Kennung gesetzt sein.\\
 Die Anzahl der __**[[:loc-int-de#fahrstufen|Dekoder-Fahrstufen]]**__ muss im Bereich von 50 bis 100 eingestellt sein.\\ Die Anzahl der __**[[:loc-int-de#fahrstufen|Dekoder-Fahrstufen]]**__ muss im Bereich von 50 bis 100 eingestellt sein.\\
-===Stifte=== +===Stifte LOLIN D1=== 
-{{ :arduino:l620x.jpg?400}}+{{  arduino:lipo3s-measure-.png?240}}
 |< >| |< >|
 ^ Stift ^ Verwendung ^ H-Brücke ^ Bemerkung ^ ^ Stift ^ Verwendung ^ H-Brücke ^ Bemerkung ^
-| D0 | Licht-Funktion | | | +| D0 | Licht vorne | | Kabine 1 | 
-| D5 | Motor-PWM Enable Leitung | RC ESC((**R**emote **C**ontrol - **E**lectronic **S**peed **C**ontroller \\ = Elektronik-Fahrtregler aus dem Modellbau-Bereich)) Servo-PWM | +| D3 | Licht hinten | | Kabine 2 
-| D6 | Ausgang für Vorwärts-Richtung | IN 1 | | +| D5 | Motor-Aktivierung ENA | RC ESC((**R**emote **C**ontrol - **E**lectronic **S**peed **C**ontroller \\ = Elektronik-Fahrtregler aus dem Modellbau-Bereich)) Servo-PWM | 
-| D7 | Ausgang für Rückwärts-Richtung | IN 2 | |+| D6 | PWM für Vorwärts-Richtung | IN 1 | | 
 +| D7 | PWM für Rückwärts-Richtung | IN 2 | 
 +| D8 | Servo-PWM für Entkuppler | | F1 |
 | I2C 1-32 | Funktionen 1 bis 32 | | | | I2C 1-32 | Funktionen 1 bis 32 | | |
-Beschleunigung/Abbremsen kann mit mit dem Lok-Schnittstellen-Parameter __**[[:loc-int-de#masse|Masse]]**__ simuliert werden. (10ms Auflösung.)\\ +| A0 | Batterie-Monitor LiPo 3S | | + 100kΩ A0 32kΩ - | 
-Ein Masse-Wert von 5 erhöht/verringert die PWM alle 5 10 ms um 1 Schritt.\\+Beschleunigung/Abbremsen kann mit dem Lok-Schnittstellen-Parameter __**[[:loc-int-de#masse|Masse]]**__ simuliert werden. (10ms Auflösung.)\\ 
 +Ein Masse-Wert von 5 erhöht/verringert die PWM alle 5 10 ms um 1 Schritt.\\
 Vstart und Vhigh, CV2/CV5, können mit dem __**[[:loc-int-de#fahrstufenbereich|Fahrstufenbereich]]**__ simuliert werden.\\ Vstart und Vhigh, CV2/CV5, können mit dem __**[[:loc-int-de#fahrstufenbereich|Fahrstufenbereich]]**__ simuliert werden.\\
 ===Electronic Speed Controller=== ===Electronic Speed Controller===
 Ein **E**lectronic **S**peed **C**ontroller, ESC, an Stift D5 kann auch zur Steuerung des Motors verwendet werden, wenn diese Option auf Eins gesetzt ist.\\ Ein **E**lectronic **S**peed **C**ontroller, ESC, an Stift D5 kann auch zur Steuerung des Motors verwendet werden, wenn diese Option auf Eins gesetzt ist.\\
 Hinweis: __**Nur Masse und PWM anschliessen, falls der ESC einen [[https://de.wikipedia.org/wiki/Battery_Eliminator_Circuit|Battery Eliminator Circuit]] unterstützt.**__\\ Hinweis: __**Nur Masse und PWM anschliessen, falls der ESC einen [[https://de.wikipedia.org/wiki/Battery_Eliminator_Circuit|Battery Eliminator Circuit]] unterstützt.**__\\
- 
-====ID-12LA==== 
-{{ :arduino:rfid-card-antenna.jpg?200}}{{ http://id-innovations.com/httpdocs/assets/immage/id12new.jpg}} 
-Optional kann ein RFID-Leser vom Typ [[http://id-innovations.com|ID-12LA]] an den RX-Stift angeschlossen werden, der Tags erkennen kann, die an Rocrail gemeldet werden.\\ 
-Der Tag wird als **[[:sensor-gen-de#kennung|Rückmelder-Kennung]]** verwendet, **[[:can-gc4-de#rfid-schreibweise|dezimal punkt-formatiert]]**.\\ 
-Die **[[:gca_rfid-de|GCA-RFID-Platine]]** kann für Montage und Anschluss des ID-12LA verwendet werden.\\ 
-__Der serielle Monitor wird auf 9600 Bit/s gesetzt.__\\ 
-**Hinweis:** Dies ist für das Scannen von Tags zwischen den Schienen, um Rocrail wissen zu lassen, wo das fahrende Fahrzeug ist.\\ 
  
  \\  \\
Line 528: Line 672:
 {{ :arduino:railcom_cutout.jpg?400}} {{ :arduino:railcom_cutout.jpg?400}}
 Der serielle Anschluss auf der WIO-Platine kann verwendet werden, um einen Verstärkers für das Lesen von RailCom-Daten anzuschliessen.\\ Der serielle Anschluss auf der WIO-Platine kann verwendet werden, um einen Verstärkers für das Lesen von RailCom-Daten anzuschliessen.\\
-Z.Zt. gibt es keine solche Baugruppe in der GCA-Linie. Für Tests kann **[[:GCA204-de|GCA204]]** als Verstärker verwendet werden.\\+Der **[[:GCA214-de|GCA214]]** kann als Verstärker verwendet werden.\\
 Folgende RailCom-Kennungen werden unterstützt:\\ Folgende RailCom-Kennungen werden unterstützt:\\
 |< >| |< >|
Line 538: Line 682:
 Die serielle Geschwindigkeit wird auf 250000 bit/s gesetzt und der Monitor kann nur lesen. __Daher ist es bei aktivieren dieser Option nicht möglich, WIO mit Monitor-Befehlen einzustellen.__\\ Die serielle Geschwindigkeit wird auf 250000 bit/s gesetzt und der Monitor kann nur lesen. __Daher ist es bei aktivieren dieser Option nicht möglich, WIO mit Monitor-Befehlen einzustellen.__\\
  \\  \\
-====Sensor==== +====Sensoren==== 
-{{ :arduino:bmp280.jpg?200}} +{{ :arduino:bmp280.jpg?140}}{{ :arduino:tsl2591.jpg?140}} 
-Ein an I2C angeschlossener BMx280-Sensor wird für Temperatur, Luftdruck und Feuchtigkeit unterstützt.\\+Ein an I2C angeschlossener BME280/BMP280-Sensor wird für Temperatur, Luftdruck und Feuchtigkeit unterstützt.\\
 Für korrekte Druckwerte muss die USER_ALTITUDE in der USERCNF.h auf die lokale Höhe eingestellt werden.\\ Für korrekte Druckwerte muss die USER_ALTITUDE in der USERCNF.h auf die lokale Höhe eingestellt werden.\\
 +Ein an I2C angeschlossener TSL2591 'Light-to-Digital Converter' (Digitaler Lichtsensor) wird zur Berechnung der Helligkeit unterstützt.\\
 +
 ===Dynamischer Text=== ===Dynamischer Text===
 Temperatur, Luftdruck und Feuchtigkeit können als Text in XMLScript-Variablen verwendet werden.\\ Temperatur, Luftdruck und Feuchtigkeit können als Text in XMLScript-Variablen verwendet werden.\\
Line 549: Line 695:
 ====Sound==== ====Sound====
 Sound kann auf ESP32-Baugruppen durch Verwenden eines der DAC((**D**igital-**A**nalog-**C**onverter))-Stifte (GPIO25 oder GPIO26) abgespielt werden.\\ Sound kann auf ESP32-Baugruppen durch Verwenden eines der DAC((**D**igital-**A**nalog-**C**onverter))-Stifte (GPIO25 oder GPIO26) abgespielt werden.\\
 +Der ''USER_SOUND'' in der ''USERCNF.h'' muss auf ''true'' gestellt sein:
 +<code>
 +// Sound
 +#define USER_SOUND          true
 +</code>
 +
 Unterstütztes [[https://de.wikipedia.org/wiki/RIFF_WAVE|RIFF-Wave]]-Format: Unterstütztes [[https://de.wikipedia.org/wiki/RIFF_WAVE|RIFF-Wave]]-Format:
   * PCM-Typ   * PCM-Typ
Line 567: Line 719:
 Um das beste Ergebnis zu erhalten: Um das beste Ergebnis zu erhalten:
   * Die Sound-Dateien normalisieren, so daß die vollen 16 Bit verwendet werden.   * Die Sound-Dateien normalisieren, so daß die vollen 16 Bit verwendet werden.
 + \\
 +
 +====Schritt-Motor====
 +Der WIO-02 unerstützt zwei Typen von Schritt-Motoren: 4-Darht- und 3-Draht-Stepp-Treiber.\\
 +{{ :arduino:stepmotor-4wire.jpg?0x200}}{{ :arduino:stepmotor-3wire.jpg?0x200}}
 +|< >|
 +^ WIO-02 ^ 4-Draht ^ 3-Draht ^ Hinweis ^
 +| 32 | IN1 | CLK+ |
 +| 13 | IN2 | DIR+ |
 +| 2 | IN3 | ENABLE+ |
 +| 15 | IN4 | - |
 +| 25     | -   | | Hall/Reed-Kalibrier-Sensor | 
 +| EP1-1   | GND | CLK-,DIR-,ENABLE- |
 +| -       | VCC | 12 - 45V DC | Externe Stromversorgung |
 +
 +===Drehscheiben-Einstellung===
 +|< >|
 +|  Drehscheibe Schnittstelle  ||
 +^ Feld ^ Wert ^ Hinweis ^
 +| Knoten-ID | WIO-02 ID | |
 +| Adresse | 1 | //fest// |
 +| Beleuchtungen  | 1...32 | Optionale Beleuchtung der Brücken-Kabine. \\ Digitaler Ausgangs-Port auf demselben WIO-02. |
 +| Fahrstufen | 0-16777215 | Anzahl der Schritte für eine 360°-Drehung. \\ Im Fall eines 28BYJ-48: 4096 Schritte. |
 +| Korrektur | 0-255 | Zum Ausgleich des Getriebespiels. |
 +| Schrittverzögerung | 1-10 | Größe der Start- und Verzögerungsrampe |
 +| Offset | -32767...+32767 | Kalibrierungs-Korrektur in Schritten. |
 +| Typ | wio |
 +| Drehgeschwindigkeit | 0-100% |
 +//Die Anzahl der Schritte für eine Drehscheiben-Drehung wird zur Berechnung des kurzen Weges benötigt.//\\
 + \\
 +|< >|
 +|  Drehscheibe Gleise \\ (Beispiel 4096 Schritte)  ||
 +^  Gleis  ^  Dekoder-Gleis  ^
 +|  0  |  0  |
 +|  12  |  1024  |
 +|  24  |  2048  |
 +|  36  |  3072  |
 +
 +XML-Beispiel: (Nur unbedingt notwendige Angaben sind gelistet.)
 +<code xml>
 +  <tt ori="west" id="tt1" x="11" y="4" z="0" pos="0" iid="RCAN-1" bus="102" addr="1" type="wio" decsteps="4096">
 +    <track nr="0" decnr="0"/>
 +    <track nr="12" decnr="1024"/>
 +    <track nr="24" decnr="2048"/>
 +    <track nr="36" decnr="3072"/>
 +  </tt>
 +</code>
 +
 +
 + \\
 +====CAN====
 +{{ :arduino:gc2a-wio-can.jpg?400}}
 +Der WIO-CAN-Typ kann als CAN-WiFi-Brücke verwendet werden für: 
 +  * [[:mbus:cs3-de#kommunikations-typ|MBUS, Typ TCP an Port 5550]]
 +  * RCAN, Type TCP+Binary an Port 5550.\\
 +====MCP2515====
 +Stift-Zuordnung für das Verwenden des SPI MCP2515(16MHz) am __**[[:can-gca2a-de|GC2a]]**__:
 +|< >|
 +^ Name ^ Nano ^ Lolin D1 Mini ^ Lolin D32 ^ Hinweis ^
 +| GND | GND | GND | GND | Ground |
 +| 5V | 5V | 5V | 5V(USB) | |
 +| CS | D10 | D3 | GPIO14 | Chip Select |
 +| MOSI | D11 | D7 | GPIO23(MOSI) | Master Output, Slave Input |
 +| MISO | D12 | D6 | GPIO19(MISO) | Master Input, Slave Output |
 +| SCK | D13 | D5 | GPIO18(SCK) | Serial Clock |
 +
 +Der Lolin D1 Mini muss an 5V-USB ohne Stromversorgung vom CAN-Bus angeschlossen sein.\\
 +Es wird ein WIO-CAN-Bausatz verfügbar sein.\\
 +
 +====ESP32====
 +Die aktuelle WIO-Firmware, 1.94, verwendet den internen CAN-Controller und nutzt dafür nur den MCP2551/2561. (SPI CAN wird für MCP2515 nicht mehr unterstützt.)\\
 +Im Fall von ESP32 wird die CAN-Kommunikation immer aktiviert, unabhängig, welcher WIO-Typ ausgewählt ist.\\
 +|< >|
 +^ Anschluss ^ ESP32 Stift ^ MCP2561 ^
 +| TXCAN  |  16 |  1 |
 +| RXCAN  |   4 |  4 |
 +
 + \\
  \\  \\
 =====Mobil ​RFID-Leser===== =====Mobil ​RFID-Leser=====
Line 575: Line 805:
 <code>Loco [ICE-CAM] reports RFID event 56:101 [4.102.181.114.9.64.128] ON</code> <code>Loco [ICE-CAM] reports RFID event 56:101 [4.102.181.114.9.64.128] ON</code>
 Die gemeldete RFID muss zu einer __**[[:sensor-gen-de#kennung|Rückmelder-Kennung]]**__ in Rocrail passen.\\ Die gemeldete RFID muss zu einer __**[[:sensor-gen-de#kennung|Rückmelder-Kennung]]**__ in Rocrail passen.\\
-Die Adresse dieses Rückmelder muss auf Null eingestellt sein.\\+Der Rückmelder muss in Rocrail eine eindeutige Adresse ungleich Null haben.\\
 Die Kennung muss in dieser __**[[:can-gc4-de#rfid-schreibweise|RFID-Schreibweise]]**__ eingestellt sein.\\ Die Kennung muss in dieser __**[[:can-gc4-de#rfid-schreibweise|RFID-Schreibweise]]**__ eingestellt sein.\\
 Für das Kopieren dieser Kennung können die Rocrail-Traces oder der __**[[:sensormon-de|Rückmelder-Monitor]]**__ verwendet werden. Für das Kopieren dieser Kennung können die Rocrail-Traces oder der __**[[:sensormon-de|Rückmelder-Monitor]]**__ verwendet werden.
Line 595: Line 825:
 \\ \\
 ===== Fehlersuche ===== ===== Fehlersuche =====
 +|< >|
 +|  Oberseite  ||  Unterseite  ||
 +|  LOLIN D1 mini  |  Wemos mini  |  LOLIN D1 mini  |  Wemos mini  |
 +| {{:arduino:d1-top.jpg?0x300}} || {{:arduino:d1-bottom.jpg?0x300}} ||
 +
 +|< >|
 +^ Stift ^ Lolin ^ Wemos ^
 +|  D3  |  -  | Wird nicht starten, falls "Low". |
 +
 +==== Sehr langsam ====
 +Wenn I2C-Module wie Pi02 oder Pi03 an den I2C-Bus des WIO angeschlossen sind und keine Stromversorgung haben, verlangsamt dies die Verarbeitung und es werden keine anderen I2C-Geräte erkannt. (Mehrere Sekunden zwischen den Aufruf-Wiederholungen.) \\
 +Der I2C-Bus-Extender P82B715 scheint die I2C-Takt- und Datenleitungen zu belasten, was die Interrupt-Routine in der Wire-(I2C)-Bibliothek irritiert. \\
 +Der Pi08 hat mit dem PCA9622-Chip und dessen internem I2C-Bus-Extender dieses Problem nicht. \\
 +=== Lösung ===
 +Sicherstellen, dass zeitgleich mit dem WIO auch alle angeschlossenen I2C-Module eingeschaltet sind. \\
 +
 +====macOS "Big Sur"====
 +===Upload tool ESP8266===
 +  * https://forum.arduino.cc/index.php?topic=702144.0
 +
 +===Upload tool ESP32===
 +  * https://github.com/espressif/esptool/issues/540
 +
 +
 +
 +=====Programmieren WIO-Binary mit Arduino IDE-Tools=====
 +|< >|
 +|  Arduino IDE 1.8.16  |
 +
 +====macOS "Big Sur"====
 +===ESP8266===
 +<code>
 +export WIOBIN=~/Downloads/WIO.ino.d1_mini.bin
 +
 +/Users/$USER/Library/Arduino15/packages/esp8266/tools/python3/3.7.2-post1/python3 \
 +/Users/$USER/Library/Arduino15/packages/esp8266/hardware/esp8266/3.0.1/tools/upload.py \
 +--chip esp8266 --port /dev/cu.usbserial-110 --baud 921600 --before default_reset --after hard_reset write_flash 0x0 $WIOBIN
 +</code>
 +===ESP32===
 +<code>
 +~/Library/Arduino15/packages/esp32/tools/esptool_py/3.1.0/esptool \
 +--chip esp32 \
 +--port /dev/cu.usbserial-01B9FA0C \
 +--baud 921600 \
 +--before default_reset \
 +--after hard_reset write_flash \
 +-z \
 +--flash_mode dio \
 +--flash_freq 80m \
 +--flash_size 4MB \
 +0x10000 WIO.ino.d1_mini32.bin
 +</code>
 +
 +
 +
 +====Windows 10====
 +<code>
 +set WIOBIN=\Users\%USERNAME%\Downloads\WIO.ino.d1_mini.bin
 +
 +C:\Users\%USERNAME%\AppData\Local\Arduino15\packages\esp8266\tools\python3\3.7.2-post1/python3 -I C:\Users\%USERNAME%\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2/tools/upload.py --chip esp8266 --port COM3 --baud 921600 --before default_reset --after hard_reset write_flash 0x0 %WIOBIN%
 +</code>
 +
 +====PiOS-64 "Buster"====
 +<code>
 +export WIOBIN=/home/$USER/Downloads/WIO.ino.d1_mini.bin
 +
 +/home/$USER/.arduino15/packages/esp8266/tools/python3/3.7.2-post1/python3 -I /home/$USER/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/upload.py --chip esp8266 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash 0x0 $WIOBIN 
 +</code>
 +
 +
 +
  
arduino/wio-de.1581123250.txt.gz · Last modified: 2020/02/08 01:54 by rainerk