Raum-Temperatur auf dem Dashboard

Temperatur und Feuchtigkeit mit dem Wemos D1 Mini werden gemessen und auf dem Dashboard ausgegeben

Ich beschäftige mich aktuell mit dem Wemos D1 Mini und dem messen von Temperaturen sowie dem versenden der Daten. Ursprünglich bin ich auf das Thema gestoßen, da ich auf dem Boot verschiedene Stellen überwachen möchte, wie bspw. die Temperatur im Motorraum. Unter anderem bestellte ich mir dafür den bereits genannten Wemos D1 Mini und dazu unterschiedliche Sensoren wie bspw. den DHT22. Der DHT22 ist ein Temperatur- und Feuchtigkeitssensor. Der Wemos D1 Mini bringt auch gleich einen WLAN-Chip mit.

Um an Bord die gemessenen Werte an den Raspberry zu senden und nicht quer durchs Boot neue Kabel verlegen zu müssen, war die Übertragung mittels WLAN eine charmante Alternative.
Bis hierhin war das eigentlich nur die Vorgeschichte.
Interessant finde ich auch daheim die Temperatur und Feuchtigkeit, um zu erkennen wann wieder gelüftet werden muss. Die Darstellung auf dem Dashboard bot sich dafür an.
Keine Kabel verlegen zu müssen, bis auf für die Stromversorgung ggf. (3.3V oder 5V für den Betrieb werden benötigt), ist zu Hause genauso von Vorteil.

Da ich (aktuell) keinen Bedarf habe eine Historie der Werte zu speichern, kam mir die Idee die Werte direkt mittels API-Aufruf vom Wemos auf dem Dashboard aktualisieren zu lassen.
Das war die perfekte Übung für spätere Projekte an Bord.

Später kommt das ganze in ein Gehäuse.
Der Versuchsaufbau sieht wie folgt aus:

Auf dem Dashboard sieht die Kachel dann so aus:

Das ganze habe ich im Git gepflegt und ihr findet es mit entsprechender Anleitung zum nachbauen hier: https://github.com/janneshecht/Room-temperature

Raspberry Pi Touchscreen in Betrieb nehmen

Es gibt mehrere Möglichkeiten den originalen 7″ Touchscreen anzuschließen und mit Strom zu versorgen.
Derzeit habe ich je ein Jumper-Kabel vom Pin 4 zu 5V+ am Display und von Pin 6 zu GND am Display. Wichtig ist dabei, das die Stromversorgung dann mittels Micro-USB am Display angeschlossen wird und nicht am Pi, da dieser nicht dafür ausgelegt ist das Display noch mit Strom zu versorgen und ggf. kaputt gehen kann.
Ich werde demnächst aber die zweite Möglichkeit nutzen und je ein Netzteil für den Raspberry und eins für das Display einsetzen. Zu beachten ist dabei, dass die Stromversorgung zeitgleich eingeschaltet wird.
Desweiteren ist ein Flachbandkabel am Display anzuschließen und am Raspberry.

Beim ersten Start stellte sich heraus, dass das Bild jedoch auf dem Kopf dargestellt wird.
Um das Bild zu drehen, ist folgender Eintrag in der Datei "/boot/config.txt" anzupassen/einzutragen.

lcd_rotate=2

Anschließend muss der Raspberry neugestartet werden.

Folgender Eintrag in "/boot/config.txt" würde zwar das Bild drehen, jedoch würden die Touchoberfläche weiterhin auf dem Kopf stehen und damit für noch mehr Verwirrung sorgen.

display_rotate=2

Für beide Einstellungen gilt:

WertGrad
00 GradKeine Drehung
190 Gradseitlich gedreht
2180 Grad„auf den Kopf gestellt“
3270 Gradseitlich gedreht

Kartenplotter an Bord mit Raspberry Pi

Das Lob gebührt Andreas Vogel und allen Unterstützern! – http://www.wellenvogel.net/software/avnav/docs/beschreibung.html
Mit dem Projekt AvNav wird der RaspberryPi zum Bordcomputer.
An Bord ist der RaspberryPi die zentrale Einheit wo u.a. Positionsdaten, Geschwindigkeit und Kartendaten zusammenlaufen und mittels WLAN an Endgeräte verteilt werden.
Für die Niederlande und auch Deutschland (und auch noch weitere) lassen sich kostenlos bereitgestellte Kartendaten herunterladen und in AvNav einbinden.
Die Dokumentation ist auf der oben aufgeführte Seite sehr ausführlich.
Im Einsatz ist bei uns die Version „AvNav-Touch“ (fertiges Image) in Verbindung mit dem
RaspberryPi-Touchscreen.

An Bord ist der GPS-Stick „USB GPS Modul Vk-172 Glonass Navigation“ von Amazon im Einsatz, welcher bisher sehr zuverlässig die Position liefert (am Kartentisch unter Deck montiert).
Mit dem eingebauten WLAN des RaspberryPi kam es leider immer wieder zu Verbindungsabbrüchen in Verbindung mit einen Samsung Galaxy Tab A10.1. Von Hermann habe ich noch einen TP-Link TL-WN722N gestellt bekommen, mit dem nun bisher überall an Bord die WLAN-Verbindung zuverlässig bestehen bleibt!

Zum Thema „Installation des originalen Rasperry Pi Touchscreen“ folgt noch ein Beitrag.

Tabelle in SQLite Datenbank löschen

Aktuell spiele ich ein wenig mit Ruby on Rails rum und musste neulich eine Tabelle in der Datenbank löschen. Ich musste ein klein wenig suchen bis ich die einfache Lösung gefunden habe.

Zunächst mit rails c mit der console verbinden, im Anschluss über

ActiveRecord::Migration.drop_table(:table_name)

die entsprechende Tabelle löschen.

Nokogiri auf dem Mac installieren

Ich möchte mich ein wenig mit Ruby on Rails beschäftigen und bin für die Installation nach der Anleitung https://install-rails-mac.com/#check-the-gem-manager vorgegangen. Jedoch bin ich bei der Installation von nokogiri (gem install nokogiri) auf folgenden Fehler gestoßen.

ERROR:  While executing gem … (Gem::FilePermissionError)

    You don’t have write permissions for the /Library/Ruby/Gems/2.3.0 directory.

Mit dem dem folgenden Befehl war die Installation jedoch möglich.

sudo gem install nokogiri -n /usr/local/bin