Sequential GPIO

Hi to the community,

After spending lot of time with custom developments on ESP based devices, I know enjoy to save time with esphome and focus on my projects :+1:

My last Esphome project was to build a device handling 24 gpio outputs, to manage 8 Profalux shutter remote controls (up, stop, down commands)

It’s based on a “D1 mini”, some “pcf8574”, transistors, optocouplers, and it works like a charm.

In my Esphome yaml file, I use 24 internal gpio, and I also use 24 switches with on/delay/off sequence in order to simulate a remote control key press of 500ms (and I’m using these switches in home assistant with covers integration)

My only issue is : when (at least two) remote controls are sending commands at the same time (like close all shutters) the commands are not processed by the shutters… (same thing occurs if I manually do this with remote controls)

My workaround was to do a script in Home Assistant to wait for 1 second between commands to open or close all shutters, but it’s not suitable with Google Assistant for example, and I don’t like workarounds :grin:

Three questions :

  1. Is it natively possible with Esphome to enqueue the commands and execute them sequentially?

If not, I think I have no choice but to do some additionnal programming ?

  1. I realized too lately that Esphome have built-in covers capabilites, should I first convert my gpios/swithes to covers with Esphome?

  2. Does esphome covers have built-in sequential command execution logic?

Thanks a lot for your answers.