Software-Download

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

Verfügbare RadioShuttle-Versionen

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

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.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 Property Editor, 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 Property Editor 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 dier 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

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

Using property settings for the RadioShuttle applications brings major benefits. Properties allow defining settings per board once and uploading identical sketches on all boards because the custom settings will automatically be used from from the property store. With this release the properties are fully supported by the ESP32 ECO Power and the D21 LongRa boards.

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 Property Store ü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. Jan 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. Dez 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 initzalisiert.
  • 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. Nov 2017)

  • SX1276-Treiber und RadioShuttle-Protokoll lassen sich jetzt entladen
  • Tastenentprellung
  • „SerialUSB“ kann jetzt forciert aktiviert werden, wenn die Taste A während des Einschaltens oder beim Reset gedrückt wird
  • Timer-Probleme und andere Hänger behoben. Diese führten dazu, dass die Tasten 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. Sep 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. Aug 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