Beiträge von Raspi77

    Hallo zusammen,

    ich habe mehrere DS18S20 und DS18B20 Sensoren an einen Raspberry Zero
    angeschlossen (Pin4). Pullup habe ich schon von 4k7 auf 1k8 geändert,
    bekomme aber weiterhin sporadisch CRC Fehler (wechselnde Sensoren).
    Die Einleseroutine liest den Sensor mehrmals bei Auftreten eines CRC
    Fehlers aus. Das Einlesen erfolgt über das 1-wire Dateisystem und
    funktioniert soweit.

    Die 10 Sensoren sind an einen Verteiler angeschlossen, Leitungslänge
    jeweils ca. 1,5-3m. Sollte eigentlich kein Problem darstellen.

    VCC ist auf dem Raspi noch einmal gegen GND mit 100nF geblockt.

    Wie kann ich das Auftreten der CRC-Fehler verringern? Habt ihr ähnliche
    Probleme?

    Ausleseroutine (read function):

    Und die Auswerteroutine:

    Hallo,

    ich betreibe einen WLAN-Aadpter EN7811 an einem Raspi Zero. Leider bekomme ich wohl keine IP-Adresse zugewiesen von meiner Fritzbox.

    1) iwlist scanning zeigt die umgebenen Funknetze korrekt an, insofern gehe ich davon aus, dass der Stick erst einmal funktioniert.
    2) Schlafmodus des EN7811 ist auch ausgeschaltet
    3) /var/log/syslog zeigt mir "IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready


    Kann es sein, dass der DHCP daemon zu früh aufgibt und dadurch keine Adresse zugeteilt wird?
    Falls ja, wie kann man die Wartezeit auf Synchronisation mit dem WiFi-Netzwerk verändern?

    Bin für jeden Hinweis dankbar.

    Hallo,
    ich habe bisher meinen Stromzähler über eine Photodiode ausgelesen und die Werte in einer Datenbank gespeichert. Leider funktioniert es aktuell nicht mehr.

    Angebunden ist die Photodiode (TEKT5400S) über einen Pullup (1K an 3V3) an RX, ausgelesen wird der Pin über /dev/ttyAMA0.

    Die Änderungen an der boot/config.txt habe ich durchgeführt und geprüft.
    Wenn ich RX/TX mit einem Jumper brücke, dann bekomme ich in minicom erwartungsgemäß ein Echo der eingegebenen Zeichen.
    Eingestellt ist die Schnittstelle auf 9600, 8N1.

    Hat jemand eine Idee, was ich noch prüfen könnte? Warum kann ich keine Zeichen empfangen?

    Viele Grüße
    Raspi77

    So, das Problem ist gelöst. Nachdem ich mir einen Wolf gesucht habe, wie
    denn die smbus Funktionen genau funktionieren, habe ich festgestellt,
    dass die Funktion read_word_data vor dem Lesen ein write(!) absendet,
    mit welchem sich das Statusregister des MAX127 (Channel0) setzen lässt.

    Leider liefert die Funktion das LSB zuerst, so dass man die Bytes noch
    tauschen muss. Von dem LSB werden dann auch nur die bits 4-7 benötigt,
    daher der right-shift um 12 Stellen.
    In x2 wird das ganze dann wieder zu einem word zusammengebaut.


    Hier der Link zur Doku:
    https://www.kernel.org/doc/Documentation/i2c/smbus-protocol

    Hallo,
    ich habe einen MAX127 AD-Wandler angeschlossen. i2cdetect zeigt mir auch die korrekte Adresse 0x28 an.

    Der Baustein wird wie folgt genutzt:
    1) Setzen des Control-Registers für Channel0 (i2cset -y 1 0x28 0 0x80) mit dem Wert 0b10000000
    2) Das Abholen der Werte erfolgt durch einen Read-Befehl, worauf der Baustein 2 Data-Bytes sendet.

    Wie kann ich diese beiden Data-Bytes abholen?

    i2cget sendet etweder nur ein Byte: i2cget -y 1 0x28 --> 0xFF
    oder man muss eine zusätzliche Adresse mit angeben, die dieser Baustein aber nicht haben möchte:
    i2cget -y 0x28 0 w -->0x4eFF

    Anbei das Datenblatt des Bausteins MAX127.

    Hat jemand vielleicht ähnliche Probleme und kann mir helfen?

    Besten Dank
    Raspi77