Вроде работает... скинул всё в git, проверяйте...
Замучала она меня - всё равно, при переключениях в разные стороны slave/master c доступом по RS-485, TCP одновременно и в комбинациях при переключениях на ходу всего транзактор останавливается, если нет сигналов на линии и замыкал выходы ESP8266 проводками... Но при первом же сигнале на линии RX пошел. Повторить пока не получилось - может у вас будет удачнее и методичнее... Потом догляжу...
Вот как не запутаться в таких связях (?) и все через ESP одновременно:
Два мастера на одной шине RS-485 к одному slave
и уживаются прекрасно. Первый мастер RTU ESP (транзакторы), второй - на TCP у компа - его запросы распределяет ESP на шину RS-485... управление через websocket на ESP...
Это, что на картинке, работало непрерывно <mactime>0x0000000fb59cc6dd</mactime> (0x000000fb59cc6dd/60000000/60 = 18.742072 часов), за это время modbus poll на TCP набрала 200 тысяч транзакций. Потом отключил.