Paxcounter – Wir zählen Leute

Ein mittlerweile sehr beliebtes Spielzeug ist der Paxcounter geworden, welcher von immer mehr Leuten nachgebaut und eingesetzt wird. Der Paxcounter soll helfen Besucherzahlen zu erfassen, indem er Die WiFi und Bluetooth Signale der umliegenden Geräte erfasst und mengenmäßig auswertet. Das Projekt legt dabei sehr großen Wert auf Datenschutz und speicher z.B. keine MAC-Adressen. Als Hardware werden günstige ESP32 verwendet, welche es für rund 20€ zu kaufen gibt. Die Daten werden dabei per LoRaWAN an TTN übermittelt. Ich verwende ein TTGO LoRa32 V2.1 – 1.6

 

Vorab zu dem Board eine Warnung:

We used a fuse. The diode is energized in one direction, but the fuse is bidirectional, which causing the USB voltage directly access to the battery.
After a long time charged, the battery is hot or burned, so please don’t use this V2.1-1.6 version to charge the battery! ! !
(Note: The board can be powered by battery, but we mustn’t charge the battery when the battery is connected to the board, mustn’t charge! mustn’t charge! mustn’t charge!)
If you want to use this V2.1-1.6 version to charge the battery, you need to replace the fuse in the picture with a diode, then the charging function return to be normal.
It can be changed the model number of the diode : BS5819 SOD123 / 1A current

Also niemals mit dem Board einen Akku laden, außer ihr habt die Sicherung gegen die Diode ausgetauscht.

 

Vorbereitungen

Um die Software auf das Board zu bringen, müssen wir erst noch etwas Software installieren. Wir nutzen hier den Atom Editor und dazu die PlatformIO IDE. Also ladet euch und installiert Atom. Anschließend installieren wir das Paket PlatformIO-IDE. Dazu geht ihr unter Settings und wählt Install. Anschließend sucht ihr nach platform und wählt Install für das Paket platformio-ide.

 

Anschließend gehen wir zum GitHub Repository und laden uns die eigentliche Software herunter. Das ZIP-Archiv entpackt ihr danach.

 

Damit die Daten im TTN empfangen werden können, muss natürlich auch eine Applikation erzeugt werden. Ihr müsst nur darauf achten kein ABP zu verwenden, da nur OTAA unterstützt wird.

Um mit eurem Board sprechen zu können, benötigt ihr eventuell noch einen passenden Treiber füt die USB to UART Bridge. Für den CP210x gibt es diese hier.

 

Konfiguration

Nachdem nun alle Vorbereitungen getroffen sind, können wir endlich beginnen. Startet Atom und wählt unter Files, Open Folder. Danach wählt ihr euren Ordner mit der zuvor entpackten Software aus. Im Projektbaum wählt ihr nun die Datei platformio.ini aus. In dieser Datei legen wir fest auf welcher Hardware wir die Software installieren wollen. In meinem Falle ist es ttgov21new. Ihr müsst einfach nur das Semikolon vor dem Eintrag entfernen.

 

Anschließend die EUIs und den Key für die TTN Applikation eintragen. Wählt die Datei /src/loraconf.sample.h aus. Kopiert nun die EUIs und den Key aus der TTN Console und fügt sie hier ein. Wählt das MSB-Format und kopiert den Inhalt in die Zwischenablage.

Mit einem Rechtsclick auf den Dateinamen und der Auswahl Rename benennen wir die Datei nun in loraconf.h. Dieses machen wir ebenfalls mit der Datei ota.sample.conf in ota.conf. Damit wären wir hier fertig. Es gibt noch weitere Konfigurationsmöglichkeiten in der paxcounter.conf, aber darauf werde ich hier nicht weiter eingehen.

Jetzt brauch es noch drei einfache Schritte und die Software ist auf dem Modul.

  1. Clean – solltet ihr immer machen, wenn ihr etwas ändert
  2. Build  – dadurch die das Firmware-File erstellt
  3. Upload  – Lädt die Firmware auf euer Modul

 

Anschließend müssen wir noch in der TTN Console der Payload Decoder einrichten. Per Default ist im Paxcounter das Packed Format eingestellt. Kopiert euch den Inhalt dieses Decoders und und fügt dieses in der Console ein. Anschließend erhaltet ihr die Messungen im Klartext auf der Konsole.

Eine weitere, sehr gute, Anleitung zu dem Thema gibt es von Sebastian Müller. Es lohnt sich auch mal dort vorbeizuschauen. Im GitHub Repo selbst werden auch einige Fragen beantwortet und Dinge erklärt.

Schreibe einen Kommentar