Nach der großen 8-Port Platine sind noch zwei kleine 1-Port Platinen entstanden um 1-Wire für den Raspberry Pi™ über dessen I2C Bus verfügbar zu machen. Wenn man z.B. nur ein paar Sensoren anschließen möchte oder, so wie ich, einen Raspberry Pi™ mit LoxBerry je Etage nutzen will, kann man diese kleinen Platinen einsetzen.
Diese Platinen sind jetzt entstanden…
DIe kleine Version (ohne Uhr und ohne Thermometer)
Die große Version (mit DS1307Z Uhr und DS18B20 Thermometer)
Die Verbindung zwischen dem I2C und 1-Wire Bus stellt ein DS2482-100 her, ein DS18B20 (große Version) ist für die Temperaturmessung vorhanden. Die DS9503P ESD Schutzdiode ist auch wieder verbaut.
Um die Spannungspegel zwischen Raspberry Pi (3,3V) und 1-Wire Bus (5V) anzupassen sind zwei BSS138 Mosfets als Level-Shifter vorhanden.
Ein DS1307 (große Version) stellt eine Uhr zur Verfügung, diese ist über I2C am Raspberry Pi™ angebunden, eine CR2032 hilft die Uhrzeit zu erhalten auch wenn keine Betriebsspannung anliegt.
Angeschlossen werden können Sensoren etc. am 1-Wire Bus über eine RJ45 Buchse oder über eine dreipolige Anschlussklemme.
Fertig aufgebaut sehen die Platinen dann so aus…
Und so sehen sie aufgesteckt auf einem Rasperry Pi 3 B+ aus…
Natürlich können auch diese Platinen wieder mit LoxBerry genutzt werden 😉
Wie man die DS1307 Clock mit einem Rasperry Pi™ nutzt findet man z.B. unter folgendem Link: https://crycode.de/wiki/DS1307_RTC_am_Raspberry_Pi.
Pin-Belegung RJ45-Stecker (von vorne gesehen)
RJ45-Buchse PIN – Farbe Ader – Funktion (Signal)
1 – Weiß/Orange – 5V GND
2 – Orange – 5V
3 – Weiß/Grün – nicht belegt
4 – Blau – 1-Wire Daten (DQ)
5 – Weiß/Blau – 1-Wire GND
6 – Grün – nicht belegt
7 – Weiß/Braun – nicht belegt
8 – Braun – GND
Platinen und Bausätze können im Blog-Shop bestellt werden.
Verlinke diesen Beitrag:
<a href="https://blog.thomasheldt.de/i2c-1-wire-1-port-bridge-mit-clock-fuer-raspberry-pi/">I2C 1-Wire 1-Port Bridge für Raspberry Pi</a>
Hallo,
mich würde interessieren, wie man die „I2C 1-Wire 1-Port Bridge für Raspberry Pi“ einsetzen kann.
Bisher habe ich 1-2 1-Wire-Sensoren am Raspi verwendet, indem ich diese an einem GPIO-Port angeschlossen und mit Spannung versorgt habe. Mit Hilfe des Kernelmoduls wurden diese ausgelesen und die Messwerte in einem File abgelegt. Weiterverarbeitende Software konnte darauf zugreifen.
In der Beschreibung steht, dass hier der 1-Wire-Bus über I2C verfügbar gemacht wird. Wie kann ich diesen dann nutzen? Gibt’s hier Beispiele oder Links die weiterhelfen können?
Gruß,
Stefan
Hallo Stefan,
im Prinzip sind die I2C 1-Wire Bridge Platinen für die Nutzung mit den http://www.Loxberry.de entstanden/gedacht, können aber auch mit dem OWFS (www.owfs.org) genutzt werden.
Gruß
Thomas
Hallo
Sind die i2c-1-wire-1-port-bridge schon fertig zusammengebaut oder muss man noch löten?
Hallo Kurt,
es sind Bausätze zum selber löten.
Gruß
Thomas
Hallo,
wofür sind die Jumper da? Ich habe sie bei meinem Aufbau jetzt genau so gesteckt wie auf den Fotos und es funktioniert 🙂
Gruß
Jörg
Hallo Jörg,
damit wird die I2C Adresse des DS2482 eingestellt, siehe Datenblatt des DS2482 😉
Gruß
Thomas
Hallo Thomas,
ah – damit alle Bridges dann einzigartige I2C Adressen bekommen, richtig?
Danke
Jörg
Hallo Jörg,
korrekt.
Gruß
Thomas
hallo also funktioniert das mit dem 1 wire Plugin (https://www.loxwiki.eu/display/LOXBERRY/1-Wire).
wegen dem löten der teile möchte ich mir das selber machen,muss man da auf irgendetwas aufpassen,ist eine Anleitung dabei?
Danke
Hallo Kurt,
genau dafür habe ich die Platine entwickelt und ich setze sie auch mit Loxberry ein.
Es ist ein Bestückungsplan dabei und es sollte möglich sein diese mit grundlegenden Lötkentnissen
zu löten.
Gruß
Thomas
hallo
und wieviele Temperatursensoren ds18b20 kann man anschliessen?,bräuchte nämlich 5 Sensoren Danke
Hallo,
5 Sensoren stellen kein Problem da, es können mehr als 10 Sensoren vom Typ DS18B20 angeschlossen werden.
Gruß
Thomas
Hallo Thomas,
der I2C – Bus auf meinem Raspi sieht folgendermassen aus :
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: — — — — — — — — — — — — —
10: — — — — — — — — — — — — — — — —
20: — — — — — — — — — — — — — — — —
30: — — — — — — — — — — — — — — — —
40: 40 — — — — — — — — — — — — — — —
50: — — — — — — — — — 59 — — — — — —
60: — — — — — — — — — — — — — — — —
70: — — — — 74 — — —
mit
0x40 : sht21 (temp sensor)
0x59 : lcm600u (artesysn pwr supply)
0x74 : srf08 (ultraschall sensor)
Wenn ich die w1 – bridge an den i2c bus anschließe, kommt dieser offenbar völlig durcheinander :
pi@raspberrypi:~/devel $ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: — — — — — — — — — — — — —
10: — — — — — — — — — — — — — — — —
20: — — — — — — — — — — — — — — — —
30: — — — — — — — — — — — — — — — —
40: — — — — — — — — — — — — — — — —
50: — — — — — — — — — — — — — — — —
60: — — — — — — — — 68 69 6a 6b 6c 6d 6e 6f
70: 70 71 72 73 74 75 76 —
pi@raspberrypi:~/devel $ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: — — — — — — — — — — — — —
10: — — — — — — — — — — — — — — — —
20: — — — — — — — — — 29 — — 2c — — —
30: — — — — — — 36 37 — — — 3b — — — —
40: — — — — — — — — — — — — — — — —
50: — — — — — — — — — — — — — — — —
60: — — — — — — — — — — — — — — — —
70: — — — — 74 — — —
pi@raspberrypi:~/devel $ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: — — — — — — — — — — — — —
10: — — — — — — — 17 18 — — — — — — —
20: — — — — — — — — — — — — — — — —
30: — — — — — — — — — — — — — — — —
40: 40 — — — — — — — — — — — — — — —
50: — — — — — — — — — — — — — — — —
60: — — — — — — — — — — — — — — — —
70: — — — — — — — —
Die Geräte lassen sich auch nicht mehr ansprechen. Habe verschiedene Adressen des Boards durchprobiert, immer mit demselben Ergebnis. Da ich 2 Boards habe, konnte ich den Effekt auch mit beiden Boards feststellen. Hast du eine Idee, was hier schief läuft ?
Danke und schöne Grüße
Hallo Bernd,
also ehrlich gesagt ist mir so ein Verhalten noch nie unter gekommen.
Hast du schon mal ohne die anderen Sensoren am Bus probiert?
Mit welcher Spannung werden die anderen Sensoren am Bus versorgt?
Gruß
Thomas
Hallo Bernd,
da ich dieses Verhalten nicht kenne habe ich da nur noch eine Idee,
zu wenig Strom zur Versorgung der Sensoren oder die Massen (GND) sind nicht alle
sauber verbunden (also Bus und Sensoren).
Halte mich aber bitte mal auf dem Laufenden wie es ausgegangen ist.
Gruß
Thomas