• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Глючат входы-выходы

king2

New member
Приветствую!

Занялся я тут программингом ESP.

Взял 4 штуки ESP-12 с алиэкспресса, воткнул их на белую плату, вместо 1117 припаял модуль mini360 (заменив подстроечник на постоянный резистор, чтобы получить стабильные 3.3 - 3.4 вольта), подпаял провода питания 17 вольт к входу mini360, к выходу SPI присобачил светодиодную ленту WS2801 (на самом деле самодельные пиксели, которые под нее мимикрируют, 10 штук), написал прошивку, которая получает данные через WiFi и выдает на ленту.

Дома, от лабораторного БП все работало нормально.
На выезде, при работе от бензогенератора через БП Nemic-Lambda все 4 начали с той или иной вероятностью глючить, а именно - выдавать на SPI время от времени фигню. При этом на одной из плат была замечена помеха по питанию амплитудой до полувольта (на остальных образцовое питание, но они глючили тоже).

Ну окей, фиг с ними, подумал я, и воткнул их к другому устройству, как тупой логгер приходящего из UART траффика (чтобы девайсы под дождем, а я из машину сразу со всех логи смотрю).

Тут тоже фигня началась, две платы заработали сразу и работали все время, две, начиная с какого-то момента начали на ножке RX принимать мусор. Время выдачи мусора совпадает с выходом в эфир радиомодема на частоте ~150Мгц (10 ватт). На одной поменял саму ESP12 - эффекта не возымело.
Итого, есть две штуки, которые работают как надо, и две - которые глючат. Одна из них работала нормально, потом только глючить начала, с какого-то неясного момента.

Принимает оно данные через UART на скорости 115200 от MSP430, питание везде 3.3 вольта, каких-то помех с существенной амплитудой на ножке RX осциллографом не обнаружено, торчит единица там, при посылках явственно виден пакет данных (которые она принимает).

В общем и целом, какое-то такое впечатление, что оно работает скорее случайно, чем закономерно.
Припайка тантала 10мкФ ко входу питания модуля ничем не помогла.

Подскажите, плиз, где я дурак?
Спасибо заранее!
 

nikolz

Well-known member
Приветствую!

Занялся я тут программингом ESP.

Взял 4 штуки ESP-12 с алиэкспресса, воткнул их на белую плату, вместо 1117 припаял модуль mini360 (заменив подстроечник на постоянный резистор, чтобы получить стабильные 3.3 - 3.4 вольта), подпаял провода питания 17 вольт к входу mini360, к выходу SPI присобачил светодиодную ленту WS2801 (на самом деле самодельные пиксели, которые под нее мимикрируют, 10 штук), написал прошивку, которая получает данные через WiFi и выдает на ленту.

Дома, от лабораторного БП все работало нормально.
На выезде, при работе от бензогенератора через БП Nemic-Lambda все 4 начали с той или иной вероятностью глючить, а именно - выдавать на SPI время от времени фигню. При этом на одной из плат была замечена помеха по питанию амплитудой до полувольта (на остальных образцовое питание, но они глючили тоже).

Ну окей, фиг с ними, подумал я, и воткнул их к другому устройству, как тупой логгер приходящего из UART траффика (чтобы девайсы под дождем, а я из машину сразу со всех логи смотрю).

Тут тоже фигня началась, две платы заработали сразу и работали все время, две, начиная с какого-то момента начали на ножке RX принимать мусор. Время выдачи мусора совпадает с выходом в эфир радиомодема на частоте ~150Мгц (10 ватт). На одной поменял саму ESP12 - эффекта не возымело.
Итого, есть две штуки, которые работают как надо, и две - которые глючат. Одна из них работала нормально, потом только глючить начала, с какого-то неясного момента.

Принимает оно данные через UART на скорости 115200 от MSP430, питание везде 3.3 вольта, каких-то помех с существенной амплитудой на ножке RX осциллографом не обнаружено, торчит единица там, при посылках явственно виден пакет данных (которые она принимает).

В общем и целом, какое-то такое впечатление, что оно работает скорее случайно, чем закономерно.
Припайка тантала 10мкФ ко входу питания модуля ничем не помогла.

Подскажите, плиз, где я дурак?
Спасибо заранее!
-----------------------
1)Не понял, Вы их все включаете работать одновременно?
2) снимите нагрузочную характеристику с источника 3.3 v.
3) возьмите nodemcu.
 

king2

New member
-----------------------
1)Не понял, Вы их все включаете работать одновременно?
2) снимите нагрузочную характеристику с источника 3.3 v.
3) возьмите nodemcu.
1. Да, 4 штуки одновременно.
2. Смотрел при рабтое ESP, генерит себе на частоте 300кГц, пульсации около 100мВ, стабильно, независимо от того, работает оно с сетью или нет.
3. Не, не мой выбор :)
Мне бы хотелось бы с этой штукой разобраться, пожозреваю, что дело не в софте.
 

=AK=

New member
к выходу SPI присобачил светодиодную ленту WS2801
Вы напрямую присобачили? Поставьте резисторы примерно по 100 Ом между ESP и WS.

Принимает оно данные через UART на скорости 115200 от MSP430,
То же самое, резисторы в сигнальные линии.

Ну и про земли расскажите, что с чем и как соединяется.

А статью все-таки почитайте.
 

nikolz

Well-known member
3. Не, не мой выбор :)
Мне бы хотелось бы с этой штукой разобраться, пожозреваю, что дело не в софте.
nodemcu - это не софт а плата.
ее достоинство в том, что на ней уже сделаны и 3.3 и USB и все это за 170 руб.
и нет гемороя с соплями и источниками особенно начинающим.
 

king2

New member
Сигнальные цепи к WS2801 - да, напрямую. Но если ткнуться осциллографом на них, то форма сигнала хорошая на обоих концах провода.

Повод к WS2801 - неэкранированная витая пара длиной примерно 20см, питание 17 вольт и сигналы идут по ней. Разблюдовка такая - синий и бело-синий - масса, рыжий - питание 17 вольт, зеленый и синий - SPI. Земля, стало быть, идет от БП проводом обычным 0.75 длиной метров 15-20, дальше от него иет в одну сторону линейка пикселей (потребление в пике 1.5А, но это если все белыми зажечь), в другую сторону - как раз тот провод, на котором болтается ESP12F. к неу просто на проводочках приделан вместо LM1117 модуль mini360. Больше соеинений нет, кроме тантала на выходе mini360 (который не помог).

Статью на сахаре читал, но не совсем понял как ее тут применить - врое бы мегатоков-то и нет, по высокому и по низкому стоят кондеры..

Резисторы попробую поставить, правда, сейчас не могу попробовать в рабочем виде, попробую на следующей неделе.

На тему nodemcu - мне не кажется, что LM1117, работающая от 20 вольт, будет лучше, чем DC-DC преобразователь...
 

nikolz

Well-known member
Сигнальные цепи к WS2801 - да, напрямую. Но если ткнуться осциллографом на них, то форма сигнала хорошая на обоих концах провода.

Повод к WS2801 - неэкранированная витая пара длиной примерно 20см, питание 17 вольт и сигналы идут по ней. Разблюдовка такая - синий и бело-синий - масса, рыжий - питание 17 вольт, зеленый и синий - SPI. Земля, стало быть, идет от БП проводом обычным 0.75 длиной метров 15-20, дальше от него иет в одну сторону линейка пикселей (потребление в пике 1.5А, но это если все белыми зажечь), в другую сторону - как раз тот провод, на котором болтается ESP12F. к неу просто на проводочках приделан вместо LM1117 модуль mini360. Больше соеинений нет, кроме тантала на выходе mini360 (который не помог).

Статью на сахаре читал, но не совсем понял как ее тут применить - врое бы мегатоков-то и нет, по высокому и по низкому стоят кондеры..

Резисторы попробую поставить, правда, сейчас не могу попробовать в рабочем виде, попробую на следующей неделе.

На тему nodemcu - мне не кажется, что LM1117, работающая от 20 вольт, будет лучше, чем DC-DC преобразователь...
Это хорошо, что не кажется. А я вот знаю, что nodemcu работает без проблем ( у меня их 4 в разных устройствах. И остальные твари есть и работают исправно так как для них у меня хорошее питание ( твари любят хорошее питание) Но если у Вас нет достаточного опыта (знаний) то nodemcu без проблем работает.
Но если хочется приключений, то хозяин -барин.
 

Сергей_Ф

Moderator
Команда форума
мне не кажется, что LM1117, работающая от 20 вольт, будет лучше, чем DC-DC
правильно не кажется. 20 В для неё абсолютный максимум. Вам надо разнести питание esp и диодов максимально близко от источника. Поставьте мини360 прямо у блока питания и сделайте на нем 5 В, затем провод и lm1117 по даташиту. Или nodemcu, как @nikolz посоветовал. Но уже от 5 В.
В крайнем случае, отдельный провод от БП к мини360, тантал на входе и выходе у неё. И чем больше, тем лучше. Особенно на входе.
 

nikolz

Well-known member
правильно не кажется. 20 В для неё абсолютный максимум. Вам надо разнести питание esp и диодов максимально близко от источника. Поставьте мини360 прямо у блока питания и сделайте на нем 5 В, затем провод и lm1117 по даташиту. Или nodemcu, как @nikolz посоветовал. Но уже от 5 В.
В крайнем случае, отдельный провод от БП к мини360, тантал на входе и выходе у неё. И чем больше, тем лучше. Особенно на входе.
тоже вариант.
 

nikolz

Well-known member
правильно не кажется. 20 В для неё абсолютный максимум. Вам надо разнести питание esp и диодов максимально близко от источника. Поставьте мини360 прямо у блока питания и сделайте на нем 5 В, затем провод и lm1117 по даташиту. Или nodemcu, как @nikolz посоветовал. Но уже от 5 В.
В крайнем случае, отдельный провод от БП к мини360, тантал на входе и выходе у неё. И чем больше, тем лучше. Особенно на входе.
год назад когда я издевался над ESP01 я для получения 3.3 в использовал это
5 ШТ. XM1584 Ультра малый размер DC DC step down модуль питания 3A регулируемая step down модуль супер LM2596 купить на AliExpress
рекомендую.
 

king2

New member
Спасибо за ответы!

Не вижу, чем nodemcu отличается от моего конфига кроме как тем, что там линейный стабилизатор с более узким диапазоном питания. Может еще чем-то? :)

В общем, так понял, общая канва советов такова - помехи идут по питанию, и поэтому у меня все плохо с ESP в двух конфигурациях, так? То есть она ОЧЕНЬ привередлива к питанию?

Она ж ведь работает, не перезагружается, не отваливается..
 

Сергей_Ф

Moderator
Команда форума
чем nodemcu отличается от моего конфига кроме как тем, что там линейный стабилизатор с более узким диапазоном питания. Может еще чем-то?
Стабилизатор по даташиту с конденсаторами, притяжка необходимых входов куда надо и качество изготовления.
В линейном стабилизаторе меньше импульсных помех, чем в импульсном к тому же.
 

=AK=

New member
так понял, общая канва советов такова - помехи идут по питанию
У вас устройство сбоит скорей всего от наносекундных помех. Только вы неправильно понимаете, где они идут. Они идут по земле. Поскольку для наносекундных помех земля и питание - это одно и то же. Керамические развязывающие кондеры сшивают землю и питание в одно целое.

Сигнальные цепи к WS2801 - да, напрямую. Но если ткнуться осциллографом на них, то форма сигнала хорошая на обоих концах провода.
Хорошая форма сигнала ничего не значит. Наносекундные помехи ни на форму сигнала не влияют, ни осциллографом вы их не увидите - они слишком короткие.

Повод к WS2801 - неэкранированная витая пара длиной примерно 20см, питание 17 вольт и сигналы идут по ней. Разблюдовка такая - синий и бело-синий - масса, рыжий - питание 17 вольт, зеленый и синий - SPI. Земля, стало быть, идет от БП проводом обычным 0.75 длиной метров 15-20, дальше от него иет в одну сторону линейка пикселей (потребление в пике 1.5А, но это если все белыми зажечь), в другую сторону - как раз тот провод, на котором болтается ESP12F. к неу просто на проводочках приделан вместо LM1117 модуль mini360. Больше соеинений нет, кроме тантала на выходе mini360 (который не помог).
Советую длинные провода от БП (оба вместе) пропустить через ферритовие кольцо или поставить на них ферритовый кламп. Прямо перед входом mini360. Провода такой длины представляют собой шикарную коротковолновую антенну. По которой могут гулять большие токи. Феррит "разрубит" эту антенну на два куска.

А как MSP430 подсоединен?

Статью на сахаре читал, но не совсем понял как ее тут применить - врое бы мегатоков-то и нет, по высокому и по низкому стоят кондеры..
Значит, невнимательно читали, если такое говорите. B любых устройствах, даже самых маломощных, мегатоки в земляных цепях возникают из-за внешних помех. Как раз ваш случай, судя по всему.

И перестаньте поминать кондеры по питанию. Они от помех не помогают. От слова "вообще". То что вы их все время поминаете - это еще одно свидетельство, что статью вы прочитали невнимательно.
 
Последнее редактирование:

king2

New member
Сегодня попробовал (насколько это можно сделать в полевых условиях, не имея ничего под рукой) подсадить кондер, снятый с кварца от CH340 (несколько десятков пикофарад) на ножку RX прямо на ESP. Проблема убралась.

Видимо, все же наводки от радиомодема и к первой проблеме (ошибки при передаче через SPI) это отношения не имеет.

Огромное спасибо всем, кто помог советом!
 
Сверху Снизу