ESP32 - add fewtures to existing esp32 sketch that will allow to control up to 16 Lan Relays by UDP-RS232-485 MQTT commands by press web buttons also matrix keypad buttons

Job ID: 32842668

Budget: $30 – $250 USD

We have a working sketch that can send URL commands to LAN RELAYS- Sonoff-Tasmota.
What i need - to add features that allow to control another Lan relays by
- TCP UDP (SR-201)
- RS232 485
- MQTT messages to topics
So - need to add new features like "Button Logic" and "Button Type".

Button Type:
1- (EXISTING FEATURE) Send URL (TCP/IP) commands to Lan relays (TASMOTA) on each button press, also for button release
2- Send RS232(485) commands on each button press, also for button release
3- Send UDP (TCP) commands on each button press, also for button release
4- Publish MQTT (message ON OFF to topic) on each button press, also for button release

Button Logic:
1- Permanent
2- Momentary
3- Timer
4- Hold Delay (like permanent+timer but with push delay - 3sec for ON and OFF)
Related categories: AJAX Microcontroller C++ Programming Arduino STM32