1--й опыт. Проверка работы платы согласования логических уровней.
Обе прошивки мк просто дёрганье ножек и изменение на это состояния светодиода.
Соединение ESP8266 (ножка D1) и Arduino (ножка 12) через конвертер логических уровней на транзисторах, у плат преобразователей входы/выходы подтянуты к высокому уровню через резистор 10кОм.
Передатчиком служила ESP8266, выполнялось изменение логического уровня ножки D1 со скважностью 2, длительность импульса 1 сек.
Приёмником являлась Arduino Nano, выполнялось изменение состояния встроенного светодиода при изменении логического уровня ножки 12.
Моделька работала корректно, сбоев не наблюдалось.
2-й опыт. Написан код для ESP8266 на отправку сообщения по протоколу PJON через конвертер уровней на транзисторах.
Канал передачи при использовании 1 провода по документации PJON должен быть подтянут к земле через резистор 0,8-5МОм. Преобразователи уровней построены так, что подтягивают ножку к высокому уровню через резистор 10кОм. Передача сообщения не идёт, на ножке D1 постоянно высокий уровень (измерялось осциллографом).
На ножке Arduino естественно тоже присутствовал постоянно уровень логической 1.
Если заменить ESP8266 на Arduino в качестве передатчика, то картина будет аналогичная. Т.е. применённые преобразователи уровня не подходят.
3-й опыт. Используется код для отправки сообщения от ESP8266 для включения/выключения светодиода на Arduino.
В качестве преобразователя уровня обычный делитель напряжения, но по схемке рекомендованной в документации к PJON.
https://github.com/gioblu/PJON/blob/master/src/strategies/SoftwareBitBang/README.md
Передача между ESP8266 и Arduino работает нестабильно, иногда приёмник пропускает переданный пакет данных.
Если использовать пример кода для анализа передачи данных, то судя по сообщениям в мониторе порта передача вообще не идёт. Но на осциллограмме импульсы видно, т.е. передача сообщений идёт, но ещё какая то помеха проскакивает, что это мне не ясно.
https://github.com/gioblu/PJON/blob...cal/SoftwareBitBang/NetworkAnalysis/README.md