ESP, IoT WiFi лампа-будильник. Обсуждение проекта

Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 

Комментарии

recoshet

★✩✩✩✩✩✩
15 Июн 2019
1
14
Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 

somon

★★★✩✩✩✩
20 Авг 2019
140
123
@somon, проблема появилась сразу(написал только сейчас, потому что достала со временем) и когда кнопка срабатывает сама диод тоже срабатывает
Ну тогда вариантов не много:
1. Глюк самого модуля ttp223 (проверяется вне лампы, на столе);
2. Большая наводка/помеха на провода до кнопки (укоротить длину, изменить место прокладки, сплести все три провода до кнопки в косу);
3. Неудачно выбран материал крышки, к чему она приклеена (высокая статика, легко электролизуется поверхность). Варианты - сменить материал крышки, добавить ещё 1-2 слоя двухстороннего скотча между кнопкой (кстати, он надеюсь вспененный, 0,5-1,0мм толщиной? Иначе плотно приклееная кнопка к чему угодно, сама срабатывать будет!), на крайняк впаять в схему/плату ttp223 конденсатор 10-30pF (там есть место для него), чтобы снизить чувствительность кнопки...
 
  • Лойс +1
Реакции: victory_lad

victory_lad

★✩✩✩✩✩✩
17 Сен 2019
56
22
@somon, ок, спасибо)
Ну из этого у меня: провода сплетены в косу, скотча налеплено нормально, там точно есть 1мм. Попробую поменять сам модуль, есть очень большие подозрения на него, потому что я его немного приплавил, когда паял, может быть из-за этого он глючит
 

somon

★★★✩✩✩✩
20 Авг 2019
140
123
@victory_lad, попробуйте...
А который снимите,, подключите и положите на столе, сенсором вверх... На вряд ли он "приплавился"...
 

Ktibr

✩✩✩✩✩✩✩
18 Сен 2019
14
3
если кому-то интересно, выкладываю проект на github https://github.com/ktibr0/GyverLamp
по тройному касанию вызываются часы - бегущей строкой с яркостью текущего эффекта, по четверному - погода для Москвы
погоду прикрутил используя статью
https://it4it.club/topic/40-esp8266-i-parsing-pogodyi-s-openweathermap/
от вас потребуется зарегистрироваться на openweathermap и получить APIkey - все описано в статье
также обратите внимание на необходимость доп.установки библиотеки ArduinoJson - об этом тоже написано в статье, используйте версию 5.хх не пропустите
погода почему-то на последних буквах иногда - очень редко перегружает лампу (( разобраться не смог - если кто-то поможет с исправлением кода - обязательно исправлю у себя
также скрестил с возможностью выводить анимацию и картинки из GyverMatrix - особо не тестировал, вызов функции animation(N)- где n - номер анимации - подробнее читайте в описании у Алекса https://community.alexgyver.ru/threads/bluetooth-matrica.516/
не претендую на абсолютную работоспособность моего "проекта" - это всего лишь "свино-ежик" причем "свинская" часть от меня ;-) - я ж непрограммист
пришлось изменить вызовы для обновления (теперь 6 нажатий) и включения предыдущего режима - 5 нажатий
если у кого-то есть идеи как улучшить/оптимизировать код - вельком
 
Изменено:
  • Лойс +1
Реакции: somon

leovoron79

✩✩✩✩✩✩✩
16 Сен 2019
6
0
если кому-то интересно, выкладываю проект на github
Не смог загрузить прошивку. Пишет вот это, хотя библиотека установлена шестая "DynamicJsonBuffer is a class from ArduinoJson 5. Please see arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6". А если не устанавливать эту библиотеку и прошиться. то ничего не меняется
 

Ktibr

✩✩✩✩✩✩✩
18 Сен 2019
14
3
Не смог загрузить прошивку. Пишет вот это, хотя библиотека установлена шестая "DynamicJsonBuffer is a class from ArduinoJson 5. Please see arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6". А если не устанавливать эту библиотеку и прошиться. то ничего не меняется
Установите последнюю из 5-х версий-у меня получилось запустить
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
Возможно диоды уже мертвы. Я так случайно спалил ленту в 50штук. Правда я по дурке подал питание в 12В на контроллер SP002E в надежде что он сам знает сколько нужно диодам выдать на выходе. Оказывается не знает а питание идет сквозняком. В мгновение ока вся лента померла из 50шт бится в конвульсиях осталось с десяток но они светили не от управляющих импульсов а сами по себе, остальные тупо были в пробое или закорочены.
Если горят 4 ряда, то проверку нужно начинать с крайнего горящего. Он может код получать но дальше не передавать. Можно пробовать пинцетом замыкать на нем DI и DO чтоб передать входящий код на следующий диод минуя закороченный.
Но прежде чем ковырять убедитесь что в прошивке контроллера правильно выставлен тип ленты (лента или матрица и количество диодов)
День добрый господа "рукоблуды" по поводу такой прозвонки есть сомнения... Сам не первый год с лентой и диодами вс2812б ковыряюсь и были проблемы такого рода... попытка замкнуть Д-ин и Д-аут иногда не давала результатов пока диод в цепи... при удалении диода (на ленте-была 60 на метр это просто , ножницами или феном получалось перепаять, на матрице не пробовал, пока слава богу проблем не было или ещё мало заказывал :) ) сигнал проходил и закорачивание помогало...
 

tsabak

✩✩✩✩✩✩✩
2 Сен 2018
81
8
@leovoron79, Один в один, обновил компилирую пишет тоже самое откатил на 5.13,- нифига.
 

Ktibr

✩✩✩✩✩✩✩
18 Сен 2019
14
3
@leovoron79, Один в один, обновил компилирую пишет тоже самое откатил на 5.13,- нифига.
Очень печально ((
Буду дома, поищу какой функцией из последних библиотек реализовать , почему у меня тогда компилирует без ошибок - даже не пойму
 

Ktibr

✩✩✩✩✩✩✩
18 Сен 2019
14
3
Не смог загрузить прошивку. Пишет вот это, хотя библиотека установлена шестая "DynamicJsonBuffer is a class from ArduinoJson 5. Please see arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6". А если не устанавливать эту библиотеку и прошиться. то ничего не меняется
Не полностью уверен, так как глубоко не погружался, но без установки библиотеки по идее тоже ошибка компиляции должна была быть - ведь неоткуда функции брать парсинга json
 

tsabak

✩✩✩✩✩✩✩
2 Сен 2018
81
8
Упс... наобум поставил версию 5.12.0 и все скомпилировалось. Вот не помню какая до обновления была не скажу.
 

gunner47

★★★★★✩✩
18 Июн 2019
253
393
ArduinoJson в 6 версии сильно изменилась. Все примеры кодов для 5 версии работать не будут, нужно код переписывать. Оттуда и сообщение:
Please see arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6
Там лежит инструкция о том, как именно нужно переписать. Любая 5 версия подойдёт. Если ругается, перезагрузите Arduino IDE после установки 5 версии и попробуйте снова.
 

leovoron79

✩✩✩✩✩✩✩
16 Сен 2019
6
0
без установки библиотеки по идее тоже ошибка компиляции должна была быть - ведь неоткуда функции брать парсинга json
Обновил arduino IDE до 1.8.10 и сменил библиотеку arduinojson на 5.13.5 и всё взлетело. Вот только я думал это будет режим, допустим включил и лёг спать. Ночью один глаз продрал... Ага могу ещё пару часов харю плющить) А в таком исполнении это больше баловство , но всё равно спасибо. А можно совместить часы и погоду, так чтобы отображения сменяли друг друга ну допустим каждые 10-15 секунд и сделать это ещё одним режимом в приложении с цветом и масштабом?
 

gunner47

★★★★★✩✩
18 Июн 2019
253
393
Могу только посоветовать обновить платформу esp8266 с версии 2.4.0 на актуальную 2.5.2 в Arduino IDE. У меня на ней всё собирается. Библиотеки не менялись, но в коде появились макросы F и PSTR для работы со строками из flash памяти. Судя по логу, они у вас препятствуют успешной компиляции.
 

Ktibr

✩✩✩✩✩✩✩
18 Сен 2019
14
3
Обновил arduino IDE до 1.8.10 и сменил библиотеку arduinojson на 5.13.5 и всё взлетело. Вот только я думал это будет режим, допустим включил и лёг спать. Ночью один глаз продрал... Ага могу ещё пару часов харю плющить) А в таком исполнении это больше баловство , но всё равно спасибо. А можно совместить часы и погоду, так чтобы отображения сменяли друг друга ну допустим каждые 10-15 секунд и сделать это ещё одним режимом в приложении с цветом и масштабом?
Можно попробовать код показа времени - попробовать обернуть в функцию и вызвать функцию отображения времени, вставив ее новым эффектом (или вместо неинтересного эффекта)
По погоде - тоже самое - вызывать функцию погоды в каком-нить эффекте
Либо использовать прошивки, где часы - более проработанная функция (прошивка ув.vvip-68 например)
 

adecibel

✩✩✩✩✩✩✩
6 Авг 2019
3
2
Могу только посоветовать обновить платформу esp8266 с версии 2.4.0 на актуальную 2.5.2 в Arduino IDE. У меня на ней всё собирается. Библиотеки не менялись, но в коде появились макросы F и PSTR для работы со строками из flash памяти. Судя по логу, они у вас препятствуют успешной компиляции.
Спасибо, помогло.
 

victory_lad

★✩✩✩✩✩✩
17 Сен 2019
56
22
Ребят, а ни у кого случайно нет прошивки на Arduino Nano или источников на неё?
Знакомый тоже решил сделать лампу, но под рукой у него только ардуинка
 

gunner47

★★★★★✩✩
18 Июн 2019
253
393
Ребят, а ни у кого случайно нет прошивки на Arduino Nano или источников на неё?
Знакомый тоже решил сделать лампу, но под рукой у него только ардуинка
Были здесь такие умельцы. Можно в личку попросить, я думаю.
 
  • Лойс +1
Реакции: victory_lad и somon

ntrl

✩✩✩✩✩✩✩
17 Июл 2019
5
6
Пока уважаемый gunner47 пилит MQTT, я дополнил свой конфиг HA, чтобы он мог "управлять" лампой со штатной или прошивкой от gunner47.

C++:
/config/configuration.yaml
sensor:
  - platform: command_line
    name: GL2_mode
    command: echo -n GET | nc -w 1 -u 192.168.0.162 8888 | awk {'print $2'}
  - platform: command_line
    name: GL2_bri
    command: echo -n GET | nc -w 1 -u 192.168.0.162 8888 | awk {'print $3'}
  - platform: command_line
    name: GL2_spd
    command: echo -n GET | nc -w 1 -u 192.168.0.162 8888 | awk {'print $4'}
  - platform: command_line
    name: GL2_sca
    command: echo -n GET | nc -w 1 -u 192.168.0.162 8888 | awk {'print $5'}

switch:
  - platform: command_line
    switches:
      gyverlamp2:
        command_on: "echo -n P_ON | nc -w 1 -u 192.168.0.162 8888"
        command_off: "echo -n P_OFF | nc -w 1 -u 192.168.0.162 8888"
        command_state: "echo -n GET | nc -w 1 -u 192.168.0.162 8888 | awk {'print $6'}"
        value_template: '{{ value == "1" }}'

input_number:
  gl2_mode:
    name: GyverLamp2 mode
    initial: 0
    min: 0
    max: 24
    step: 1
    mode: box
shell_command: !include shell_scripts.yaml
C++:
/config/automations.yaml

- alias: GL2 set mode from Lamp
  initial_state: 'on'
  trigger:
    platform: state
    entity_id: sensor.gl2_mode
  action:
  - service: input_number.set_value
    data_template:
      entity_id: input_number.gl2_mode
      value: '{{ trigger.to_state.state }}'
- alias: GL2 set mode to Lamp
  initial_state: 'on'
  trigger:
    platform: state
    entity_id: input_number.gl2_mode
  action:
  - service: shell_command.gl2_setmode
    data_template:
      effect: '{{ trigger.to_state.state | int }}'

/config/shell_scripts.yaml
gl2_setmode: bash /config/scripts/gl2_mode.sh {{ effect }}



/config/scripts/gl2_mode.sh
echo -n EFF$1 | nc -w 1 -u 192.168.0.162 8888

Лампу можно включить\выключить, и переключать режим работы. В качестве сенсоров присутствуют параметры режимов с лампы.
В теории можно сделать регулировку остальных параметров, но мне лень. По аналогии все можно сделать.


Еще сделал пару моделек для 3д принтера (основание и кнопка) для штатного плафона из леруа.
Если кому интересно, то пишите, выложу тут.

photo_2019-10-02_19-10-49.jpg
 
Изменено:
  • Лойс +1
Реакции: rusatch и wayfarermax

somon

★★★✩✩✩✩
20 Авг 2019
140
123
@ntrl, выкладывайте конечно! Думаю многим будет интересно... 👍
 

ntrl

✩✩✩✩✩✩✩
17 Июл 2019
5
6
но всеравно очень жду от gunner47 поддержку MQTT.

Не судите строго - это мои первые проекты в 3д моделировании, напильник может понадобится :)
https://www.thingiverse.com/thing:3893632

на основание натягиваем фановую трубу.
В крышку защелкиваем сенсорную кнопку. Ее я сделал на разъеме, чтобы собрать потом все в корпус
 
  • Лойс +1
Реакции: wayfarermax