Projekt Gfrör.li - Protokoll

Hier sind die Zusammenfassungen zu den Sitzungen zum Wassertemperatur-Sensor
Projekt.

2016-01-26

Ziele

  • Temperatur messen wie sie für ein Schwimmer relevant ist.
  • Einfache, unabhängige Sensoren

Challenges

  • Wassertiefe konstant halten
  • Legal issues?
  • Energiebedarf
  • Batterielanglebigkeit
  • Wasserdichtigkeit
  • Resistenz gegen UV, Wasser, Temperature, Mechanisch/Physisch
  • 2G wird 2020 abgestellt
  • Kunden

Wassertiefe

  • Einmachglas mit Gewicht und Anker
    • Nachteile
      • Nicht sehr tief
    • Vorteile
      • KISS
      • Isoliert

Energiebedarf / Batterielanglebigkeit

  • Batteriespannung reporten
  • Push-Modus: Sensor sendet nur wenn er vom Timer geweckt wird und schaltet
    sich danach wieder ab.
  • Je nach Wetter kann es sein, dass 2 Wochen kein helles Licht da ist

Kunden

  • Strandbäder
  • Ruderclubs
  • Schwimmschulen (SLRG)
  • Städte
  • Seebewohner
  • Crowd-Funding WeMakeIt

Next Steps

  • Marktstudie: @dbrgn bereitet ein Whitepaper vor und sendet es an:
    • HSR
    • Stadt Rapperswil (Seebadi)
    • KCRJ / RCRJ (Kanu- und Ruder-Club)
  • Power-Consumption messen
    • Grösse des Solarpanel
    • Machbarkeit
    • Die Electron boards werden mitte Februar eintreffen
  • @rnestlr and @dbrgn schauen sich embedded software an
  • Architektur definieren
  • Datenbank anlegen
    • Datamodel Schema definieren
      • Temperature
      • Additonal data als JSON
    • APIs defninieren

2016-02-16

Neues

  • Die Electron boards werden nächste oder übernächste Woche eintreffen
  • Axel hat mit Gewichten experimentiert:

Marktstudie

Im Osten nichts Neues.

Power Consumption

Fehler durch Erwärmung

Die meiste Zeit ist die CPU im sleep und die Eigenerwärmung ist ~0. Nach dem
Aufwachen wird sofort gemessen.

Der Stromverbrauch im sleep ist 130μA.

Erwärmung durch die Sonne ist ein grösseres Problem.

Architektur

Im Westen nichts Neues.

Next Steps

  • Warten bis das Electron ankommt
  • Marktstudie: @dbrgn bereitet ein Whitepaper vor und sendet es an:
    • HSR
    • Stadt Rapperswil (Seebadi)
    • KCRJ / RCRJ (Kanu- und Ruder-Club)
1 „Gefällt mir“

2016-03-01

Neues

  • Die Electron boards sind eingetroffen :slight_smile:
  • @danilo hat einen ersten Entwurf des Whitepapers erstellt
  • @raphi hat Sensirion kontaktiert um eine mögliche Zusammenarbeit zu evaluieren
  • @axel hat weiter experimentiert mit Gewichten und Gläseren

Whitepaper

  • Momentan eine A4-Seite, nur Text
  • “Management Summary” einfügen
  • Auf 2 Seiten erweitern und Bilder hinzufügen

Power Consumption

  • Das Electron benötigt ca. 2-3min um per 2G zu connecten -> Hoher Stromverbrauch

Ideen

  • Glas nicht mit Deckel unten sondern leicht seitlich liegend verwenden. So
    könnten man den Linseneffekt der Glaswölbung nuzen. Es führt aber zu einigen
    Nachteilen (z.B. ist der Sensor weniger tief)
  • Sugru als Dichtmaterial verwenden um den Sensor extern
    zu haben.

Next Steps

  • Whitepaper verbessern
  • Zusammenarbeit mit Sensirion weiterverfolgen
  • Power-Consumption vom Electron ausmessen
1 „Gefällt mir“

2016-03-29

Neues

  • @raphi Sensirion hat sich bereit erklärt Sensoren zur Verfügung zu stellen

Sensoren

  • Mehrere Sensoren um das thermische Verhalten des PCB’s zu bestimmen
  • Feuchtigkeit auch messen um Dichte des Gehäuses zu überprüfen

Platzierung

  • Via Flex auf den Deckel kleben
    • Gute thermische Kopplung ans Wasser
    • Gute thermische Entkopplung vom PCB
    • Flex mit Stecker benötigt
  • Auf dem PCB löten
    • Simpel
    • Schlechtere thermische Kopplung ans Wasser
    • Schlechte thermische Entkopplung vom PCB

Whitepaper

  • Nichts neues

Power Consumption

  • Brauchen wir überhaupt Solarzellen?

    • Mehr Platz -> grösserer Akku
    • Kunde kann das Device auch im Schatten (z.B. unter einem Steg) montieren
    • Weniger Komplexität
  • Verbrauch:

    • 1A * 30s pro Connection
    • 24 Connections pro Tag
    • Akku mit 2400mAH
    • 2400mAh / (1A * 30s * 24) = 12 Tage
    • bei 6h Sonne am Tag brauchen wir 400mA

“Cloud”

  • CRUD API steht
  • Nächste Schritte:
    • Authentisierung implementieren
    • particle cloud integrieren

Ideen

Next Steps

  • @danilo: Sucht und Findet unseren Electron Prototypen wieder xD
  • @danilo: Whitepaper verbessern und versenden
  • @raphi Sensoren zum Experimentieren von Sensirion besorgen: SHT31 und STS31
  • Power-Consumption vom Electron ausmessen

2016-04-12

Neues

  • @raphi Hat SHT21 PCB’s, SHTC1 FLEX und SHT31 Sensoren mitgebracht :smiley:
  • @danilo Whitepaper an HSR und Ruderklub geschickt
  • @axel Halterung gedruckt
  • @schmijos hat an serverkomponente gearbeitet

Firmware

  • I2C proof of concept implementiert -> Funktioniert :slight_smile:

Next Steps

  • @raphi Sensoren auf FLEX und PCB’s besorgen: SHT31 und STS31
  • Power-Consumption vom Electron ausmessen
  • @danilo / @raphi Firmware entwickeln welche Sensor ausliest und Event sendet
1 „Gefällt mir“

2016-04-26

Anwesend

@raphi und @danilo

Neues

  • @danilo hat Antwort von der HSR mit Rückfragen gekriegt. Sie übernehmen ev. 1-3 Sensoren.
  • Antwort von Ruderklub steht aus.

Firmware

  • Firmware mit Cloud-Support und dem SHT21-Sensor implementiert -> Funktioniert :slight_smile:
  • Läuft nun testweise im Coredump, 1 Messung pro Stunde.

Next Steps

  • @raphi Möglichkeit finden um Langzeit-Stromverbrauch des Electrons zu messen. Vorschlag: Mit jeder Messung noch den Akkustand mitsenden.
  • @schmijos versucht die Events in seinen Code einzubauen.

2016-05-10

Anwesend

@raphi, @danilo, @axel

Neues

  • @axel hat einen Testmechanismus 3D-gedruckt um die Sonneneinstrahlung zu messen und damit die Ausbeute des Solarpanels zu schätzen.
  • Antwort von Ruderklub steht immer noch aus.

Firmware

  • Angepasst, so dass sie Batteriestand loggt.

Next Steps

  • @schmijos versucht die Events in seinen Code einzubauen.
  • @danilo schickt eine Antwort an die HSR
  • @danilo startet den Sensor (stündliche Messung) und loggt die Antworten, solange @schmijos noch nicht ready ist
  • @axel charakterisiert die Solarpanels
  • @raphi fragt in der Sensirion nach wegen dem Löten der Sensoren
  • ev. beginnt @danilo mit der Android-App

2016-05-24

Anwesend

@raphi, @danilo

Neues

  • @raphi Hat löten von SHT3x Breakout PCB’s in Auftrag gegeben.
  • @danilo Ist am LoRa Glarnerland Meetup gewesen. Energie-Verbrauchs-Messung gestartet.
  • @axel Hat Solarpanel charakterisiert. Noch keine definitiven Resultate

LoRa-WAN

Vorteile

  • Energieverbrauch
  • Keine Netznutzungsgebühren (Sofern wir The Things Network verwenden)

Nachteile

  • Noch nicht ausgereift (Vor allem The Things Network)
  • Neue Hardware nötig
  • Abhängig von Gateway-Abdeckung (Evt. eigene Gateways?)
  • Längere Entwicklungszeit

Power Consumption

Messung Danilo http://tmp.dbrgn.ch/log-analysis.html

Hochgerechnet ergeben sich ca. 2 Wochen Laufzeit.

Next Steps

2016-06-07

Anwesend

@axel @schmijos @danilo @raphi

Neues

  • @raphi Hat die SHT3x Breakout PCBs und den LoRA chip gebracht
  • @danilo Hat den LoRA chip auf das Breakout Board gelötet
  • @axel Hat Solarpanel charakterisiert
  • @schmijos Hat an der API weiterentwickelt
  • @danilo Hat mit der Android App begonnen

Power Consumption

Letzte Messung:

Solarpanel:

  • Vermutlich genügend Strom via Solarpanels: Selbst wenn es immer bewölkt ist, könnten wir um 4 Messungen / Tag herum erstellen.
  • Allerdings scheint der Electron bisher nicht so verlässlich zu sein

Electron vs LoRA

  • LoRA ist kostengünstiger, energieeffizenter und vermutlich wartungsärmer
  • HSR Gateway wird wohl den ganzen Obersee abdecken, reicht für den Anfang

API / App

  • @schmijos passt die Queries für die Android App an
  • Für iOS werden wir vermutlich eine Native App erstellen
  • Ev sponsort Renuo die Zeit für die Entwicklung, dafür dürfen sie die App unter ihrem Account publizieren. Dafür entfallen für uns die App Store Kosten.
  • Mapbox API (für Kartenmaterial) ist gratis bis 50’000 User pro Monat (Falschinterpretation vorbehalten). Danach 50$/Monat. Das ist für uns durchaus OK, wir werden die Limite wohl nie erreichen :slight_smile:
  • Ev. Mitgliederwerbung im About-Screen wenn man sich in der Nähe des Hackerspaces befindet :wink:
  • Ev. Trigger-Benachrichtigung ab gesetztem Temperaturniveau
  • Authentisierung fehlt noch: Fixer API Key pro App

Next Steps

2016-06-21

Anwesend

@danilo @raphi

Neues

@raphi Hat den SMA-Stecker gebracht, Luz hat ihn gelötet

RN2483

Der LoRa-Transceiver funktioniert einwandfrei. Wir können seriell kommunizieren:

miniterm2.py /dev/ttyUSB0 57600 -e

The Things Network

Wir haben eine Applikation registriert und versucht eine OTA-Aktivierung durchzuführen. Wie zu erwarten ist aber kein Gateway in der Nähe, also können wir das noch nicht testen. Ev fahren @raphi und ich mal nach Zürich um dort das Netz für einen Test zu nutzen.

Die Nutzung der Applikation wird ziemlich einfach, es reicht, sich auf einen MQTT-Broker zu verbinden und auf Nachrichten zu warten.

Hardware

  • Welchen Microcontroller sollen wir wählen? ARM 32bit oder ein 8bit Atmel?
    • Requirements: Stromsparend, Serial, I2C.
    • 8bit würde völlig ausreichen. zB der Atmega328P AU.
    • Aber bei ARM gibt es mehr Tooling und Potential für Rust :wink:
    • Preislich spielt es eigentlich keine Rolle. 32bit ist inzwischen sehr günstig und energieeffizient. Bzw STM32 sind vermutlich günstiger als Atmel.
  • SMD oder THD?
    • Egal. Wegen dem HF-Routing brauchen wir sowieso professionelle Fertigung.

→ Raphi informiert sich mal.

Next Steps

  • @schmijos API weiterentwickeln
  • @danilo Android weiterentwickeln
  • @raphi Herausfinden welchen Microcontroller wir verwenden sollen (zB SAMD oder STM32)
  • @raphi und @danilo ev. mal in Zürich LoRa-Board testen
  • @danilo ev blogpost schreiben über RN2483 + TTN

2016-07-05

Anwesend

@danilo @raphi @schmijos

Neues

@danilo Hat eine Antwort von der HSR gekriegt.

HSR Offerte

  • Angebot: 3 Jahre für 20 CHF / Monat plus 180 CHF Setup-Kosten
  • Rückerstattung pro Rata bei Abbruch

MCU / Firmware

  • ARM Cortex M0 von NXP
  • Am besten mit mbed schreiben, dann könnten wir den Code auch auf das xDot-Modul portieren
  • Test mit LPC1768 Board

Next Steps

2016-08-09

Anwesend

@danilo @raphi @schmijos

Neues

Insgesamt nicht viel, da einige in den Ferien waren.

@danilo:

  • Erfolgreich das LoRa-Board mit ThingsNetwork verbunden
  • Server mit API deployed

@raphi:

  • Hat mit dem LPC1768 SHT3x Sensoren angesteuert

API

  • Läuft grundsätzlich
  • Authentisierung etc. ausstehend

Android App

  • @danilo Hat Playstore Account eröffnet ($20)

Diverses

Next Steps

  • @raphi Test-Firmware schreiben
  • @schmijos Authentisierung implementieren
  • @danilo App weiterentwickeln / APK hochladen
  • @danilo LoRa-Gateway abklären

2016-09-06

Anwesend

@danilo @raphi @axel

Neues

Insgesamt nicht viel, da einige in den Ferien waren.

@danilo:

@raphi:

  • Firmware mit platformio in Betrieb genommen

API

Android App

Diverses

Next Steps

  • @raphi Test-Firmware schreiben
  • @raphi HW Design beginnen
  • @danilo App weiterentwickeln / APK hochladen
  • @danilo LoRa Reichweite-Test
1 „Gefällt mir“

2016-09-27

Anwesend

@danilo @raphi

Neues

@danilo und @raphi haben angefangen die Platine zu designen: https://github.com/coredump-ch/watertemp/tree/master/hardware/v1

@danilo hat die Reichweite gemappt: http://ttnmapper.org/?gateway=B827EBFFFE4A5213&type=radar

@raphi Hat begonnen einen uC zu evaluieren: https://github.com/coredump-ch/watertemp/issues/3

App

Erste Version ist auf Einladung im PlayStore verfügbar.

LoRa-Gateway

Wir brauchen einen besseren Standort für das Gateway und eine bessere Antenne.

@danilo hat eine 7dBi Antenne auf Aliexpress bestellt: https://www.aliexpress.com/item/868MHZ-915MHZ-GSM-3G-antenna-small-sucker-7dbi-aerial-3meters-SMA-male-2/32512220307.html Und ein paar SMA Buchsen.

Ideen

  • Antenne auf der Insel Lützelau / Ufenau?
  • Antenne auf dem Schloss Rapperswil? :smiley:

Microcontroller

Wir wählen den LPC11U24FBD48/401.

Next Steps

  • @raphi Bestellung von 3 weiteren LoRa Modulen mit einer Antenne (Restliche Antennen separat um andere zu testen)
  • @raphi Test-Firmware schreiben
  • @danilo / @raphi Hardware weiterentwickeln

2016-10-11

Anwesend

@danilo @raphi

Neues

@raphi 3 neue RN2483 + 1 Antenne + JLINK Debugger mitgebracht

@danilo 5dBi und 7dBi Antenne mitgebracht

Hardware

  • 2 Neue Breakoutboards gelötet → eines für Firmware Entwicklung verwenden
  • Mit neuen Antennen getestet und vom Coredump durch offenes Fenster mit TTN verbunden. Daten aus dem Raum gesendet mit -107 RSSI empfangen!

Next Steps

2016-10-25

Anwesend

@danilo @schmijos

Neues

  • @schmijos hat an API weitergemacht
  • @danilo hat weitere Tests mit LoRa-Nodes gemacht, teilweise erfolglos. Grund noch unbekannt

Webinterface

Danilo versucht mal, ein einfaches Webinterface zu basteln. Hier das wunderbare Mockup:

Next Steps

2016-11-15

Anwesend

@danilo @raphi

Neues

  • @danilo hat nochmal kurz einen test gemacht mit den lora nodes. wieder kein erfolgreicher join. kann an der glasfront der wohnung liegen.
  • HSR hat neu einen TTN Gateway! Gemäss Map ist er am See vorne. Damit können wir testen ob unsere Nodes grundsätzlich noch funktionieren.
  • Wir haben jetzt den ARM Programmierer von Seger. Leider exposed das Dev-Board keine Pins. Wir arbeiten wohl vorerst mit dem onboard Flasher.

Arbeit heute

Next Steps

2016-12-13

##Anwesend
@danilo @raphi @axel @schmijos

##Neues

  • @danilo LoRa Gateway redeployed auf ein höhers Gebäude (Prisma Dach)
  • The Things Network hat einige neue Gateways in der Nähe

Future

  • What is needed for the Prototype?
  • Design a board with pinheaders for the Mbed, the RN2483 and a 4 pin header for the SHT
  • Use a battery managment circuit from Adafruit
  • Proof of concept with temperature sensor
  • We just stick a SHT in a jar and connect it with cables

Next Steps

@danilo, @raphi Board for the prototype
@raphi Finish proove of concept firmware
@axel Provide battery management system
all: Proof of concept temperature measurement
@schmijos

2017-01-10

##Anwesend
@danilo @raphi @schmijos

PCB

@raphi und @danilo haben das Schema und PCB erstellt: https://github.com/coredump-ch/watertemp/pull/6

API

@schmijos Formular für Admininterface hinzugefügt: https://github.com/coredump-ch/water-sensor-api/issues/12

Next Steps

@danilo, @raphi Finish board for the prototype
@raphi Finish proove of concept firmware
all: Proof of concept temperature measurement
@schmijos

2017-02-28

##Anwesend

@danilo @raphi

PCB

Das bestellte PCB hat leider nicht ganz den richtigen Pin-Abstand (wohl ein fehlerhaftes KiCad-Bauteil). Zudem passt das LoRaWAN-Board mit der Antenne so nicht ganz ins Glas. Aber dafür hat man ja Prototypen :slight_smile:

Projektstatus

Das ganze Projekt läuft nun schon viel zu lange und wir kommen nicht vorwärts.

-> Wir pivotieren (à la Silicon Valley) und benutzen den DS18B20-Sensor von Maxim Integrated statt Sensirion. Gibt’s vorkonfektioniert aus China für 2.50$. Den Sensirion-Sensor können wir intern zur Überwachung verwenden.

Als Gehäuse nehmen wir ein generisches IP67-Gehäuse von Conrad o.ä. und eine M12-Kabelverschraubung. Das Gehäuse wird irgendwo am Ufer oder an einem Steg befestigt. Die Antenne belassen wir für’s Erste innerhalb des Gehäuses.

-> Danilo hat eine Conrad-Bestellung aufgegeben.
-> Raphi hat in der Zwischenzeit den DS18B20-Sensor mit dem ARM-Board halbwegs zum Laufen gekriegt.

Next Steps

  • Gehäuse abwarten
  • @raphi programmiert bis zum nächsten Meeting die DS18B20-Integration fertig
  • @danilo beginnt ev mit einem neuen PCB, wobei wir für die Tests noch ein Breadboard verwenden können.