Ищу разраба кода для ESP32 (NodeMCU, 8266) рекламное табло DMD

bort707

★★★★★★✩
21 Сен 2020
3,066
914
В ЕСП8266-01 уже есть МК,
если ЕСП8266-01 - это модуль ESP-01 - то у него пинов не хватит под такую матрицу. вам нужен НодеМКУ или Вемос

Олег, если у вас планируется большая партия - то вы хотя бы примерный бюджет озвучьте. а то может мне и на ЕСП станет интересно :)
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
@Олег Днепр, а эта, не работает чтоли?
Нет ли на примете какого-то простого примера - где на этой библиотеке выводится, скажем, символ на матрицу и более ничего пример не делает?

И подскажите пару шагов:
1. В менеджере библиотек Ардуино IDE я установил DMD2. Но в папке C:\Program Files (x86)\Arduino\libraries новая папка не образовалась. Почему?
2. Тогда я скачал папку DMD-master отсюда https://github.com/freetronics/DMD2, переименовал её в DMD2. Это корректное добавление библиотеки?
3. Я запустил из этой папки любой пример (C:\Program Files (x86)\Arduino\libraries\DMD2\examples) и все они пишут ошибку 'SoftDMD' does not name a type. В чём может быть проблема?

если ЕСП8266-01 - это модуль ESP-01 - то у него пинов не хватит под такую матрицу. вам нужен НодеМКУ или Вемос

Олег, если у вас планируется большая партия - то вы хотя бы примерный бюджет озвучьте. а то может мне и на ЕСП станет интересно :)
Бюджет - это мои личные деньги. Радиоэлектроника - это мое хобби, я решил попытаться заработать на ней деньги, изготовив и продав красивое табло.
Я изучу ЕСП - это вопрос времени, я просто хотел "купить" это время у тех, кто уже изучил.
 
Изменено:

bort707

★★★★★★✩
21 Сен 2020
3,066
914
Бюджет - это мои личные деньги. Радиоэлектроника - это мое хобби, я решил попытаться заработать на ней деньги, изготовив и продав красивое табло.
Я изучу ЕСП - это вопрос времени, я просто хотел "купить" это время у тех, кто уже изучил.
мой ценник - примерно 10-15 тыс, в зависимости от прочих деталей. Надумаете - пишите, обсудим.
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
мой ценник - примерно 10-15 тыс, в зависимости от прочих деталей. Надумаете - пишите, обсудим.
Я готов купить код для ЕСП за 10 тысяч (у любого желающего). Более точные требования к функциям я постараюсь написать за день-два.
 

bort707

★★★★★★✩
21 Сен 2020
3,066
914
Я готов купить код для ЕСП за 10 тысяч (у любого желающего). Более точные требования к функциям я постараюсь написать за день-два.
я смотрю вы поменяли заголовок и допускаете использование есп32. на есп32 готов делать, но надо обсудить детали. Пишите, если надумаете.
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
я смотрю вы поменяли заголовок и допускаете использование есп32. на есп32 готов делать, но надо обсудить детали. Пишите, если надумаете.
Нет, я не менял заголовок. Лично я почему-то считаю, что код (скетч) для ЕСП8266 и ЕСП32 будет одинаковым, не так ли?
 

bort707

★★★★★★✩
21 Сен 2020
3,066
914
Лично я почему-то считаю, что код (скетч) для ЕСП8266 и ЕСП32 будет одинаковым, не так ли?
сам скетч может и одинаковым, а вот библиотеки разными и довольно сильно

ЗЫ я уехал, если пожелаете - продолжим после 21-00 по МСК
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Лично я почему-то считаю, что код (скетч) для ЕСП8266 и ЕСП32 будет одинаковым, не так ли?
Это сильно разные контроллеры и подходы сильно разные тоже. Код в подавляющем случае несовместим, кроме простейших случаев.
Нет ли на примете какого-то простого примера - где на этой библиотеке выводится, скажем, символ на матрицу и более ничего пример не делает?
Я для DMD/DMD2 не делал ничего, поэтому могу просто погуглить для вас, к примеру вот. Тем более, что я не работаю в ArduinoIDE - в ней невозможно делать что-нибудь нормально. :)

В общем т.к. я однозначно ничего делать не буду и максимум поговорить готов, то видимо вам далее имеет смысл более предметно уже обсуждать вопросы с @bort707 , тем более похоже вы уже практически договорились. Удачной реализации задачи.
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Избыточное цитирование
Это сильно разные контроллеры и подходы сильно разные тоже. Код в подавляющем случае несовместим, кроме простейших случаев.

Я для DMD/DMD2 не делал ничего, поэтому могу просто погуглить для вас, к примеру вот. Тем более, что я не работаю в ArduinoIDE - в ней невозможно делать что-нибудь нормально. :)

В общем т.к. я однозначно ничего делать не буду и максимум поговорить готов, то видимо вам далее имеет смысл более предметно уже обсуждать вопросы с @bort707 , тем более похоже вы уже практически договорились. Удачной реализации задачи.
Я, конечно, сам погуглил, запустил и выбило ошибку. Поэтому я и спрашивал ОПЫТНЫХ людей.
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Избыточное цитирование
Нет ли на примете какого-то простого примера - где на этой библиотеке выводится, скажем, символ на матрицу и более ничего пример не делает?

И подскажите пару шагов:
1. В менеджере библиотек Ардуино IDE я установил DMD2. Но в папке C:\Program Files (x86)\Arduino\libraries новая папка не образовалась. Почему?
2. Тогда я скачал папку DMD-master отсюда https://github.com/freetronics/DMD2, переименовал её в DMD2. Это корректное добавление библиотеки?
3. Я запустил из этой папки любой пример (C:\Program Files (x86)\Arduino\libraries\DMD2\examples) и все они пишут ошибку 'SoftDMD' does not name a type. В чём может быть проблема?
ПРОБЛЕМА РЕШЕНА:
Кто мог подумать (и кто это сделал), что файл примера из библиотеки нельзя запускать именно из той папки, где он выложен автором?!
Я переместил файл примера на шаг (два, больше) вверх по дереву директорий - все заработало. Положил файл в ЛЮБОЕ место - все заработало!
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Друзья, я провел испытания на макете - прогресс таков:
  • На ардуино нано скорости хватает для скроллинга двух верхних строк и вывода статики в остальные строки;
  • Библиотека DMD2 отлично регулирует яркость панелей;
  • Для Ардуины пины по умолчанию следующие:
1619158407008.png
- однако, цифровые выходы МК можно произвольно менять командой
SPIDMD dmd(panel_width, panel_heigh, pin_noe, pin_A, pin_B, pin_sclk)


По последнему пункту прошу помощи - как видно, на плате ESP данные передаются по выводу D7 (D11 просто нет на плате), а CLK - по D5, но как прописать скетчу, что именно они теперь ответственные?
 
Изменено:

bort707

★★★★★★✩
21 Сен 2020
3,066
914
По последнему пункту прошу помощи - как видно, на плате ESP данные передаются по выводу D7 (D11 просто нет на плате), а CLK - по D5, но как прописать скетчу, что именно они теперь ответственные?
судя по названию метода SPIDMD() - он использует аппаратный SPI с его выделенными пинами. Из этого следует. что эти два пина задаются уже тем, что вы выбрали МК ЕСП8266 и отдельно задавать их не нужно.



ЗЫ Олег, это раздел для коммерческиз заказов. Если вы планируете собирать экран сами - откройте отдельную ветку на форуме и там спрашивайте. И еще советую вам в аком случае прочитать какую-нить книжку "ардуино для чайников", чтоб не спотыкаться на элементарных вопросах типа "как поставить библиотеки" или "как запустить пример"
 
Изменено:

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Избыточное цитирование
судя по названию метода SPIDMD() - он использует аппаратный SPI с его выделенными пинами. Из этого следует. что эти два пина задаются уже тем, что вы выбрали МК ЕСП8266 и отдельно задавать их не нужно.



ЗЫ Олег, это раздел для коммерческиз заказов. Если вы планируете собирать экран сами - откройте отдельную ветку на форуме и там спрашивайте. И еще советую вам в аком случае прочитать какую-нить книжку "ардуино для чайников", чтоб не спотыкаться на элементарных вопросах типа "как поставить библиотеки" или "как запустить пример"
Я действую в пределах интернет-правил:
1.Хочу купить время. Время на разбирательство с библиотеками и пинами. Озвучил требования и бюджет. Пока предложения или мимо требований или выше бюджета.
2. Если можно, то я не буду сидеть и ждать - (я хотел купить время) - буду что-то делать.
3. Кто-то (например, вы) в будущем будет искать аналогичную проблему по ключевым словам и для них я сохраняю историю прогресса.
4. Разумеется, я гуглю и читаю. Однако, нигде нет ответов на вопросы, которые я описал (с библиотекой). Возможно, после меня кто-то погуглит и найдет ответ на этом форуме. Вы против притока читателей сюда?

П.С. Я планирую собирать экран сам, писать сам под него вэб/андроид или Апп-приложение, рассчитывать механическую часть, электрическую, покупать комплектующие и т.д. Я только часть работы хотел бы заказать - код для ESP.
Конечно, если мой заказ останется без стороннего исполнителя я сам доведу его до конца через время. По вашему совету открою ветку на форуме.
 

Wan-Derer

★★★★★✩✩
Команда форума
31 Июл 2018
2,136
412
Москва
wan-derer.ru
...это раздел для коммерческиз заказов....
Это раздел "ищу разработчика". Не больше и не меньше. Не надо выдумывать про "коммерческие заказы", "платный раздел" и пр.
Это единственное пояснение. Весь прочий оффтоп будет сноситься.
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Добрый день, коллеги.
Прогресс следующий:
1. Макетом табло уже у меня управляет ESP8266 (была детская проблема - в Ардуино gpio1 - это D1, а у ESP нужна перекодировка номера порта в номер на платке - в конце таблица);
2. Вывод текста осуществляется библиотекой DMD2;
3. Яркость в DMD2 регулируется командой setBrightness(), однако в ESP пользователю отдан только один таймер, поэтому его забирает ШИМ (PWM) регулирование яркости и таймеры типа delay() уже не работают.
4. Вот короткий ролик по работе: https://photos.app.goo.gl/ZWHwZVApgFvESf8n7

Что еще требуется:
  • код для Вай-Фай соединения и дальнейшего управления (включая код для превращения блочка на ESP8266 в сетевой диск);
  • код для работы со шрифтами (кириллица, размер, подгонка по месту);
1619691741636.png
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
включая код для превращения блочка на ESP8266 в сетевой дис
WebDAV чтоли? Или как вы это себе представляете? В нашей реализации доступ к ФС (LittleFS) через ftp, либо http - но это внешние компоненты, в фреймворк не включены по дефолту. Впрочем я так и не понял - собираетесь ли вы писать всю обвязку самостоятельно. Если самостоятельно - то удачи))), это будет весело.
3. Яркость в DMD2 регулируется командой setBrightness(), однако в ESP пользователю отдан только один таймер, поэтому его забирает ШИМ (PWM) регулирование яркости и таймеры типа delay() уже не работают.
Что такое таймер типа delay()? Очень интересно и совсем непонятно. Попробуйте использовать тикер или таски, т.е. программные. Вообще вроде же "B" это как раз управление яркостью, что конкретно делает setBrightness() в DMD2?

* Ну а то, что уже есть прогресс - поздравляю :)
 

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Избыточное цитирование
WebDAV чтоли? Или как вы это себе представляете? В нашей реализации доступ к ФС (LittleFS) через ftp, либо http - но это внешние компоненты, в фреймворк не включены по дефолту. Впрочем я так и не понял - собираетесь ли вы писать всю обвязку самостоятельно. Если самостоятельно - то удачи))), это будет весело.

Что такое таймер типа delay()? Очень интересно и совсем непонятно. Попробуйте использовать тикер или таски, т.е. программные. Вообще вроде же "B" это как раз управление яркостью, что конкретно делает setBrightness() в DMD2?

* Ну а то, что уже есть прогресс - поздравляю :)
Спасибо, стараюсь максимально использовать готовые решения.
Что такое "В" (пример, ссылка)?
Насколько я разобрался, управление яркостью панели в DMD2 производится путем задачи значения 0-255 в команде setBrightness(x). При этом, сама яркость на уровне железа регулируется путем подачи ШИМ на вход -ENABLE (то есть, модуль просто реже или чаще быстро-быстро мигает). А вот для генерации ШИМ используется аппаратный таймер микроконтроллера, причем в Ардуино для пользователя доступны 3 таких таймера, а в ЕСП - только один.
Также таймерами пользуются и всякие функции типа delay(), millis() и т.п. Поэтому, если задать какое-то значение яркости, то ШИМ "займет" единственный таймер и он уже не сможет одновременно обеспечивать работу delay().

П.С. Я нигде (ни в рунете, ни за бугром) не нашел упоминания этого бага, а он доставил мне пару вечеров удивления!
 
Изменено:

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Вход разъема матрицы
Нет-нет, входы А и В у монохромной матрицы - это адрес "странички" которая сейчас должна светиться (вся матрица разбита на 4 странички и одновременно светится одна из них). На эти входы подаются следующие двоичные сигналы 00, 01, 10, 11. Как видно, при любой комбинации горит хоть один сектор модуля и никакой регулировки яркости так не сделаешь.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@Олег Днепр, ага, понял. Т.е. яркость реализуется через диммирование ENABLE. Хорошо, а почему-бы не порешать это аппаратно? Т.е. внешний таймер и управлять им? :) Тот же NE555, к примеру :). Ну или тиньку мелкую, может так даже прощем будет. Я же так понимаю вам в общем-то плавное изменение яркости не особо нужно, вполне можно реализовать ступенчатые переключения.

Или всеже поглядеть как будет с программным ШИМ, повесив на тот же тикер/шедулер.
 
Изменено:

Олег Днепр

✩✩✩✩✩✩✩
18 Апр 2021
20
0
Избыточное цитирование
@Олег Днепр, ага, понял. Т.е. яркость реализуется через диммирование ENABLE. Хорошо, а почему-бы не порешать это аппаратно? Т.е. внешний таймер и управлять им? :) Тот же NE555, к примеру :). Ну или тиньку мелкую, может так даже прощем будет. Я же так понимаю вам в общем-то плавное изменение яркости не особо нужно, вполне можно реализовать ступенчатые переключения.
Это же изврат! В есп есть всё. что нужно, надо только корректно закодить.
Скоро дойдет очередь до вашего инструмента - посмотрим как оно использует прерывания таймера и будет ли конкурировать с другими библиотеками.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@Олег Днепр, фреймворк не использует прерывания таймера. Там это не нужно :)
Отложенные задачи реализуются через шедулер.
На счет конкуренции прикольно сказано, особенно учитывая то, что альтернатив-то в общем-то и нет. Есть похожие фреймворки типа того что был изначально: JeeUI2 или его развития CRMui - но первый давно заброшен, второй по-большей мере - исправление багов первого, без фундаментальных изменений. Ну а если найдете действительно интересную альтернативу - то поделитесь ссылкой, будет интересно поглядеть. ;)