DS1307 1²C funktioniert nicht

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Aus irgendeinem Grund funktioniert die RTC DS1307 nicht.

    Die beiden Widerstände zu R2 und R3 (zu SDA und SCL) wurde entfernt.
    Anschluß der RTC

    Hier läst sich die Zeit nicht setzten und die I²C Schnittstelle gibt eine error Meldung.
    LOG

    Code
    2016.09.16 10:17:03 3: RPiI2C_1: HWaccess (0x68) ioctl failure: Das Gerät oder die Ressource ist belegt
    2016.09.16 10:22:03 3: RPiI2C_1: HWaccess (0x68) ioctl failure: Das Gerät oder die Ressource ist belegt
    2016.09.16 10:27:03 3: RPiI2C_1: HWaccess (0x68) ioctl failure: Das Gerät oder die Ressource ist belegt
    2016.09.16 10:29:49 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/52_I2C_DS1307.pm line 179.
    2016.09.16 10:29:49 1: PERL WARNING: Use of uninitialized value in subroutine entry at ./FHEM/52_I2C_DS1307.pm line 320.
    2016.09.16 10:29:49 1: PERL WARNING: Use of uninitialized value in localtime at ./FHEM/52_I2C_DS1307.pm line 282.

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

  • Bitte das

    Code
    echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

    in der Datei

    Code
    sudo nano /etc/rc.local


    wieder auskommentieren.

    Das ist laut https://www.raspberrypi.org/forums/viewtopic.php?t=85683 fehlerhaft.

    Ich habe meine DS1307 nach dieser Anleitung eingerichtet und sie funktioniert ohne Probleme
    http://s-huehn.de/elektronik/tem…#inbetriebnahme Schritt 5
    Automatisch zusammengefügt:
    Soweit ich sehe hast du das DT-Overlay nicht aktiviert

    Zitat
    Code
    sudo nano /boot/config.txt


    Hier ergänzen wir am Ende der Datei die folgende Zeile:

    Code
    dtoverlay=i2c-rtc,ds1307


    Quelle: Aus der oben verlinkten Anleitung kopiert.

    Einmal editiert, zuletzt von Raspi.Nick (16. September 2016 um 11:05)

  • Das mit den 5V ist kein Problem.
    Der Master (Raspberry) setzt die Leitungen auf 3,3V und der Sklave (DS1307) zieht die Leitung SDA nur gegen GND wenn er Daten sendet.
    Die Leitung SCL wird nur vom Raspberry gesteuert.
    Der DS1307 erkennt Logic1 bei >2.2V und Logic0 bei <0.8 V

    Der DS1307 läuft seit 12 Monaten bei mir ohne Probleme und der Raspi lebt immer noch.

    Einmal editiert, zuletzt von Raspi.Nick (16. September 2016 um 12:17)


  • 5V und GPIOs vertragen sich nicht.

    wenn er nach dieser Anleitung vorgegangen ist, kein Problem!

    ps915
    3. September 2013 um 19:44

    liest sich so


    Die beiden Widerstände zu R2 und R3 (zu SDA und SCL) wurde entfernt.

    wenn es die 5V pullups waren!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Danke für die Tipps:


    Zitat

    Soweit ich sehe hast du das DT-Overlay nicht aktiviert

    Habe ich jetzt ergänzt.

    Zitat

    echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

    Habe ich wieder entfernt.

    R2 & R3 sind die 5V Pullups die entfernt wurden, somit ist das mit den 5V auch nie ein Thema gewesen.

    Dennoch wird die Adresse 0x68 unter i2cdetect -y 1 nicht angezeigt sondern UU
    0 1 2 3 4 5 6 7 8 9 a b c d e f
    00: -- -- -- -- -- -- -- -- -- -- -- -- --
    10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- --
    70: -- -- -- -- -- -- -- --

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

    Einmal editiert, zuletzt von Burny (16. September 2016 um 19:43)

  • Bei Adresse 68 wird dies aber anders zittiert.

    Zitat

    Dass bei Dir bei 68 auch UU steht, liegt evtl. daran, dass Du das Kernelmodul für den DS1307 noch nicht geladen hast.

    dmesg
    Zeigt aber die beiden Zeilen der RTC an. Somit müsste ja alles geladen sein.

    Irgendwie ein Wiederspruch.

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

  • sudo hwclock -r gibt folgendes aus.

    Code
    Sa 17 Sep 2016 12:37:21 CEST  -0.282162 seconds

    Unter FHEM ist dafür mit dieser Konfiguration kein Zugriff auf i2C möglich.
    LOG FHEM

    Code
    2016.09.17 12:37:00 5: im init client fuer RTC 
    2016.09.17 12:37:01 3: RPiI2C_1: HWaccess (0x68) ioctl failure: Das Gerät oder die Ressource ist belegt
    2016.09.17 12:37:01 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/52_I2C_DS1307.pm line 179.
    2016.09.17 12:37:01 1: PERL WARNING: Use of uninitialized value in subroutine entry at ./FHEM/52_I2C_DS1307.pm line 320.
    2016.09.17 12:37:01 1: PERL WARNING: Use of uninitialized value in localtime at ./FHEM/52_I2C_DS1307.pm line 282.

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

  • Was ist aktuell mit device tree.
    In der Config ist device tree bei Jessie nicht mehr vorhanden.

    Wo gibt es eine aktuelle Anleitung die stimmt.

    Im syslog befindet sich zudem dieser Eintrag.

    Code
    kernel: [ 1123.678519] i2c i2c-1: Failed to register i2c client ds1307 at 0x68 (-16)
    kernel: [ 1422.058453] i2c i2c-1: Failed to register i2c client ds1307 at 0x68 (-16)

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

    Einmal editiert, zuletzt von Burny (17. September 2016 um 16:00)

  • Das wurde auch schon im [url=https://forum.fhem.de/index.php/topic,57093.0/all.html]FHEM-Forum[/url] angefragt und dort wurde ermittelt, dass das Modul I2C_DS1307 nicht wirklich funktionsfähig ist. Soweit ich das jetzt nachverfolgt habe setzt das Modul nur die aktuelle Systemzeit in die RTC und das funktioniert nicht richtig.
    Ein auslesen der Zeit ist nicht vorgesehen.


    Ich habe mich heute den ganzen Tag selber auch daran versucht die RTC nach den im Netz verfügbaren Anleitungen zu aktivieren. So wie ich das heute raus gefunden habe, gibt es aktuell keine Anleitung die zu 100% funktioniert.

    Ich habe mir zwar einen Anleitung zusammen gefrickelt aus 4 Anleitungen, mit der die RTC aktuell wieder funktioniert auch nach einem reboot, allerdings kann ich nicht sagen, ob dies bei jedem so ist und keine anderen Fehler verursacht.

    Ich kann dir die Anleitung per PN zukommen lassen. Ich übernehme aber keine Garantie das es klappt und nichts dadurch zerstört wird.

    Einmal editiert, zuletzt von Raspi.Nick (17. September 2016 um 17:10)

  • Das habe ich auch schon gemacht, wo ich aus diversen Anleitungen etwas zusammengefast hatte.
    Hat zwar funktioniert aber im syslog fail Einträge verursacht, aber bisher zumindest I2C unter FHEM nicht gestört.
    Die hier vorgeschlagene Lösungen haben zwar keinen syslog fail Eintrag produziert, aber dafür FHEM blockiert.

    Es würde mir schon reichen wenn das RTC Modul ausserhalb von FHEM ohne irgendwelche fail Einträge funktionieren würde.
    Vielleicht ist ja deine Lösung besser als meine bisherigen.

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

    Einmal editiert, zuletzt von Burny (18. September 2016 um 11:04)

  • Hat jemand eine Lösung für die RTC die mit aktuellem Jessie funktioniert, keine Fail Einträge im Syslog produziert, und zusätzlich den I2C unter FHEM nicht blockiert.

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

    Einmal editiert, zuletzt von Burny (18. September 2016 um 13:48)

  • Wie schon erwähnt verursacht dieser Eintrag

    Code
    dtoverlay=i2c-rtc,ds1307

    einen Fehler unter FHEM.

    Da hilft der zusätzliche Eintrag in der config.txt

    Code
    dtparam=i2c=on

    auch nichts.
    FHEM meldet ab dem Eintrag

    Code
    dtoverlay=i2c-rtc,ds1307

    sofort mit einem error der

    Code
    define RPiI2C_1 RPII2C 1

    Definition.
    Da hilft mir diese Readme auch nicht weiter.

    Lg

    Chris

    Raspberry Pi 2/2+/3/3+

    Stretch|Buster Lite, FHEM
    RFXtrx433E, SIGNALduino, nanoCUL433MHz & 868MHz, HomeMatic

    FS20, IT, HomeMatic, WMR200, TEK603, YouLess, APC, SUSV, Resol VBUS, Fronius DataloggerWeb2

    Einmal editiert, zuletzt von Burny (18. September 2016 um 14:13)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!