Integrating 1 Arduino Uno, 2 Bluetooth modules, 2 phones with one Blynk app interface

The ESP-01 is used as a Wi-Fi module for Arduino etc, but that wasn’t what it was designed for. It’s actually more powerful that nour Arduino, oit just lacks the GPIO ports.

You won’t find any ESP8266 based processor with 12 or more GPIOs. You would need to use an ESP32 instead (although I’m not sure why you would need 12+ GPIO’s for an LED controller).

Switching to an ESP8266 or ESP32 based board from an Arduino Uno + ESP-01 system is very simple. Support for the board needs to be added into the Arduino IDE, but this is a 5 minute job.
A few libraries need to be added, and the code needs to be simplified to remove all of the SoftwareSerial rubbish, but once again that is very simple.

It depends on how you’ve written your code as to how simple it will be to migrate the GPIOs from one board to another. The worst case is that you would need to do a find and replace in your code. The ‘correct’ way to reference GPIOs is to use variable names and have a translation table at the beginning of your code like this:

#define relay_1_pin  4
#define relay_2_pin  5
#define relay_3_pin  13
#define relay_4_pin  14

// later in the code...

digitalWrite (relay_1_pin, LOW);

That way, you can easily re-map the GPIO pins to different uses, or migrate from one board type to another.
If you doi use a NodeMCU at any point then you will find that the board has “D” numbers printed next to the pins rather than GPIO’s. You can use these numbers in the code rather than the corresponding GPIOs (D0 = GPIO16, D1 = GPIO5, D2 = GPIO4 etc), but this makes your code less portable between board types, so best to stick to GPIO numbers and add a note next to the pin definitions in the code so it makes wiring-up the board easier.

Making the move to a proper IoT board that has built-in WiFi is something you won’t regret.

I’m not sure if you’ve read this before…

It doesn’t cover ESP32’s, and if you really do need 12+ GPIO’s the that’s what you’ll need, but hopefully it convinces you that the Arduino + ESP-01 are not the way to go.

Pete.