Raspberry Pi – OneWire Sensor funktioniert nicht mehr nach Raspbian Update (DS18B20, DS18S20, DS18x20)

Nach dem Kernel Update auf 3.18.3 (oder neuer) funktionierten die 1-Wire Sensoren plötzlich nicht mehr.
Das es im Linux Kernel eine Umstellung bzgl. behandlung der Kernel Module gab.
Ich hab hier die Quick and Dirty Lösung für euch dokumentiert.

Schritt für Schritt Anleitung:

-Mit Putty am Raspberry Pi anmelden.
-optional: sudo apt-get update
-optional: sudo apt-get upgrade
-optional: sudo rpi-update

-Mit Nano die Boot-Config öffnen
sudo nano /boot/config.txt

pi_nano_boot_config.txt
(Screenshot)

-In diesem File ganz unten folgende Zeile hinzufügen:
#disable device tree function
device_tree=

pi_nano_boot_config.disable device tree
(Screenshot)

-Mit der Tastenkombination Strg+O wird das File wieder gespeichert und mit Strg+O schließt Ihr Nano.
-Nun nur noch ein Reboot und anschließend sind die Sensoren wieder wie gewohnt verfügbar.
Dieser wird mit sudo reboot eingeleitet.

Somit ist die Fehlerbehebung abgeschlossen und unter /sys/bus/w1/devices/ sieht man die generierten Ordner wieder.

pi_device_1-wire

Viel Erfolg!

Arduino – Temperatur messen mit 1Wire Sensor DS18S20/DS18B20/DS1820

Der OneWire Sensor DS18x20 ist günstig und einfach in der Anwendung.
Hier meine Anleitung wie Ihr den Sensor am Arduino in Betrieb nehmt.

Was wir benötigen:

-OneWire Sensor – Wasserdicht oder eine einfache Variante
Arduino IDE
OneWire Library
4,7 kOhm Widerstand zB. von eBay

Falls noch nicht vorhanden, die Arduino IDE downloaden und entpacken.
Das gleiche machen wir mit der OneWire Library und kopieren diese anschließend in den Arduino IDE Ordner unter den Pfad \arduino-1.0.6\libraries .

Der Sensor muss auch noch am Arduino verkabelt werden dies ist recht einfach, wie Ihr im Bild sehen könnt.
Wenn Ihr die flache Seite anseht, ist der linke Kontakt Ground (GND), der Rechte für +5V (würde auch mit 3,3V funktionieren) und in der Mitte ist er Kontakt für die Daten/Kommunikation in unserem Fall ist das PIN 2.
Arduino OneWire

Solltet Ihr einen Wasserdichten Sensor haben (wie im Bild) schließt Ihn so an:

Schwarz = GND
Gelb bzw. Weiß = Daten
Rot = +5V
DS18B20 Waterproof

Zwischen dem Plus und dem Daten Kontakt benötigen wir nun noch den 4,7 kOhm Widerstand wie oben im Bild eingezeichnet, in der Praxis hab ich es auf meinem Breadboard so gelöst wie im Bild unterhalb.

DS18B20 Resistor

Die Hardware ist somit fertig, weiter geht es mit dem Code.

Der Code is sehr einfach und sparsam gehalten (sollte das Projekt größer werden),
getestet wurde er in der Arduino IDE 1.0.4 und 1.0.6.

Uploaden und im Serial Monitor die Messdaten betrachten.

Falls in der Ausgabe -1000 oder CRC is not valid steht habt ihr ein Problem mit der Verkabelung.

 

 

Viel Spaß beim Messen 😉

 

Die beliebtesten Artikel im Jahr 2014

Seit Ende 2012 schreiben wir nun unseren eigenen Blog und wir sind selbst oft überrascht wie gut manche Themen bei euch ankommen.
Auch 2015 werden wir wieder interessante Beiträge bloggen und damit versuchen unser Wissen und Erfahrungen an euch weiter zu geben.

Hier die beliebtesten Artikel des vergangen Jahres 2014:

1. Autostart bei Windows 8 und Server 2012
2. Datenträgerbereinigung cleanmgr.exe auf Windows Servern
3. Raspberry PI spielt Proxy
4. iSCSI Target Server mit Windows Server 2012
5. ASUS N900 – RT-N66U mit DD-WRT flashen
6. Arduino – Temperatur messen und mit Webserver ausgeben – DHT22 DHT11 AM2302
7. Raspberry PI – apt-get über Proxy
8. pyLoad – automatisch starten nach Neustart (Debian/Raspbian)
9. Arduino: 7 Segmentanzeige ansteuern
10. Python 3 – HTML Seite auslesen
11. Raspberry Pi – Keyboard-Layout auf deutsch ändern – Logitech K400r
12. ORF tvthek Sendungen herunterladen
13. Arduino: Temperatur messen mit einem LM35
14. Unterordner Größen per Powershell auslesen und speichern
15. 0x8020002e – Windows Store Apps Installationsfehler

Ein Gutes neues Jahr wünscht euch das silvertech.at Team!

Samsung Android Mail App Debugmodus

Samsung hat sein Android Standard Mail App einen Debug Modus verbaut dieser ist jedoch versteckt.

Mit wenigen Schritten hat man diesen aktiviert:

1. Gehe ins Menü und lege einen neue Exchange Account an
2. als Mail Adresse gibt du „d@d.d and und als Passwort „debug“
3. Drücke auf „Manuelles Setup“ oder „Weiter“
4. Nun seit ihr im Debug Menü
5. Alle Logs die Ihr aktiviert werden danach als File im Normalen lokalen Speicher abgelegt.

 

Ich konnte dies auf allen meinen aktuellen Samsung Geräten reproduzieren zB.: S4,S5,S5 mini, Note 10.1 2014

Samsung Mail App Debug Samsung Mail App Debuggen

 

 

 

 

 

 

 

 

 

 

 

happy debugging 😀

Open Samsung Mail App debug mode

In Samsung’s Android Mail-App is a hidden debugmode, it’s easy to enter it (if you know it 😉 ).

Step by Step, to open the debug menu:

1.Go to account setup page (in may case exchange).
2.Enter email „d@d.d“ and „debug“ as password.
3.Press „Manual setup“ or „Next“.
4.Now you can debug what you like.
5.the debug logs will be saved in the device storage as textfile.

Tested on S4,S5,S5 mini, Note 10.1 2014,

Samsung_Mail_Debug_Setup_enSamsung Mail App Debuggen

 

 

 

 

 

 

 

 

 

 

 

happy debugging

 

Raspberry Pi als IP Webcam verwenden

Da ich einfache Lösungen liebe, hab ich motionPie verwendet.
Ich bin selbst im Internet über diesen Fork gestoßen und war sofort begeistert.
Der Programmierer hat Buildroot und motionEye miteinander kombiniert.
Heraus kommt ein Raspberry Pi Image das auf anhieb funkioniert.
Das Beste, man kann auch noch weitere IP Webcams einbinden und hat somit eine lässige Übersicht.
Und noch vieles mehr, aber dazu später.

Was benötigen wir:
-Raspberry Pi (RPi)
-SD Karte (< 1GB reicht zum testen)
-RPi Kamera (im optimal Fall)
-alternativ funktionieren auch die meisten USB Webcams

Schritt für Schritt Anleitung:
1.Image von GitHub downloaden „Latest Release“ (.img.gz Datei)

2.Die .img.gz Datei mit 7zip entpacken.

3.Das Image auf die SD-Karte mittels Win32 Disk Imager (Erklärung beim Download) übertragen.

4.Rein mit der SD-Karte, Netzwerkkabel dran und starten.

5.Im Netzwerk suchen und zB per IP im Browser aufrufen.

-Wie du dein Netzwerk durchsuchen kannst?
-Ich verwende die Android App Fing und am PC Network Scanner von SoftPerfect (ganz hinunter scrollen für den Download-Button)

6.Der Hostname entsteht übrigens aus mp für motionPie und der Seriennummer des RPi, so zB. „mp-1234xMuH“

motionPie WebInterface
motionPie WebInterface

 

 

 

 

 

 

 

 

 

 

So einfach hat man ein Videoüberwachungssystem.
Für die Einstellungen im WebInterface benötigt man Ameldedaten, hier als Usernamen: admin und das Kennwortfeld leer lassen, sollte man natürlich ändern.

Wenn man über SSH (Port 22) zugreifen will geht das mit dem User „root“ das Kennwort ist die Seriennumer deines RPi keine Angst die findest du wiederum im Hostname 😉 (das man dies auf dauer ändern sollte brauch ich nicht erwähnen oder? )

Einige wertvolle Funktionen sind im Webinterface verbaut wie zB:
-Software Update Check
-WLAN konfig
-Kamera Bild rotation
-Speicher Platz Anzeige
-Video Stream konfig (port, framerate,…)
-Motion Detection
-Email Notifizierung
-uvm.

Tolle Sache insgesamt und vor allem wird aktiv daran weiterentwickelt, das ist für mich immer ein relevanter Punkt bei Software.
And a big Thank You for the developer!
 

Viel Spaß damit.

Asus RT-AC66U AC1750 mit DD-WRT flashen/installieren

ACHTUNG:

Jene Geräte die nach dem 1. April 2016 von zB. Amazon versendet worden sind lassen sich aktuell nicht mit DD-WRT flashen. Alternativ kann man die  Tomato Firmware verwenden (verringert nach eigenen Test den WAN durchsatz auf ~ 200MBit, die originale ASUS Firmware schafft ~830MBit) </Update: 17.06.2016>

 

 

DD-WRT auf den AC66U zu installieren ist echt eine Leichtigkeit.
Ich versuche hier so einfach wie möglich dies zu erklären.

Was wir dazu benötigen:

Putty
DD-WRT Firmware für unser Gerät

– Die IP der PC Netzwerkkarte auf 192.168.1.99 stellen
– Router einschalten und im Browser auf http://192.168.1.1 surfen
router_1

 

 

 

 

 

 

 

(zum Vergrößern klicken)
-Oben auf „Zurück zur Hauptseite“ und dazu noch bestätigen das unser WLAN unsicher ist und dies „Anwenden“ (den Button mein ich)
-Nun in diesem Menü unten auf „Administration“ und dort auf „System“, wie im Bild ersichtlich unten „Telnet aktivieren“ auf „JA“.

router_2

 

 

 

 

 

 

 

 

 

Telnet aktivieren und auf „Anwenden“
-Nun kommt unser Putty ins Spiel, starten und die IP 192.168.1.1 eingeben, Telnet auswählen (Achtung Standard ist SSH) und mit „Open“ starten wir die Session.

Putty connect with telnet

 

 

 

 

 

 

 

 

 

 

-Im schwarzen Konsolen Fenster als Loginname: admin und Passwort ebenfalls: admin
-Jetzt löschen wir den NVRAM unseres Routers mit dem Befehl mtd-erase -d nvram
-In der Ausgabe sollte dann etwas von Successfully stehen 😉 (siehe Bild)

erase nvram over Telnet AC66U

 

 

 

 

 

 

 

 

 

-nun ein Reboot mit dem Befehl (man glaubt es nicht)  reboot  nicht schrecken damit wird auch die Putty Session geschlossen.

-Nach ca. 60 Sekunden könnt Ihr wieder auf die Hardware per Webbrowser zugreifen, die IP ist noch immer 192.168.1.1
-Wie wir es oben schon hatten Ihr klickt auf „Zurück zum Hauptmenü“ und akzeptiert das wir ein unsicheres Netzwerk haben (ihr braucht auch kein Passwort für das WLAN vergeben)
-Über das Menü geht Ihr wieder auf „Administration“ und dort diesmal auf Firmware Aktualisierung“ wie im Bild mit „Durchsuchen die .trx Datei auswählen und Hochladen.

upload ddwrt in asus original firmware

 

 

 

 

 

 

 

 

 
Abwarten und Tee trinken…

uploading DD-WRT

 

 

 

 

 

 

 

-Das Endergebnis ist nun das DD-WRT Interface (Bild unterhalb)

first_ddwrt_interface

 

 

 

 

 

 

-Am einfachsten wieder als User: admin und als Kennwort ebenfalls: admin
-Nach diesem Step empfehle ich den Browser neu zu starten und wieder am Router anmelden.
-Nun navigieren wir unter Administration und weiter unter Management zu dem Punkt „Telnet Management“ um diesen zu aktivieren und nach unten scrollen um zu speichern mit „Apply“

enable telnet in DD-WRT

 

 

 

 

 

 

 

 

(-weiter unten kannst du später die Sprache ändern, empfehle ich zwar nicht aber nach dem wir ein deutscher Blog sind erwähne ich es zumindest 🙂 )

-Putty’s 2. Auftritt – Putty wieder öffnen und wie vorhin mit Telnet auf 192.168.1.1 quasi unseren Router (Achtung es ist wieder SSH ausgewählt per Standard)

-Anders als zuvor hat sich der Username geändert, bei DD-WRT immer „root“ als Username bei Telnet verwenden, Kennwort jedoch dein vergebenes (evt. „admin“)

-Folgenden Befehl in der Konsole ausführen mtd -r erase nvram um wie zuvor den NVRAM zu löschen nun startet sich der Router von selbst neu.

-Nach ca. 30 Sekunden kann man wieder mittels der IP 192.168.1.1 auf den Router zugreifen, nun vergebt einen richtigen Benutzernamen und ein Kennwort (admin gilt für keines der beiden als „richtig“ 🙂 ).

That’s it.

Randnotiz:
Ich hab absichtlich nicht die letzte Firmware vom DD-WRT FTP Server genommen da diese ein schwerwiegendes Problem mit dem WLAN hat (hab ich selbst anfangs geflashed) Stand September 2014