ConfigToggleButton invertieren

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

Moderator: Co-Administratoren

Antworten
MBenediktF
Beiträge: 2
Registriert: 29.09.2023, 16:09
System: CCU

ConfigToggleButton invertieren

Beitrag von MBenediktF » 29.09.2023, 16:19

Hallo!

da ich in den Dokumentationen und im Forum keine Antwort gefunden habe, stelle ich meine Frage nun hier:

Ich möchte auf Basis des Projektes HM-LC-SW1-SM_SONOFF_BASIC meine Osram Lightify Steckdosen umrüsten.
Die Hardware dazu habe ich fertig und auch erfolgreich getestet. Nun stehe ich jedoch vor dem Problem, dass der am gerät verbaute Taster HIGH active ist und nicht nicht wie bei allen anderen Projekten LOW active. Um den Taster verwenden zu können, muss ich bei der Konfiguration des ConfigToggleButton diesen Parameter übergeben.

Hier der relevante Code (Quelle: GitHub Beispiel AsksinPP/.../HM-LC-SW1-SM_SONOFF_BASIC):

Code: Alles auswählen

typedef AvrSPI<10, 11, 12, 13> RadioSPI;
typedef AskSin<StatusLed<LED_PIN>, NoBattery, Radio<RadioSPI, 2> > Hal;

// setup the device with channel type and number of channels
typedef MultiChannelDevice<Hal, SwitchChannel<Hal, PEERS_PER_CHANNEL, List0>, 1> SwitchType;

Hal hal;
SwitchType sdev(devinfo, 0x20);
ConfigToggleButton<SwitchType> cfgBtn(sdev);

void initPeerings (bool first) {
  // create internal peerings - CCU2 needs this
  if ( first == true ) {
    HMID devid;
    sdev.getDeviceID(devid);
    for ( uint8_t i = 1; i <= sdev.channels(); ++i ) {
      Peer ipeer(devid, i);
      sdev.channel(i).peer(ipeer);
    }
  }
}

void initModelType () {
  uint8_t model[2];
  sdev.getDeviceModel(model);
  sdev.channels(1);
}

void setup () {
  DINIT(57600, ASKSIN_PLUS_PLUS_IDENTIFIER);
  bool first = sdev.init(hal);
  sdev.channel(1).init(RELAY1_PIN, true);

  buttonISR(cfgBtn, CONFIG_BUTTON_PIN);

  initModelType();
  initPeerings(first);
  sdev.initDone();
}
Weiß jemand, wie ich den Input als High-Active definieren kann?


Danke für eure Hilfe!

Benedikt
Zuletzt geändert von Roland M. am 29.09.2023, 16:31, insgesamt 1-mal geändert.
Grund: Code-Tags eingefügt

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

Re: ConfigToggleButton invertieren

Beitrag von papa » 29.09.2023, 16:37

Sollte wie beim STM32 funktionieren: https://github.com/pa-pa/AskSinPP/blob/ ... SM.ino#L72
Anfragen zur AskSin++ werden nur im Forum beantwortet

MBenediktF
Beiträge: 2
Registriert: 29.09.2023, 16:09
System: CCU

Re: ConfigToggleButton invertieren

Beitrag von MBenediktF » 01.10.2023, 15:20

Genau das habe ich gesucht.

Vielen Dank für die schnelle Antwort und die großartige Arbeit generell!

Antworten

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