Neuartiges 1-Wire Interface

Begonnen von Prof. Dr. Peter Henning, 18 Januar 2014, 21:00:45

Vorheriges Thema - Nächstes Thema

Tobias

#120
ein paar Fotos vom Testaufbau.
Es würde alles 100% perfekt machen wenn der ETH-Anschluss 3mm oberhalb des Gehäuses herausgucken würde. Aber nein: es fehlen ca 10mm. Also muss zwischen Hutschienen-Trägerplatine und Kristech-Adapter noch eine kleine Lochrasterplatine mit 2 Stiftleistenbuchsen rein..
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Prof. Dr. Peter Henning

 @UweH:

Also, FHEM stürzt dann, wenn 4x ein Search Reset Failure durch OWX_SER gemeldet wurde - weiter bin ich noch nicht. Ich habe aber ein nettes kleines Watchdog-Script, das steht im Verzeichnis  /etc/watchdog.d unter dem Namen owxwifi und enthält


#!/bin/sh
# description: watchdog helper file for owxwifi 

#echo "Called as owxwifi $1"
case "$1" in
'test')
        #--- Test for socat
        cnt=`ps -ef | grep "socat -s" | grep -v grep | wc -l`
        if [ "$cnt" -eq "0" ] ; then
                echo "owxwifi: socat not running, return 1 at "`date`
                exit 1
        else
                #echo "socat running, return 0"
                exit 0
        fi
        ;;
"repair")
        #-- Restarting socat
        echo "owxwifi: starting socat at "`date`
        socat -s PTY,link=/dev/owxwifi,raw,echo=0,waitslave TCP4:192.168.0.97:23 &
        sleep 2
        pty=`ls -l /dev/owxwifi | grep -oE '[^ ]+$'`
        chmod 666 $pty
        RETVAL=$?
        #echo "retval from setting permissions is $RETVAL"
        fhem=`ps -ef | grep "perl fhem.pl" | grep -v grep | wc -l`
        if [ "$fhem" -eq "0" ] ; then
                echo "owxwifi: starting fhem at "`date`
                /etc/init.d/fhem start
        else
                echo "owxwifi: fhem still running"
        fi
        exit 0
        ;;
*)
        exit 0
        ;;
esac


Mein Watchdog-Dämon läuft mit der Konfiguration


ping                    = 192.168.0.254
ping-count              = 5
interface               = wlan0
max-load-1              = 24
min-memory              = 1024
test-timeout            = 10
watchdog-device         = /dev/watchdog
interval                = 15
realtime                = yes
priority                = 1


Sorgt bei einem Verbindungsabbruch mit FHEM-Absturz zu einem Reboot mit autmatischem Reconnect. Dazu habe ich in eine Testversion von 00_OWX.pm noch eingebaut, dass es beim Hochfahren von FHEM bis zu 15 Sekunden auf das Device wartet - eben, um dem Watchdog-Dämon Gelegenheit zu geben, socat zu starten.

Funktioniert astrein - bisher wurde jeder Abbruch der WIFI-Verbindung aufgefangen.

LG

pah

marc2

Moin !

Wem es reicht nur einen 1w Bus anzusteuern (und nicht gleich zwei oder drei auf einmal), dem kann ich
folgenden Converter empfehlen:

http://www.ebay.de/itm/281140882484?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649

Kostet nur rund 12€ und funktioniert wunderbar. Er hat zwar kein Webinterface für die Konfiguration, wohl
aber ein (Kleinweich) Konfigurationsprogramm um die Config über Netz oder auch seriell einzustellen.

Die Privilegien für die PTS Devices sollten sich eigentlich über die /etc/default/devpts einstellen lassen.
Allerdings gibt es gemäß Bugliste in Debian ein Problem, so dass dies ignoriert wird  :( Entsprechend
bleibt wohl wirklich derzeit nur der Workaround über ein nachträgliches chmod ...

Gruß, Marc

UweH

Zitat von: Prof. Dr. Peter Henning am 02 März 2014, 12:35:19
Ich habe aber ein nettes kleines Watchdog-Script...

Danke, werde ich testen  :)

Tobias

hab ich irgendetwas übersehen?
Der DS2480 wird erkannt, aber keine Devices.....

2014.03.03 20:03:26 3: Opening owx device /dev/vmodem0
2014.03.03 20:03:26 3: Setting owx baudrate to 9600
2014.03.03 20:03:26 3: owx device opened
2014.03.03 20:03:26 1: OWX: Serial device /dev/vmodem0 defined
2014.03.03 20:03:26 1: OWX: 1-Wire bus owx: interface master DS2480 detected for the first time
2014.03.03 20:03:26 1: Including ./log/fhem.save
2014.03.03 20:03:27 0: Server started with 62 defined entities (version $Id: fhem.pl 4769 2014-01-29 08:14:58Z rudolfkoenig $, os linux, user root, pid 30632)
2014.03.03 20:03:37 1: OWX: Search CRC failed
2014.03.03 20:03:37 1: OWX: 1-Wire devices found on bus owx ()
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

UweH

Zitat von: Tobias am 03 März 2014, 20:09:12
hab ich irgendetwas übersehen?
Ja, eine kalte Lötstelle  ;)

Tobias

#126
hmm, habe beide Ports probiert, Lötstellen kontrolliert. Keine Besserung. Habe das dumme Gefühl das am Layout etwas nicht passt.
Pah, hast du deine Platine schon aufgebaut? Funktioniert es bei dir?

Edit: Ich habe mal endlich ein Schaltungsbeispiel gefunden, ganz hinten im Datenblatt des DS2490.
Uwe, es sieht so aus als das du in deinem DS9503 Gehäuse Pin6 auf 1wireIn und Pin1 1WireOut gesetzt hast. In dem Beispiel vom DS2490 ist es aber anders herum.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Prof. Dr. Peter Henning

Nein, ich habe im Moment keine Zeit, die Platinen zu bestücken.

Der Wechsel 1W out/in sollte beim DS 9503 nichts ausmachen.

LG

pah

UweH

Zitat von: Tobias am 04 März 2014, 09:23:19
Uwe, es sieht so aus als das du in deinem DS9503 Gehäuse Pin6 auf 1wireIn und Pin1 1WireOut gesetzt hast. In dem Beispiel vom DS2490 ist es aber anders herum.
Für mich ist in jedem Fall das Datenblatt des DS9503 entscheidend...und bei mir funktioniert's damit. Ich bin aber damals auf ein ähnliches Problem gestoßen und habe deswegen in eine funktionierende Schaltung reingeguckt, um die Pinbelegung zu verifizieren.
Was passiert denn, wenn Du den DS9503 rausnimmst und die Pads überbrückst?
Schick mir mal Deine Target-Datei, mir schwant da was...

UweH

@Tobias: Ein kurzer Blick ins Datenblatt des D9503 offeriert uns diese Schaltung :

Prof. Dr. Peter Henning

Sag ich doch - und die Widerstände sind alle gleich groß, das Ding also symmetrisch verwendbar. Fehler muss woanders liegen.

LG

pah

Tobias

Hi,
ich habe gestern die Pads eines DS9503 überbrückt, aber irgendwie hab ich das Teil nicht zum fliegen bekommen. Er hat nichtmal den DS2480 erkannt, weder den einen noch den anderen. Da es aber den Tag davor noch funktioniert hat muss es noch woanders dran liegen...
Hier mal die TargetDatei:
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Prof. Dr. Peter Henning

Ist der Kristech-Adapter richtig konfiguriert ?

LG

pah

Tobias

Zitat von: Prof. Dr. Peter Henning am 05 März 2014, 07:12:12
Ist der Kristech-Adapter richtig konfiguriert ?
War meine erste Vermutung: habe 2 Einstellungen geändert die abweichend aus dem Wiki waren:
- auf 9600 Baud geändert
- auf RAW geändert

Leider keine Besserung
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

UweH

@Tobias: Vergleich mal Deine R1 und R2 mit meinen...  ::)