Software-Download

Historie der verschiedenen RadioShuttle-Softwareversionen. Für den Download wird ein achtstelliger Code benötigt, welcher auf der Rückseite des LongRa-Boards steht:

Verfügbare RadioShuttle-Versionen

Version 3.7 (19. Juli 2019)

  • „ECO Power“ WatchDog Reset Support
    Die neue WatchDog-Funktion startet den ESP32 automatisch neu, sollte das ESP32-Programm klemmen und nicht mehr regelmäßig die Funktion sleep() aufrufen. Durch die automatische WatchDog-Funktion wird die Verfügbarkeit wesentlich erhöht.
    In „RTCInit.cpp“ wird der WatchDog automatisch aktiviert (standardmäßig auf 120 Sekunden eingestellt) und kann den Bedürfnissen angepasst werden
  • LongRa D21 Hänger in deepsleep() behoben
    Es gab Situationen, in denen deepsleep() hin und wieder klemmte und ein WatchDog die D21 MCU neu gestartet hat. Inzwischen sind wir zu dem Schluss gekommen, dass dies mit zwei AtmelD21 Hardware Bugs zu tun hat. In der Software sind nun Workarounds integriert, welche die Probleme lösen
  • Unterstützung von weiteren Properties in „RadioTest.ino“
    Folgende Properties werden jetzt zusätzlich automatisch verwendet, falls vorhanden: LORA_FREQUENCY, LORA_BANDWIDTH, LORA_SPREADING_FACTOR, LORA_TXPOWER, LORA_FREQUENCY_OFFSET, LORA_APP_PWD

Hinweis:
Bereits existierende Programme müssen auf die neuesten Versionen der Dateien „PinMap.h“ and „RTCUtil.cpp“ aktualisiert werden, andernfalls funktionieren sie nicht.

Version 3.5 (10. Mai 2019)

  • „ECO Power“ RTC-Uhrzeiten basieren jetzt auf der UTC-Zeit
  • Automatische Unterstützung von Zeitzonen und Sommer-/Winterzeit
  • Neue Properties: NET_NTP_GMTOFFSET, NET_NTP_DAYLIGHTOFFSET, NET_NTP_SERVER, NET_NTP_SERVER_ALT
  • Unterstützung der Uhrzeitaktualisierung per NTP für den ESP32, siehe „NTPUpdate.h“, „NTPUpdate.cpp“
  • Vorhandener DS3231 RTC wird per NTP aktualisiert
  • NTP-Uhrzeitaktualisierung in den Beispielen „ESP32MQTTClient“ und „ESP32MQTTAlarmSystem“
  • Update: Unterstützung für OLED SSD1306 (Bugfixes)
  • Sensortreiber für Adafruit_Si7021 aktualisiert, damit dieser auch mit neueren ESP32 SDKs funktioniert
  • RadioShuttle unterstützt Heltec ESP32 LoRa-Boards (Lizenz muss erworben werden, 25,- € ). Dies gilt für die Versionen: Heltec ESP32 LoRa Kit v1, v2 und ESP32 LoRa-Stick
  • RadioShuttle-Unterstützung für das bald erhältliche Turtle-Board (Mbed OS)
  • Kleinere Bugfixes und Verbesserungen

Version 3.3 (8. März 2019)

  • Ein Problem beim Senden von Nachrichten vom Server an den Node wurde behoben (falsche bzw. zu geringe Sendeleistung)
  • Ein Problem bei reduzierter Sendeleistung wurde behoben (ggf. wurde mit 14 dBm gesendet, obwohl ein geringerer Wert eingestellt war)
  • Compilerfehler im Beispiel „BlinkyEnhanced_C_Plus_Plus“ behoben
  • Verbesserter „NVProperty“ (Permanentspeicher)
  • Neues Beispiel „RadioContinuesTX“ hinzugefügt, welches zum Abstimmen von Antennen permanent ein FM-Signal sendet

Version 3.1 (1. November 2018)

  • Unterstützung des D21-Permanentspeichers (Properties). Am Ende des D21-Flashspeichers werden 16 kB (änderbar) für Einstellungen reserviert. Somit darf der Sketch nicht größer als 232 kB werden; 8 k Bootloader und 16 k Propertyspeicher sind belegt
  • Neues Arduino D21 „bossac“ USB-Flash-Utility, welches den D21-Flashspeicher nicht vollständig sondern nur im erforderlichen Programmbereich löscht. Details dazu in der Dokumentation für das LongRa-Board
  • Verbesserte Beispielanwendung „PropertyEditor“ (in „Examples->Arduino-mbed-APIs“)
  • Aktualisierung aller Beispiele, Einstellungen werden nun automatisch über die Funktion „GetProperties“ geladen
  • AES-Passwörter funktionieren jetzt auch per Property-Einstellung

Version 3.0 (1. Oktober 2018)

  • Unterstützung für das neueste ESP32 Arduino-SDK (funktioniert auch mit älteren ESP32 SDKs)
  • Unterstützung für RTC ds3231 I2C
  • Unterstützung für Si7021 Sensor I2C
  • Überarbeiteter „PropertyEditor“, mit dem sich nun auch der Radio Type setzen lässt, z. B. RS_Node_Offline
  • Neu für D21: Permanente Flash-Properties für das LongRa-Board hinzugefügt
    • Standardmäßig werden die letzten 16 kB des D21 für Properties verwendet
    • Die Datei „NVProperty.h“ enthält Details zu „propSizekB“
    • Vergewissern Sie sich, dass „–lock=15“ in der Datei „platforms.txt“ enthalten ist (siehe RadioShuttle Sketch Installation für LongRa)
    • Anwender von LongRa-Boards müssen einmalig die Node- und Code-ID über den „PropertyEditor“ eingeben (LORA_DEVICE_ID, LORA_CODE_ID)
  • Neues vereinfachtes RadioTest-Beispielprogramm nutzt alle Parameter über Properties
    • Vergewissern Sie sich, dass mindestens folgende Properties gesetzt sind:
      • LORA_DEVICE_ID (für „ECO Power“-Boards bereits voreingestellt)
      • LORA_CODE_ID (für „ECO Power“-Boards bereits voreingestellt)
      • LORA_RADIO_TYPE (1 für RS_Node_Offline, 3 für RS_Node_Online, 4 für RS_Station_Basic)
  • Unterstützung für die neuen LongRa-Boards (Rev. 7.5 verfügt über deutlich mehr Pins zur freien Nutzung und beinhaltet eine bereits vorkonfigurierte Funktion zum Auslesen der aktuellen Batteriespannung). Aktivieren Sie in der neuen Datei „PinMap.h“ das aktuelle Board: D21_LONGRA_REV_750

Die Verwendung von Einstellungen über Properties für die RadioShuttle-Anwendungen bringt große Vorteile. Properties ermöglichen es, Einstellungen pro Board einmalig zu definieren und identische Sketches auf alle Boards hochzuladen, da die benutzerdefinierten Einstellungen automatisch aus dem Permanentspeicher übernommen werden. Mit dieser Version werden die Properties vollständig vom „ESP32 ECO Power“- und dem D21 LongRa-Board unterstützt.

Version 2.6 (1. Juli 2018)

  • Universalversion, vereinheitlichte Version für ESP32 „ECO Power“- und D21 LongRa-Boards
  • Neue Beispiele vom einfachen „Blinky“ per Timer-Testprogramm bis hin zum RadioShuttle MQTT-Gateway (mittlerweile 17 Beispiele)
  • Fehlerkorrekturen (reproduzierbare Probleme wurden gefixt)
  • Neue Funktion „InitLoRaChipWithShutdown“ deaktiviert den LoRa-Chip, um Programme auf dem LongRa- oder „ECO Power“-Board im stromsparenden Betrieb zu verwenden
  • Vorbereitung zur Batteriemessung der LongRa-Boards (eine Tech Info mit Details zum Umbau von zwei Widerständen kommt getrennt)
  • Support für das aktualisierte LongRa-Board (Version 7.4)
  • „SendMsg()“ hat zusätzliche Flags bekommen:
    • „CF_CopyData“ kopiert die Daten in interne Netzwerkbuffer statt sie zu referenzieren
    • „CF_FreeData“ markiert die Sendedaten, sodass diese nach dem Senden freigegeben werden (per C++ „delete[ ]“)
  • Wichtiger Hinweis: Bei „InitSerial()“ muss in jedem vorhandenen Programm „intr.read())“ durch „! intr.read())“ ersetzt werden
  • Software-Unterstützung zum Entprellen von Tastern. Die Klasse „InterruptIn“ kann per „debounce()“ für die automatische Entprellung aktiviert werden. Die Vorgabe beträgt, sofern keine Parameter angegeben sind, 300 ms
  • Viele Detailverbesserungen der ESP32-Unterstützung
  • Potenzielle Abstürze in der ESP32 RadioShuttle Debug-Ausgabe wurden behoben. In Interrupt-Routinen darf beim ESP32 nichts ausgegeben werden
  • Neue Funktion „pause(millis)“ aktiviert den ESP32 „lightsleep“-Modus und legt sich schlafen. Während der Pause passiert nichts, danach geht es einfach weiter
  • Timer-Klasse erlaubt nun auch „read_ns()“ um die abgelaufene Zeit in Nanosekunden zu erhalten

Version 2.0 (11. Mai 2018)

  • ESP32 ECO Power support

Version 1.8 (24. Januar 2018)

  • Neu: Hardware-Reset per „WatchDog“ wenn sleep() oder deepsleep() nicht innerhalb von 30 Sekunden aufgerufen wird. Siehe InitWatchDog() im RadioTest-Beispiel (Datei: „RTCUtil.cpp“)
  • Neue Ausgabefunktion rprintf(), wie dprintf(), allerdings ohne Zeitstempel in der Ausgabe

Version 1.6 (18. Dezember 2017)

  • Einfache Versionsnummer eingeführt:1.6 (1.4 und 1.5 wurden nur intern verwendet)
  • RTC-Clock basiert jetzt auf der Arduino Compile-Zeit
  • Die Uhrzeit von „dprintf“ wird mit der RTC-Zeit initialisiert
  • Die Arduino Map-Funktion braucht jetzt nicht mehr in den Quellen „WMath.h/WMath.cpp“ geändert zu werden
  • Bessere Dokumentation für „InitSerial()“, der LED-Parameter kann NULL sein
  • RTC-Clock wird immer gesetzt, wenn die Compile-Zeit neuer als die RTC-Zeit ist

Version 1.3 (14. November 2017)

  • SX1276-Treiber und RadioShuttle-Protokoll lassen sich jetzt entladen
  • Tasterentprellung
  • „SerialUSB“ kann jetzt forciert aktiviert werden, wenn Taster „A“ während des Einschaltens oder beim Reset gedrückt wird
  • Timer-Probleme und andere Hänger behoben. Diese führten dazu, dass die Taster nicht mehr funktionierten
  • Negative Zeitstempel in der „dprintf“-Ausgabe behoben
  • Der Datei „PinMap.h“ wurden komplette Pin-Benennungen für das LongRa-Board hinzugefügt
  • Stromversorgung für das Display des LongRa-Boards standardmäßig deaktiviert
  • Support für das „Adafruit Feather M0 LoRa 868 MHz“-Board. Dieses Board wird zukünftig unterstützt (Lizenzgebühr: 25,- €)
  • DIO0-Pins können jetzt für die CAD-Erkennung (Channel Activity Detection) genutzt werden. Das bedeutet, dass lediglich DIO0 für den LoRa-Betrieb mit RadioShuttle erforderlich ist, wenn ausschließlich LoRa genutzt wird. DIO1-, DIO2- ,DIO3- sowie DIO4-Pins werden zukünftig nicht mehr benötigt

Version 1.2 (28. September 2017)

  • RadioTest: Unterstützung für Taster zum sofortigen Aufwachen aus dem Tiefschlaf (deep sleep) hinzugefügt
  • RadioTest: Einfaches Umschalten, um RadioShuttle::Node_Offline mit Tiefschlaf nutzen zu können
  • Berechnung des Frequenzoffsets bei negativen Zahlen korrigiert
  • Unterstützung für die Anpassung des Frequenzoffsets wurde hinzugefügt, um die Anpassung aller Geräte an einen TCXO-Takt oder einen anderen Mastertakt zu ermöglichen
  • USB-Erkennungstimeout „SerialMonitor“ von 3 auf 5 Sekunden geändert (Timeout von 0 in „InitSerial“ bedeutet, dass USB immer eingeschaltet ist)
  • Neue Initialisierung der RTC-Uhr und Zeitanzeige während des Starts
  • „UpdateRadioProfile“ kann jederzeit über die neue Funktion „UpdateRadioProfile“ aktualisiert werden, erlaubt die Änderung von Radiofrequenz, Spreadingfactor, etc. während des Betriebs
  • Funktion „StrError“ hinzugefügt, die RadioShuttle-Fehlercodes in Strings umwandelt
  • Klartext-Fehlermeldungen für die RadioTest-Beispiele hinzugefügt
  • RadioStatus: TXStart-Callback beinhaltet die verwendete Sendeleistung in dBm
  • RadioTest: Anzeige von Frequenz und Spreadingfaktor beim Start
  • RadioTest: Unterstützung für die Entprellung von Tastschaltern hinzugefügt
  • Funktion „DeInitRadio“ hinzugefügt, um das RadioShuttle-Protokoll und die Treiber zu entladen und Speicherressourcen freizugeben
  • RadioTest: RadioShuttle-InitCode vom Setup in die Funktion „InitRadio“ verschoben
  • Funktion „UpdateNodeStartup“ hinzugefügt, mit der von RadioShuttle::Node_Online auf RadioShuttle::Node_Offline oder umgekehrt umgeschaltet werden kann. Dies ermöglicht Energieeinsparungen für RadioShuttle::Node_Online-Knoten

Version 1.0 Maker Faire Hannover (24. August 2017)

  • Unterstützt LongRa-Arduino-Boards (Rev. 6.0-7.2)
  • Stromsparmodus (sleep) auch bei USB und „Serial Monitor“-Aktivität
  • Erweiterter Stromsparmodus (deepsleep) ohne USB, Vorausgesetzt ist der Betrieb als Knoten: RadioShuttle::RS_Node_Offline
  • Umweltsensor-App ist enthalten. (Feinstaubsensor Nova PM Sensor SDS011)
    Beispiel: PMSensorRadio
  • RadioTest-App (»Nachricht Ping«) ist enthalten. RadioShuttle-Testanwendung erlaubt den Austausch einfacher Nachrichten
    Beispiel: RadioTest

Zum Download