ArduCounter Support und neue Versionen (war: Stromzähler mit S0 Schnitt...)

Begonnen von StefanStrobel, 26 Januar 2014, 12:08:13

Vorheriges Thema - Nächstes Thema

Juggernaut

Hallo,
ich hab mal noch eine Frage zu
Zitates muss nur Python sowie esptool.py und später espota.py vorhanden sein.
Pyhton hab ich mittels apt-get install pyhton installiert.
Dann hab ich mittels:

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
pip install esptool


das Esptool installiert.
Nur espota.py klappt irgendwie nicht.
Hab mir auch schon die Datei von https://github.com/esp8266/Arduino/tree/master/tools heruntergeladen und nach /opt/fhem/FHEM/firmware kopiert und dort ausführbar gemacht.
Den Pfad habe ich genommen weil dort schon die esptool.py Datei war.

Ich bekomme aber immer die Fehlermeldung sh: 1: espota.py: not found

Wohin muss die espota.py Datei? Muss ich noch etwas besonderes beachten?

Gruß und Danke
Michael


AxelSchweiss

gehe mal in das Verzeichniss in dem die Datei espota.py liegt.

Dann :

python ./espota.py

StefanStrobel

Hallo,

Das ArduCounter-Modul ruft esptool.py bzw. espota.py ohne explizite Pfadangabe auf. Es muss also in einem Verzeichnis liegen, das auch in Deiner $PATH Variable vorkommt. Ich habe es bei mir in /usr/local/bin liegen.
Das espool im Firmware-Verzeichnis hat nichts mit ArduCounter zu tun sondern scheint eine ältere oder modifizierte Version des Original-Skripts zu sein, die ein anderes Modul verwendet.

Gruß
    Stefan

Juggernaut

Hallo Stefan,
vielen Dank für deine Hilfe. Ich habe zumindest einen Teilerfolg erziehlt.

Leider kommt jetzt folgende Fehlermeldung:
-- flash command ---------------------------------------------------------------------------------
/usr/local/bin/espota.py: 7: /usr/local/bin/espota.py: Syntax error: newline unexpected
--- flash command ---------------------------------------------------------------------------------


Kann es sein das ich die falsche Datei habe? Ich habe sie hier runtergeladen: https://github.com/esp8266/Arduino/tree/master/tools
Habe auch die Versionen von hier: https://github.com/soif/EspBuddy/tree/master/bin
Und hier: https://github.com/espressif/arduino-esp32/tree/d2816b2f3264086a24f6436067e406d4e918a9a5/tools
versucht. Es kommt aber immer dieser Syntax error.
Woher bekomme ich die richtige Version von espota.py??
Oder stimmt da etwas mit dem Python nicht?

python -V
liefert Python 2.7.13

python3 -V
liefert Python 3.5.3


Gruß und Danke
Michael


Juggernaut

Ohje wie peinlich :-[

Ich habe glaube ich die Datei falsch von Github heruntergeladen. Wenn ich die Datei espota.py öffne steht da HTML drin.
Muss das morgen noch mal ausprobieren, aber ich denke das ist der Fehler.

Gruß
Michael

Nachtrag: Es war wirklich die falsch heruntergeladene Datei. Hab es jetzt probiert und das OTA flashen klappt einwandfrei. Falls es jemand interessiert. Ich hatte die Datei per Rechtsklick -> Speicher unter... abgespeichert. Der Name der Datei ist dann auch espota.py. Aber es ist ein HTML-Datei und kein Python. Richtig ist es wenn man die Datei in Github anzeigen lässt und dann mittels Rechtsklick auf "Raw" -> Speichern unter... das ganze runterlädt. Dann ist auch wirklich das in der Datei was man will.

FunkOdyssey

@Stefan: Gibt ArduCounter eigentlich kein Event raus, wenn das Device nicht verbunden ist?
Ich versuche derzeit, die verschiedenen Geräte in meinem FHEM mit monitoring zu überwachen.
CONNECTED erscheint im Event-Log, aber nicht DISCONNECTED (oder vergleichbar).

StefanStrobel

Hallo,

ArduCounter verwendet DevIo. Dort wird bei disconnected eigentlich ein Event erzeugt.


# Close the device, schedule the reopen via ReadyFn, trigger DISCONNECTED
sub
DevIo_Disconnected($)
{
  my $hash = shift;
  my $dev = $hash->{DeviceName};
  my $name = $hash->{NAME};
  my $baudrate;
  ($dev, $baudrate) = split("@", $dev);

  return if(!defined($hash->{FD}));                 # Already deleted or RFR

  my $l = $hash->{devioLoglevel}; # Forum #61970
  Log3 $name, ($l ? $l:1), "$dev disconnected, waiting to reappear ($name)";
  DevIo_CloseDev($hash);
  $readyfnlist{"$name.$dev"} = $hash;               # Start polling
  DevIo_setStates($hash, "disconnected");
  $hash->{DevIoJustClosed} = 1;                     # Avoid a direct reopen

  DoTrigger($name, "DISCONNECTED");
}


Gruss
    Stefan

FunkOdyssey

Mir sind die gleichen Probleme auch bei anderen Geräten aufgefallen.
Ich habe es nicht mehr genau in Erinnerung, aber ich bekam bei vielen anderen Geräten (ZWave, Signalduino, ArduCounter, usw.) auch keine Events.
Dann liegt der Fehler vermutlich woanders.
Danke fürs Prüfen.

Hackstall

Hallo ich bin ein wenig verwirrt.

Ich würde gerne den ArduCounter einsetzen aber kann ihn nicht finden.
Hier geht es mir um den ESP8266 Sketch um ihn dann im Arduino SDE zu übersetzen.

Es wird hier irgendwie von einem SVN Server gesprochen aber wo ist dieser?
Kann mir jemand vielleicht den aktuellen Link oder die aktuelle SW schicken.

Danke Andraes

StefanStrobel

Hallo Andreas,

schau mal hier: https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/firmware
Die compilierte Firmware müsstest Du mit Fhem per update schon bekommen haben.

Gruss
   Stefan

MarkusHiba

Hallo,

ich wollte mal probieren.

beim Softwareupload auf den Arduino Nano fehlte auf mein Raspi
sudo apt-get install -y avrdude

leider kommt bei mir die Fehlermeldung (siehe Anhang).

Woran kann das liegen?

Grüße

MarkusHiba
Mit freundlichen Grüßen

MarkusHiba

StefanStrobel

Die Attribute in der Doku sind als reguläre Ausdrücke zu verstehen.
Man sollte also nicht pin[AD]? o.ä. eingeben, sondern wie in den Beispielen pinD4 ...

Gruss
   Stefan

MarkusHiba

Mit freundlichen Grüßen

MarkusHiba

sebixvi

Hallo zusammen,

ich bekomme ArduCounter mit Ser2Net partout nicht ans laufen:

Bisher habe ich ArduCounter per USB an dem Rechner angeschlossen gehabt, auf dem auch FHEM lief. Jetzt sind beide Rechner getrennt. Auf dem PC mit angeschlossenem ArduCounter läuft ser2net mit folgender Config:

2001:telnet:600:/dev/ttyACM0:57600 8DATABITS NONE 1STOPBIT

Per Telnet kann ich ihn auch erreichen:


root@griphook:/home/pi# telnet 192.168.0.200 2001
Trying 192.168.0.200...
Connected to 192.168.0.200.
Escape character is '^]'.

ArduCounter V1.8Hello


Die Definition in fhem dürfte auch in Ordnung sein:

In fhem ist als device 192.168.0.200:2001 eingetragen. Trotzdem wechselt der Status nur zwichen "disconnected" und "open". Im Buffer sehe ich entweder nichts oder sechs fragezeichen, so, alsob die Baudrate der seriellen Schnittstelle nicht richtig eingestellt wäre.

Kann mir jemand helfen? Ich habe per Ser2net noch eine Viesmann-Heizung angebunden mit VCONTROL, das läuft tadellos.

Hat jemand eine Idee?

Danke,
Sebastian

StefanStrobel

Hallo sebixvi,

für Hilfe bei der Fehlersuche solltest Du verbose auf 5 setzen und dann einen Ausschnitt aus dem Log posten.
Aber in Deinem Fall würde ich als erstes auf eine neuere Version der Firmware und des Moduls gehen. Eventuell sind dann schon alle Probleme gelöst.

Den ArduCounter kannst Du inzwischen auch direkt auf einem ESP32 oder ESP8266 laufen lassen. Dann brauchst Du nicht mal ser2net sondern kannst ihn direkt per WLAN erreichen.

Gruß
    Stefan