HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von papa » 24.09.2018, 13:42

stan23 hat geschrieben:
24.09.2018, 13:14
Super :)

Bleibt noch die Frage was die CCU dazu sagt.
Der kann ich ja nicht beibringen dass das Gerät neuerdings Tasterkanäle hat.

Dann muss ich vielleicht doch eine Mischung mit Jérômes UNI-SenAct machen?
Bzw. den SenAct mit papas Methode des Polling ohne Interrupts?
Für die CCU brauchst Du eine neue Gerätebeschreibung mit 2 Tasterkanälen (1&2) und 2 Schaltkanälen (3&4). In meinem Repo gibt es nur das FHEM Modul.
Anfragen zur AskSin++ werden nur im Forum beantwortet

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von jp112sdl » 24.09.2018, 14:31

papa hat geschrieben:
24.09.2018, 13:42
stan23 hat geschrieben:
24.09.2018, 13:14
Super :)

Bleibt noch die Frage was die CCU dazu sagt.
Der kann ich ja nicht beibringen dass das Gerät neuerdings Tasterkanäle hat.

Dann muss ich vielleicht doch eine Mischung mit Jérômes UNI-SenAct machen?
Bzw. den SenAct mit papas Methode des Polling ohne Interrupts?
Für die CCU brauchst Du eine neue Gerätebeschreibung mit 2 Tasterkanälen (1&2) und 2 Schaltkanälen (3&4). In meinem Repo gibt es nur das FHEM Modul.
Ja, du wirst eine Custom-XML benötigen.

Versuchs einfach mal mit Anpassungen in der hb-uni-senact-4-4-rc.xml:
- Zeile 49 -> count="2"
- Zeile 69 -> index="3" count="2"

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Benutzeravatar
stan23
Beiträge: 2040
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 585 Mal
Danksagung erhalten: 336 Mal
Kontaktdaten:

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von stan23 » 25.09.2018, 05:48

Also wenn ich für den ATmega328 kompiliere, gibt es keine Fehler.

Mit dem ATmega32 via Mighty Core kommt immer noch:

Code: Alles auswählen

"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega32 -DF_CPU=8000000L -DARDUINO=10805 -DARDUINO_AVR_ATmega32 -DARDUINO_ARCH_AVR   "-IC:\Users\marco\AppData\Local\Arduino15\packages\MightyCore\hardware\avr\2.0.1\cores\MCUdude_corefiles" "-IC:\Users\marco\AppData\Local\Arduino15\packages\MightyCore\hardware\avr\2.0.1\variants\bobuino" "-IC:\Users\marco\Documents\Arduino\libraries\AskSinPP-master" "-IC:\Users\marco\Documents\Arduino\libraries\Low-Power-1.7" "C:\Users\marco\AppData\Local\Temp\arduino_build_74314\sketch\HM-LC-Sw2-FM-Cust.ino.cpp" -o "C:\Users\marco\AppData\Local\Temp\arduino_build_74314\preproc\ctags_target_for_gcc_minus_e.cpp"
In file included from C:\Users\marco\Documents\Arduino\libraries\AskSinPP-master/Activity.h:14:0,

                 from C:\Users\marco\Documents\Arduino\libraries\AskSinPP-master/AskSinPP.h:41,
                 from C:\Users\marco\Eigene Projekte\Homematic AskSinPP\AskSinPP-v3\HM-LC-Sw2-FM-Cust\HM-LC-Sw2-FM-Cust.ino:15:

C:\Users\marco\Documents\Arduino\libraries\Low-Power-1.7/LowPower.h:148:6: error: #error "Please ensure chosen MCU is either 168, 328P, 32U4, 2560 or 256RFR2."

Bibliothek AskSinPP-master in Version 2.1.5 im Ordner: C:\Users\marco\Documents\Arduino\libraries\AskSinPP-master  wird verwendet
Bibliothek Low-Power-1.7 in Version 1.6 im Ordner: C:\Users\marco\Documents\Arduino\libraries\Low-Power-1.7  wird verwendet
exit status 1
Fehler beim Kompilieren für das Board ATmega32.
Welche CPU soll ich einstellen?

EDIT:
https://github.com/eaconner/ATmega32-Arduino gibt es nicht mehr, aber http://openhardware.ro/using-atmega32-arduino-ide/ hat noch eine Kopie.
Das probiere ich heute Abend.
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von papa » 25.09.2018, 09:00

Mit dem Mighty Core habe ich nie gearbeitet. Der scheint andere Defines zu setzen. Ich habe ARDUINO_ARCH_ATMEGA32 und in Deiner Kommandozeile steht aber ARDUINO_AVR_ATmega32. Das ist leider nicht das gleiche.

Am besten Du nimmst die im Readme verlinkte Software für den ATMega32. MIST das gibt es nicht mehr auf GitHub. Na toll :evil:

Dann versuch mal das Define im Code überall auszutauschen. Oder Du nimmst einfach die fertige Firmware aus dem FHEM Forum.
Anfragen zur AskSin++ werden nur im Forum beantwortet

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von papa » 25.09.2018, 09:06

Du kannst aber auch einfach ganz oben in Sketch mal folgendes einfügen:

Code: Alles auswählen

#ifdef ARDUINO_AVR_ATmega32
  #define ARDUINO_ARCH_ATMEGA32
#endif
Anfragen zur AskSin++ werden nur im Forum beantwortet

Benutzeravatar
stan23
Beiträge: 2040
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 585 Mal
Danksagung erhalten: 336 Mal
Kontaktdaten:

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von stan23 » 25.09.2018, 09:08

Danke, probiere ich heute Abend.
Inzwischen habe ich mit Google eine Kopie des ATmega32 Repositories gefunden. Eines davon muss klappen :-)
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

Benutzeravatar
stan23
Beiträge: 2040
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 585 Mal
Danksagung erhalten: 336 Mal
Kontaktdaten:

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von stan23 » 25.09.2018, 20:22

papa hat geschrieben:
25.09.2018, 09:06
Du kannst aber auch einfach ganz oben in Sketch mal folgendes einfügen:

Code: Alles auswählen

#ifdef ARDUINO_AVR_ATmega32
  #define ARDUINO_ARCH_ATMEGA32
#endif
Es braucht scheinbar mindestens ein

Code: Alles auswählen

#define ARDUINO_ARCH_ATMEGA32 1
sonst beklagt sich der Compiler:

Code: Alles auswählen

C:\Users\marco\Documents\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:150:46: error: operator 'or' has no right operand
 #if ARDUINO_ARCH_AVR or ARDUINO_ARCH_ATMEGA32
                                              ^
Aber dennoch bekomme ich das ARDUINO_ARCH_AVR nicht weg. build.arch wird scheinbar automatisch mit dem Verzeichnis avr gesetzt:
C:\Users\marco\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\platform.txt

Vielleicht ändere ich in der AskSin überall

Code: Alles auswählen

#ifdef ARDUINO_ARCH_AVR
in

Code: Alles auswählen

#ifdef ARDUINO_ARCH_AVR && ifndef ARDUINO_ATMEGA32
oder so ähnlich.
Morgen...
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von papa » 25.09.2018, 20:50

stan23 hat geschrieben:
25.09.2018, 20:22
Aber dennoch bekomme ich das ARDUINO_ARCH_AVR nicht weg. build.arch wird scheinbar automatisch mit dem Verzeichnis avr gesetzt:
C:\Users\marco\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\platform.txt

Vielleicht ändere ich in der AskSin überall

Code: Alles auswählen

#ifdef ARDUINO_ARCH_AVR
in

Code: Alles auswählen

#ifdef ARDUINO_ARCH_AVR && ifndef ARDUINO_ATMEGA32
Das darf da auch nicht weg - ist auch so ok, da der ATMEGA32 ja auch ein AVR ist.
Anfragen zur AskSin++ werden nur im Forum beantwortet

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von papa » 25.09.2018, 21:11

Ah - Du meinst die enable/disable Methoden in der AlarmClock. Die kannst Du wie folgt ändern - dann wird erst auf den Mega32 getestet.

Code: Alles auswählen

  void disable () {
  #ifdef ARDUINO_ARCH_ATMEGA32
    TIMSK &= ~_BV(TOIE1);
  #elif defined(ARDUINO_ARCH_AVR)
    TIMSK1 &= ~_BV(TOIE1);
  #elif defined(ARDUINO_ARCH_STM32F1)
    Timer2.detachInterrupt(TIMER_CH2);
  #endif
  }

  void enable () {
  #ifdef ARDUINO_ARCH_ATMEGA32
    TIMSK |= _BV(TOIE1);
  #elif defined(ARDUINO_ARCH_AVR)
    TIMSK1 |= _BV(TOIE1);
  #elif defined(ARDUINO_ARCH_STM32F1)
    Timer2.attachInterrupt(TIMER_CH2,callback);
  #endif
  }
Anfragen zur AskSin++ werden nur im Forum beantwortet

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: HB-UNI-SenAct-4-4 auf HM-LC-SW2-FM?

Beitrag von papa » 25.09.2018, 21:36

Hab die Änderungen in AlarmClock.h gerade eingecheckt. Einfach mal probieren.
Anfragen zur AskSin++ werden nur im Forum beantwortet

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“