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

StefanStrobel

Hallo ansgru,

ohne den Text im Detail abgeglichen zu haben sieht es nach einer Verbesserung aus, also nur zu.

Gruss
   Stefan

my-engel

Hallo Stefan,

habe nun die Sourcen mit PlatformIO für den ProMini3.3V8MHz kompiliert und auf den ProMini geflasht.
musste den UART dann von 57600 auf 115200 hochstellen. Sollte für mein Verständnis ja auch so sein.
In FHEM ist der Arducounter auch opened nur kommen keine Impulse mehr rein.
Im Log kommt:
2021.09.24 19:20:28.429 3: ArducounterMapleCUN2 device opened
2021.09.24 19:20:32.435 3: ArducounterMapleCUN2: sending h(ello) to device to ask for version
2021.09.24 19:20:32.455 3: attribute board is set to NANO and is overwriting board UNO reported by device
2021.09.24 19:20:32.456 3: ArducounterMapleCUN2: device sent hello: ArduCounter V4.26 on UNO compiled Sep 24 2021 18:36:19 Hello
2021.09.24 19:20:33.459 3: ArducounterMapleCUN2: ConfigureDevice: send config
2021.09.24 19:20:33.466 3: ArducounterMapleCUN2: ConfigurePin creates command 4,2,1,25a
2021.09.24 19:20:33.469 3: ArducounterMapleCUN2: ConfigurePin creates command 5,2,1,25a
2021.09.24 19:20:33.471 3: ArducounterMapleCUN2: Invalid interval specification
2021.09.24 19:20:33.471 3: ArducounterMapleCUN2: ConfigureVerboseLevels creates command 1,0,0,0,0v
2021.09.24 19:20:33.495 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.24 19:20:33.496 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1


und mit "get ArducounterMapleCUN2 info" kommt:
Status: ArduCounter V4.26 on UNO compiled Sep 24 2021 18:36:19
interval config: 30,60,2,2,50,4
verbose config: 0,0,0,0,0
EEPROM Config: 30,60,2,2,50,4i0,0,0,0,0v
Next report in 13055 milliseconds


die gesetzten Attribute sind:
attr ArducounterMapleCUN2 board NANO
attr ArducounterMapleCUN2 disable 0
attr ArducounterMapleCUN2 enableHistory 1
attr ArducounterMapleCUN2 group Arducounter
attr ArducounterMapleCUN2 pinD4 falling pullup min 25
attr ArducounterMapleCUN2 pinD5 falling pullup min 25
attr ArducounterMapleCUN2 readingPulsesPerUnitD4 1


Hast Du da eine Idee was hier falsch läuft?

VG Uwe

Edit1: die platformio.ini habe ich so umgebaut...

Edit2:  wenn ich den Monitor in PlatformIO öffne, erscheint dort:
> Executing task: C:\Users\User\.platformio\penv\Scripts\platformio.exe device monitor --environment promini_3.3V_8MHz <

--- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
--- More details at http://bit.ly/pio-monitor-filters
--- Miniterm on COM6  115200,8,N,1 ---
--- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---

M no config in EEPROM

ArduCounter V4.26 on UNO compiled Sep 25 2021 10:04:54 Hello
N499,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21       
I30,60,2,2,50,4
V0,0,0,0,0

ist dort das " C, I, V " richtig?


StefanStrobel

Hallo Uwe,

probier doch zur Sicherheit mal meine aktuelle Modul-Version und stell verbose für das Gerät auf 5.
Dann sollte das Log etwas deutlicher zeigen, woran es hängt.

Gruss
   Stefan

StefanStrobel

Ergänzung: der code auf Github war evt. nicht ganz aktuell.
Ich habe jetzt den Pro mini in der platformio.ini ergänzt und nochmal gepusht.

Gruss
   Stefan

my-engel

Hallo Stefan,

Danke für deine Mühe. Habe die Sourcen neu heruntergeladen und mit PlatformIO neu geflasht.
Auch die neu Modul-Version ist eingespielt aber es hat sich nichts geändert.
FHEM Start und anschließend Verbose 5
FHEM Start:

2021.09.25 18:36:04.172 3: ArducounterMapleCUN2: Notify called with events: MODIFIED ArducounterMapleCUN2, open device and set timer to send hello to device
2021.09.25 18:36:04.172 3: Opening ArducounterMapleCUN2 device 192.168.88.112:2325
2021.09.25 18:36:04.235 3: ArducounterMapleCUN2 device opened
2021.09.25 18:36:08.243 3: ArducounterMapleCUN2: sending h(ello) to device to ask for version
2021.09.25 18:36:08.274 3: attribute board is set to NANO and is overwriting board PRO reported by device
2021.09.25 18:36:08.274 3: ArducounterMapleCUN2: device sent hello: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
2021.09.25 18:36:09.278 3: ArducounterMapleCUN2: ConfigureDevice: send config
2021.09.25 18:36:09.279 3: ArducounterMapleCUN2: ConfigurePin creates command 5,2,1,25a
2021.09.25 18:36:09.281 3: ArducounterMapleCUN2: ConfigurePin creates command 4,2,1,25a
2021.09.25 18:36:09.283 3: ArducounterMapleCUN2: Invalid interval specification
2021.09.25 18:36:09.284 3: ArducounterMapleCUN2: ConfigureVerboseLevels creates command 1,0,0,0,0v
2021.09.25 18:36:09.308 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.25 18:36:09.309 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.25 18:36:11.579 3: ArducounterMapleCUN2: Sending info command to device
2021.09.25 18:36:35.901 3: ArducounterMapleCUN2: Timeout2 in ReadAnswer
2021.09.25 18:36:37.914 3: ArducounterMapleCUN2: device didn't reply to k(eeepAlive), count=1
2021.09.25 18:36:41.761 3: ArducounterMapleCUN2: Timeout2 in ReadAnswer
2021.09.25 18:36:47.914 3: ArducounterMapleCUN2: device didn't reply to k(eeepAlive), count=2
2021.09.25 18:36:52.830 3: ArducounterMapleCUN2: Sending info command to device
2021.09.25 18:37:49.008 3: ArducounterMapleCUN2: device didn't reply to k(eeepAlive), count=1
2021.09.25 18:39:44.967 3: ArducounterMapleCUN2: device didn't reply to k(eeepAlive), count=1
2021.09.25 18:40:55.822 3: ArducounterMapleCUN2: Sending info command to device

Verbose 5:

2021.09.25 18:46:33.450 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:46:33.456 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:46:43.457 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:46:43.458 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:46:43.464 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:46:54.141 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:46:54.142 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:46:54.179 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:47:04.145 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:47:04.146 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:47:04.153 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:47:16.654 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:47:16.655 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:47:16.817 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:47:26.656 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:47:26.656 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:47:26.661 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:47:36.662 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:47:36.663 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:47:36.669 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:47:46.666 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:47:46.667 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:47:46.673 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:47:56.668 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:47:56.668 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:47:56.673 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:48:06.673 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:48:06.679 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:48:06.686 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:48:19.783 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:48:19.784 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:48:19.822 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:48:29.789 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:48:29.790 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:48:29.796 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:48:39.790 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:48:39.791 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:48:40.020 5: ArducounterMapleCUN2: device sent alive response: A
2021.09.25 18:48:49.794 5: ArducounterMapleCUN2: sending k(eepAlive) to device
2021.09.25 18:48:49.794 5: DevIo_SimpleWrite ArducounterMapleCUN2: 1,10k.
2021.09.25 18:48:49.800 5: ArducounterMapleCUN2: device sent alive response: A


wenn ich die nano.hex aufspiele dann funktioniert es, aber die Aktualisierung ist dann 2 Minuten...

VG
Uwe

Edit1:
habe jetzt zum Test den ProMini mit einem FTDI an ein Test-FHEM per USB angeschlossen
mit aktualisiertem Modul usw. Es verhält sich ähnlich...
FHEM Start mit Verbose 5:

2021.09.25 19:41:27 3: ArducounterMapleCUN2: disable attribute cleared
2021.09.25 19:41:38 3: ArducounterMapleCUN2: Notify called with events: INITIALIZED, open device and set timer to send hello to device
2021.09.25 19:41:38 4: ArducounterMapleCUN2: trying to open connection to /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@115200
2021.09.25 19:41:38 3: Opening ArducounterMapleCUN2 device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0
2021.09.25 19:41:38 3: Setting ArducounterMapleCUN2 serial parameters to 115200,8,N,1
2021.09.25 19:41:38 3: ArducounterMapleCUN2 device opened
2021.09.25 19:41:38 5: ArducounterMapleCUN2: ArduCounter_Open succeeded in callback
2021.09.25 19:41:38 5: ArducounterMapleCUN2: ArduCounter_Open succeeded immediately
2021.09.25 19:42:40 5: ArducounterMapleCUN2: sending h(ello) to device to ask for version
2021.09.25 19:42:40 5: SW: h.
2021.09.25 19:42:44 5: ArducounterMapleCUN2: HelloTimeout: DeviceName in hash is /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@115200
2021.09.25 19:42:44 3: ArducounterMapleCUN2: device didn't reply to h(ello). Is the right sketch flashed? Serial speed was 115200. Trying again with @38400
2021.09.25 19:42:44 5: ArducounterMapleCUN2: HelloTimeout: DeviceName in hash is set to /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@38400
2021.09.25 19:42:44 4: ArducounterMapleCUN2: trying to open connection to /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@38400
2021.09.25 19:42:44 3: Opening ArducounterMapleCUN2 device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0
2021.09.25 19:42:44 3: Setting ArducounterMapleCUN2 serial parameters to 38400,8,N,1
2021.09.25 19:42:44 3: ArducounterMapleCUN2 device opened
2021.09.25 19:42:44 5: ArducounterMapleCUN2: ArduCounter_Open succeeded in callback
2021.09.25 19:42:44 5: ArducounterMapleCUN2: ArduCounter_Open succeeded immediately
2021.09.25 19:42:49 5: ArducounterMapleCUN2: sending h(ello) to device to ask for version
2021.09.25 19:42:49 5: SW: h.
2021.09.25 19:42:51 5: ArducounterMapleCUN2: HelloTimeout: DeviceName in hash is /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@38400
2021.09.25 19:42:51 3: ArducounterMapleCUN2: device didn't reply to h(ello). Is the right sketch flashed? Serial speed was 38400. Trying again with @115200
2021.09.25 19:42:51 5: ArducounterMapleCUN2: HelloTimeout: DeviceName in hash is set to /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@115200
2021.09.25 19:42:51 4: ArducounterMapleCUN2: trying to open connection to /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@115200
2021.09.25 19:42:51 3: Opening ArducounterMapleCUN2 device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0
2021.09.25 19:42:51 3: Setting ArducounterMapleCUN2 serial parameters to 115200,8,N,1
2021.09.25 19:42:51 3: ArducounterMapleCUN2 device opened
2021.09.25 19:42:51 5: ArducounterMapleCUN2: ArduCounter_Open succeeded in callback
2021.09.25 19:42:52 5: ArducounterMapleCUN2: ArduCounter_Open succeeded immediately
2021.09.25 19:42:53 3: ArducounterMapleCUN2: device: no config in EEPROM
2021.09.25 19:42:53 5: attribute board is set to NANO and is overwriting board PRO reported by device
2021.09.25 19:42:53 5: ArducounterMapleCUN2: device sent hello: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
2021.09.25 19:42:53 5: ArducounterMapleCUN2: Initialize device clock offset to 1632591773.48662
2021.09.25 19:42:53 5: ArducounterMapleCUN2: Device Time 0.499, Offset 1632591.773, Drift 0.000s in 0.000s
2021.09.25 19:42:53 4: ArducounterMapleCUN2: device sent time info: N499,0B499,0
2021.09.25 19:42:53 4: ArducounterMapleCUN2: device sent interval config 30,60,2,2,50,4
2021.09.25 19:42:53 4: ArducounterMapleCUN2: device sent devVerbose 0,0,0,0,0
2021.09.25 19:42:55 5: ArducounterMapleCUN2: ConfigureDevice: send config
2021.09.25 19:42:55 5: ArducounterMapleCUN2: ConfigurePin creates command 4,2,1,25a
2021.09.25 19:42:55 5: SW: 4,2,1,25a.
2021.09.25 19:42:55 5: ArducounterMapleCUN2: ConfigurePin creates command 5,2,1,25a
2021.09.25 19:42:55 5: SW: 5,2,1,25a.
2021.09.25 19:42:55 5: ArducounterMapleCUN2: ConfigureDevice: no pins in running config without attribute in Fhem
2021.09.25 19:42:55 3: ArducounterMapleCUN2: Invalid interval specification
2021.09.25 19:42:55 5: ArducounterMapleCUN2: ConfigureVerboseLevels creates command 1,0,0,0,0v
2021.09.25 19:42:55 5: SW: 1,0,0,0,0v.
2021.09.25 19:42:55 5: SW: s.

get ArducounterMapleCUN2 info:

2021.09.25 19:47:25 5: ArducounterMapleCUN2: Sending info command to device
2021.09.25 19:47:25 5: SW: s.
2021.09.25 19:47:25 5: ArducounterMapleCUN2: ReadAnswer called
2021.09.25 19:47:25 4: ArducounterMapleCUN2: device: Status: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38
2021.09.25 19:47:25 4: ArducounterMapleCUN2: device sent interval config 30,60,2,2,50,4
2021.09.25 19:47:25 4: ArducounterMapleCUN2: device sent devVerbose 0,0,0,0,0
2021.09.25 19:47:25 4: ArducounterMapleCUN2: device: no config in EEPROM
2021.09.25 19:47:25 4: ArducounterMapleCUN2: device: Next report in 28077 milliseconds
2021.09.25 19:47:25 5: ArducounterMapleCUN2: ReadAnswer matched Next report in.*seconds


StefanStrobel

Hallo Uwe,

sehe ich das richtig, dass Dein Board einen Atmega 168 statt einem 328p hat?
Dann muss ich die erlaubten Pins noch im Sketch definieren ...

Gruss
   Stefan

my-engel

Hallo Stefan,

habe auf 2 verschiedenen Board´s getestet und beide haben einen 328P.

VG Uwe

StefanStrobel

Hallo Uwe,

ich kann es leider bei mir nicht testen. Wenn ich die Firmware für einen Pro übersetze, läuft die auf einem Nano nicht. Zumindest kann ich über die Konsole nicht mit ihm reden.
Könntest Du bei Dir mal das fehlende interval-Attribut ergänzen und dann mit set "raw" den Befehl h an den Arduino schicken?
(oder über das Terminal in VSCode/PlatformIO - einfach ein h eintippen)
Da sollte der Arduino unter anderem sagen, welche Eingänge er erlaubt.
Für mich sah es so aus, als ob die a-Befehle zum Definieren eines Eingangs von der Firmware zurückgewiesen wurden.
Du könntest auch versuchen zum Testen auch die Eingänge über ein Terminal zusetzen:
Die Kommandos, die Du im Log siehst, z.B.
5,2,1,25a
definieren die Eingänge...

Gruss
   Stefan

StefanStrobel

Ergänzung:
es würde auch noch helfen, das serielle Echo auf den Wert 2 anzuschalten. Entweder direkt über das Terminal mit dem v-Befehl (zweiter Parameter, also z.B 0,2,0,0,0v) oder von Fhem aus über das Attribut enableSerialEcho (auf 2)


Gruss
   Stefan

my-engel

Hallo Stefan,

ging leider nicht eher...,
habe das "interval 60 300" gesetzt und set "raw" h:

2021.09.28 17:23:17 4: ArducounterMapleCUN2: set raw h called
2021.09.28 17:23:17 5: SW: h.
2021.09.28 17:23:17 5: attribute board is set to NANO and is overwriting board PRO reported by device
2021.09.28 17:23:17 5: ArducounterMapleCUN2: device sent hello: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
2021.09.28 17:23:17 5: ArducounterMapleCUN2: Device Time 822.79, Offset 1632841.775, Drift 0.025s in 822.316s, 0.00%
2021.09.28 17:23:17 4: ArducounterMapleCUN2: device sent time info: N822790,0B499,0
2021.09.28 17:23:17 4: ArducounterMapleCUN2: device sent interval config 30,60,2,2,50,4
2021.09.28 17:23:17 4: ArducounterMapleCUN2: device sent devVerbose 0,0,0,0,0
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigureDevice: send config
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigurePin creates command 4,2,1,25a
2021.09.28 17:23:18 5: SW: 4,2,1,25a.
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigurePin creates command 5,2,1,25a
2021.09.28 17:23:18 5: SW: 5,2,1,25a.
2021.09.28 17:23:18 5: ArducounterMapleCUN2: PinNumber called from ConfigureDevice returns 17 for A3
2021.09.28 17:23:18 5: ArducounterMapleCUN2: PinNumber called from ParsePin returns 17 for A3
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigurePin creates command 17,3,1,4,27,120,220a
2021.09.28 17:23:18 5: SW: 17,3,1,4,27,120,220a.
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigurePin creates command 6,3,0,2a
2021.09.28 17:23:18 5: SW: 6,3,0,2a.
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigureDevice: no pins in running config without attribute in Fhem
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigureIntervals creates command 60,300,0,0,50,4i
2021.09.28 17:23:18 5: SW: 60,300,0,0,50,4i.
2021.09.28 17:23:18 5: ArducounterMapleCUN2: ConfigureVerboseLevels creates command 1,0,0,0,0v
2021.09.28 17:23:18 5: SW: 1,0,0,0,0v.
2021.09.28 17:23:18 5: SW: s.
2021.09.28 17:23:18 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.28 17:23:18 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.28 17:23:18 3: ArducounterMapleCUN2: device: Error: command i missing parameter number 2
2021.09.28 17:23:18 3: ArducounterMapleCUN2: device: Error: command i missing parameter number 2
2021.09.28 17:23:18 4: ArducounterMapleCUN2: device: Status: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38
2021.09.28 17:23:18 4: ArducounterMapleCUN2: device sent interval config 30,60,2,2,50,4
2021.09.28 17:23:18 4: ArducounterMapleCUN2: device sent devVerbose 0,0,0,0,0
2021.09.28 17:23:18 4: ArducounterMapleCUN2: device: no config in EEPROM
2021.09.28 17:23:18 4: ArducounterMapleCUN2: device: Next report in 16673 milliseconds


dann das Attribut enableSerialEcho (auf 2) und wieder set "raw" h:

2021.09.28 17:25:46 5: ArducounterMapleCUN2: Attr called with set ArducounterMapleCUN2 room Kontrollraum
2021.09.28 17:26:14 5: ArducounterMapleCUN2: Attr called with set ArducounterMapleCUN2 enableSerialEcho 2
2021.09.28 17:26:14 5: ArducounterMapleCUN2: ConfigureVerboseLevels creates command 1,2,0,0,0v
2021.09.28 17:26:14 5: SW: 1,2,0,0,0v.
2021.09.28 17:26:58 4: ArducounterMapleCUN2: set raw h called
2021.09.28 17:26:59 5: SW: h.
2021.09.28 17:26:59 5: attribute board is set to NANO and is overwriting board PRO reported by device
2021.09.28 17:26:59 5: ArducounterMapleCUN2: device sent hello: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
2021.09.28 17:26:59 5: ArducounterMapleCUN2: Device Time 1044.389, Offset 1632841.775, Drift 0.104s in 1043.994s, 0.01%
2021.09.28 17:26:59 4: ArducounterMapleCUN2: device sent time info: N1044389,0B499,0
2021.09.28 17:26:59 4: ArducounterMapleCUN2: device sent interval config 30,60,2,2,50,4
2021.09.28 17:26:59 4: ArducounterMapleCUN2: device sent devVerbose 0,0,0,0,0
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigureDevice: send config
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigurePin creates command 5,2,1,25a
2021.09.28 17:27:00 5: SW: 5,2,1,25a.
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigurePin creates command 4,2,1,25a
2021.09.28 17:27:00 5: SW: 4,2,1,25a.
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigurePin creates command 6,3,0,2a
2021.09.28 17:27:00 5: SW: 6,3,0,2a.
2021.09.28 17:27:00 5: ArducounterMapleCUN2: PinNumber called from ConfigureDevice returns 17 for A3
2021.09.28 17:27:00 5: ArducounterMapleCUN2: PinNumber called from ParsePin returns 17 for A3
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigurePin creates command 17,3,1,4,27,120,220a
2021.09.28 17:27:00 5: SW: 17,3,1,4,27,120,220a.
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigureDevice: no pins in running config without attribute in Fhem
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigureIntervals creates command 60,300,0,0,50,4i
2021.09.28 17:27:00 5: SW: 60,300,0,0,50,4i.
2021.09.28 17:27:00 5: ArducounterMapleCUN2: ConfigureVerboseLevels creates command 1,2,0,0,0v
2021.09.28 17:27:00 5: SW: 1,2,0,0,0v.
2021.09.28 17:27:00 5: SW: s.
2021.09.28 17:27:00 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.28 17:27:00 3: ArducounterMapleCUN2: device: Error: command a Illegal pin specification 1
2021.09.28 17:27:00 3: ArducounterMapleCUN2: device: Error: command i missing parameter number 2
2021.09.28 17:27:00 3: ArducounterMapleCUN2: device: Error: command i missing parameter number 2
2021.09.28 17:27:00 4: ArducounterMapleCUN2: device: Status: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38
2021.09.28 17:27:00 4: ArducounterMapleCUN2: device sent interval config 30,60,2,2,50,4
2021.09.28 17:27:00 4: ArducounterMapleCUN2: device sent devVerbose 0,0,0,0,0
2021.09.28 17:27:00 4: ArducounterMapleCUN2: device: no config in EEPROM
2021.09.28 17:27:00 4: ArducounterMapleCUN2: device: Next report in 5006 milliseconds


habe den Pro Mini aktuell am USB des Test-FHEM.
hier noch das List:

Internals:
   Board      NANO
   BoardDet   
   DEF        /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@115200
   DeviceName /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0@115200
   FD         5
   FUUID      614ee781-f33f-0edb-ff98-c6a184a1fbb7235d
   FVERSION   98_ArduCounter.pm:0.142330/2017-05-09
   Initialized 1
   LASTOPEN   1632841773.1233
   NAME       ArducounterMapleCUN2
   NOTIFYDEV  global
   NR         703
   NTFY_ORDER 50-ArducounterMapleCUN2
   PARTIAL   
   STATE      opened
   SketchCompile Sep 25 2021 18:29:38
   TYPE       ArduCounter
   VersionFirmware 4.26
   VersionModule 7.31 - 11.6.2020
   allowedPins 2,3,4,5,6,7,8,9,10,11,12,13,14,A0,15,A1,16,A2,17,A3,18,A4,19,A5,20,A6,21,A7
   buffer     
   deviceBooted 1632841775.22219
   devioLoglevel 3
   nextOpenDelay 60
   READINGS:
     2021-09-28 17:09:33   state           opened
   runningCfg:
     I          30,60,2,2,50,4
     V          0,0,0,0,0
Attributes:
   board      NANO
   disable    0
   enableHistory 1
   enableSerialEcho 2
   group      Arducounter
   interval   60 300
   pinA3      rising pullup min 4 analog out 27 threshold 120,220
   pinD4      falling pullup min 25
   pinD5      falling pullup min 25
   pinD6      rising
   readingPulsesPerUnitD4 1
   room       Kontrollraum
   userReadings WMZ_2.OG {ReadingsVal("ArducounterMapleCUN2","calcCounterD4",0)/1 + ReadingsNum("WMZ_2.OG_Start","Startwert",0)}
   userattr   readingPulsesPerUnitD4
   verbose    5


ich hoffe das hilft.

VG Uwe

StefanStrobel

Hallo Uwe,

vielen Dank für Deine Hilfe beim Debuggen.
Eigentlich kann es keine große Sache sein, aber irgendwie versteht die Firmware auf dem Mini die Befehle vom Fhem-Modul falsch.
Leider sehe ich das auch bei verbose 5 im Log nur unvollständig.
Könntest Du die Befehle nochmal im Terminal absetzen, damit ich die tatsächliche Antwort von der Firmware zum jeweiligen Befehl sehe?

Das ganze sollte dann eigentlich so aussehen:

--- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
--- More details at http://bit.ly/pio-monitor-filters
--- Miniterm on COM8  115200,8,N,1 ---
--- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---

M no config in EEPROM

ArduCounter V4.26 on NANO compiled Sep 26 2021 15:48:52 Hello
N499,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
I30,60,2,2,50,4
V0,0,0,0,0

Die Zeile mit C2,3,... zeigt der verfügbaren Pins an.

Eingabe: 0,2,0,0,0v

V0,2,0,0,0

danach werden die Eingaben mit D got ... bestätigt.

Eingabe: 4,2,1,25a

D got 4,2,1,25a size 4
D defined P4fp m25   

bedeutet dass pin 4 als falling mit pullup und min 25 definiert wurde.

Eingabe: 5,2,1,25a

D got 5,2,1,25a size 4
D defined P5fp m25

Eingabe: 60,300,0,0,50,4i

D got 60,300,0,0,50,4i size 6
I60,300,0,0,50,4

Eingabe: s

D got 0s size 0

D Status: ArduCounter V4.26 on NANO compiled Sep 26 2021 15:48:52
I60,300,0,0,50,4
V0,2,0,0,0
P4fp m25, DR4C0D0/0T0X0
P5fp m25, DR5C0D0/0T0X0
D no config in EEPROM
D Next report in 50083 milliseconds


da sieht man nochmal die definierten Pins.

Problematisch wird Deine Definition von Pin A3 mit der LED an Pin 27 sein. Ich vermute dass es keinen GPIO Pin 27 gibt. Das erklärt aber noch nicht warum der Rest nicht geht.

Gruss
   Stefan



my-engel

Hallo Stefan,

Danke für die Antwort, konnte leider jetzt erst...
hier jetzt die Ausgabe im Terminal nach 3x Eingabe von h
der N-Wert ändert sich:
M no config in EEPROM

ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
N499,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
I30,60,2,2,50,4
V0,0,0,0,0

ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
N107999,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
I30,60,2,2,50,4
V0,0,0,0,0

ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38 Hello
N120879,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
I30,60,2,2,50,4
V0,0,0,0,0


Eingabe von: 0,2,0,0,0v
keine Reaktion bzw. keine Ausgabe

Eingabe von: 4,2,1,25a
Error: command a Illegal pin specification 1

Eingabe von: 5,2,1,25a
Error: command a Illegal pin specification 1

Eingabe von: 60,300,0,0,50,4i
keine Reaktion bzw. keine Ausgabe

Eingabe von: s
D Status: ArduCounter V4.26 on PRO compiled Sep 25 2021 18:29:38
I30,60,2,2,50,4
V0,0,0,0,0
D no config in EEPROM
D Next report in 24769 milliseconds


Mit dem Pin 27 verstehe ich so, dass dieses der PC4/SDA/PCINT12 im inneren der Platine ist
Der sollte doch eigentlich funktionieren?


VG
Uwe

StefanStrobel

Hallo Uwe,

Pin A4 entspricht nach meinem Verständnis auf dem Uno und vermutlich auch dem Pro Mini dem digitalen Pin D18.
Das Hauptproblem scheint aber die serielle Eingabe zu sein. Aus irgend einem Grund kommen die Zahlen nicht an, wenn Du den Code für den Pro Mini compilierst.
Sowohl das Setzen des serial echo mit dem v-Befehl als auch der a-Befehl sehen die übergebenen Zahlen nicht.
Ich werde mir wohl doch einen Pro Mini bestellen um der Sache auf den Grund zu gehen. Es kann eigentlich nur eine Kleinigkeit sein, aber ohne es selbst testen zu können ist das sehr mühsam.

Klappt es bei Dir denn wenn Du den Code selbst für einen Nano übersetzt? (mal abgesehen von dem falschen millis-Timer)

Gruss
   Stefan

my-engel

Hallo Stefan,

war jetzt etwas tricky, da PlatformIO das Board zum flashen prüft und
man so nicht die Firmware von anderen Boards (Nano) direkt flashen kann.
Habe es aber hinbekommen und den Code für den Nano selbst kompiliert...
es funktioniert.

den ProMini mit NANO geflasht:
M no config in EEPROM

ArduCounter V4.26 on NANO compiled Oct  2 2021 13:44:56 Hello
N499,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
I30,60,2,2,50,4
V0,0,0,0,0
V0,2,0,0,0
D got 4,2,1,25a size 4
D defined P4fp m25
D got 5,2,1,25a size 4
D defined P5fp m25
D got 60,300,0,0,50,4i size 6
I60,300,0,0,50,4
D got 0s size 0

D Status: ArduCounter V4.26 on NANO compiled Oct  2 2021 13:44:56
I60,300,0,0,50,4
V0,2,0,0,0
P4fp m25, DR4C0D0/0T0X0
P5fp m25, DR5C0D0/0T0X0
D no config in EEPROM
D Next report in 27453 milliseconds


den ProMini mit nanoatmega328new geflasht:
M no config in EEPROM

ArduCounter V4.26 on NANO compiled Oct  2 2021 13:44:35 Hello
N499,0B499,0
C2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
I30,60,2,2,50,4
V0,0,0,0,0
V0,2,0,0,0
D got 4,2,1,25a size 4
D defined P4fp m25
D got 5,2,1,25a size 4
D defined P5fp m25
D got 60,300,0,0,50,4i size 6
I60,300,0,0,50,4
D got 0s size 0

D Status: ArduCounter V4.26 on NANO compiled Oct  2 2021 13:44:35
I60,300,0,0,50,4
V0,2,0,0,0
P4fp m25, DR4C0D0/0T0X0
P5fp m25, DR5C0D0/0T0X0
D no config in EEPROM
D Next report in 57030 milliseconds


was wäre denn der Richtige, Nano oder nanoatmega328new?

VG
Uwe

StefanStrobel

soweit ich mich erinnere, ist der Unterschied nur beim Flashen relevant, aber das machst Du ja sowieso anders.
Interessant ist aber dass die Fehler jetzt nicht auftreten.
Irgendwo läuft also etwas schief wenn man für den Pro Mini compiliert.
Ich hab mit einen bestellt. Sollte am Dienstag da sein und dann werde ich den Unterschied schon finden.

Gruss
   Stefan