- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 12

Thema: SF10 an Raspi mit Perl über I2C auslesen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Defiant
    Registriert seit
    17.04.2005
    Ort
    Hamburg
    Beiträge
    183
    Witzig, ich habe das jetzt zwar auch nicht auf dem Oszi analysiert, aber diese Lesefehler riechen stark nach dem Clock stretching Bug [1]. Das Problem ist nicht neu, das Herabsetzen des I2C-Taktes bringt hier Abhilfe ohne Garantien zu geben, der Autor des Perl I2C-Modus beschreibt wie das geht und reduziert den Takt sogar auf 10kHz [2].


    [1] http://www.advamation.de/technik/ras...i-i2c-bug.html
    [2] https://metacpan.org/pod/RPi::I2C#Raspberry-Pi

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    22.12.2008
    Beiträge
    27
    Super! Also eigentlich nicht, aber super, dass du dir so viel Mühe gegeben hast! Ich werde der Sache in diese Richtung weiter folgen und berichten wenn ich Erfolg hatte. Das kann aber etwas dauern. Vielen Dank, das hilft mir schon sehr weiter.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    22.12.2008
    Beiträge
    27
    Hi nochmal,

    die Lösung, die Baudrate zu reduzieren funktioniert einwandfrei! Eine niedrige Baudrate stört wohl in den wenigsten Fällen weshalb dadurch zumindest mein Problem komplett behoben wird. Vielen Dank nochmal, dass du dir die Mühe gemacht hast!

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.669
    .. die Lösung, die Baudrate zu reduzieren funktioniert einwandfrei .. weshalb dadurch zumindest mein Problem komplett behoben wird ..
    Na gut dass es funktioniert (auch wenn ich als Fehlerquelle die Baudrate nicht sooo ganz verstehe). Frage: mit welcher Frequenz betreibst Du den I²C-Bus? Ich hatte mit meiner langen Busleitung auch mal Probleme (siehe hier) und konnte den Fehler eindeutig mit den schlappen I²C-Flanken (-spitzen) bei hohen Frequenzen identifizieren. Ich nehme mal an, dass Du Deine Busaktivitäten nicht mit nem Oszi kontrolliert hast.
    Ciao sagt der JoeamBerg

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Defiant
    Registriert seit
    17.04.2005
    Ort
    Hamburg
    Beiträge
    183
    Siehe obigen Link zu advamation.de. Ist der Takt für einen I2C-Slave zu schnell (er kann die Daten nicht rechtzeitig liefern) kann er diesen auf Low ziehen, das nennt man Clock stretching. Bei dem Raspberry Pi < 4 gibt es halt einen Bug, der Rpi erkennt das nicht und liest entsprechend falsche Daten. Das Problem konnte ich noch bei 100kHz nachstellen, bei 10kHz nicht.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    22.12.2008
    Beiträge
    27
    Huhu,

    ich habe die Baudrate aus dem Beispiel (10000 Baud? / Hz?) übernommen. Ich betreibe derzeit nur 2 Slaves und das reicht mir dicke. Ich kann ja mal ausprobieren ab wann mein Sensor aussteigt. Könnte aber etwas dauern, bin zur Zeit etwas "zeitlos". Ein Oszi um das Signal zu prüfen steht mir leider nicht zur Verfügung. Meine Kabel sind recht kurz: Um die 10cm pro Slave.

    Grüßle,
    Hectic
    Geändert von Hectic (02.07.2021 um 17:12 Uhr)

Ähnliche Themen

  1. RasPi - Druckeranschluss über Ethernet nicht möglich
    Von oberallgeier im Forum Raspberry Pi
    Antworten: 18
    Letzter Beitrag: 19.05.2020, 10:45
  2. Antworten: 63
    Letzter Beitrag: 18.02.2016, 07:43
  3. Antworten: 9
    Letzter Beitrag: 17.02.2016, 20:09
  4. Raspi GPP C++ WiringPi: Rotationsencoder auslesen
    Von HaWe im Forum Raspberry Pi
    Antworten: 1
    Letzter Beitrag: 18.10.2015, 09:29
  5. LPT & COM mit PERL ansprechen
    Von Free Faq im Forum PC-, Pocket PC, Tablet PC, Smartphone oder Notebook
    Antworten: 1
    Letzter Beitrag: 31.08.2005, 22:23

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress