Одна из проблем - надо 4 АЦП в диапазоне 0-5В. Плюс несколько TTL сигналов о состоянии нагрузок и датчиков. Поскольку АЦП все равно не хватает, то придется ставить корпус чего-то еще. А раз уже чего-то еще, то почему бы не AVR, который закрывает все потребности (да и по факту для i2c не надо level shifter, если мастер - ESP8266 3.3, а AVR - slave). А на долю ESP оставить единый интерфейс с системой, не сильно морочась с его кастомной прошивкой.
Что касается документации по функциям, то по mqtt, как мне кажется, должна быть функция типа "отправить такой-то топик" (поскольку успешность выполнения в данном случае не имеет значения). А по i2c, в принципе, можно использовать сторонний API, если в системе нет других устройств на шине. Но это, опять же, дублирование того, что уже есть. Потому я был бы рад даже просто именам функций без детальной документации по ним, поскольку многие вещи самоочевидны.