I am using WeMos D1 Mini Pro to control multiple relays. I found out that during start up the relay connected to pin D3 and D8 would switch between on and off a couple times in a very short interval. I found out that the two pins are related to boot loader configuration.

Question is: Is there any way to prevent the relay from "blinking"? Is there a way to disable the relay output until boot loader finish it's stuff? Because this behavior only occur once every boot up.

  • GPIO0 comes in HIGH, so keep it HIGH in setup() and after to avoid state changes (use NC if needed). GPIO15 should not get to full HIGH voltage during boot, so connecting the relay via diode or resistor, or using a high-value shunt resistor to divide the current, or using a cap to suck up that "inrush" should be enough to allow switching while preventing boot state toggling. – dandavis Aug 10 '17 at 19:41

A 74HC244 can be used to buffer up to 8 outputs and isolate them at will from the ESP8266. It can also be used for inputs as well if you connect gates the other way around. One additional IO line is required to control it.

  • Thank you for the input. That might work but I am looking more toward a software solution if there is any =) – Albert Tobing Aug 10 '17 at 17:45
  • No, there is no software solution. Any software you install runs after the bootloader, and you can't do anything to the bootloader except select the boot source using the troublesome GPIO pins you have already identified. – Majenko Aug 10 '17 at 21:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.