Pull to refresh

Ещё одни часы с WiFi. Clock380

DIY Electronics for beginners


Моя версия идеальных часов. Скажу честно, мне надоело подстраивать часы. Чтобы часы подстраивались сами, их необходимо оснастить как минимум одной из систем, через которую можно получать время:

1) GPS
2) DCF77
3) Ethernet или WiFi
4) GSM
5) Своя система

Плюсы и минуты каждой системы уже описывались здесь

Сначала я хотел сделать свою систему. Но потом я остановился на WiFi. Казалось бы, на рынке должно быть полно настольных/настенных часов с синхронизацией по WiFi. Однако того что хочу я не нашёл. Может плохо искал конечно. Поэтому решил собрать сам. Сначала я попробовал собрать часы на WS2812B, но мне они не понравились. Слишком большие они. В итоге я остановился на обычных светодиодах. Ну и в качестве WiFi конечно я решил использовать ESP8266.

В процессе размышлений по поводу дизайна будущих часов, я решил сделать их максимально тонкими. Посему, все элементы выбраны с минимальной высотой. И разместил всё с одной стороны. Сложнее всего было найти тонкий ионистор и индуктивность.

Кроме необходимых для часов элементов, я добавил посадочные места для:

1) STM8S003F3U6 (Вдруг что то не получится с ESP8266)
2) DS18B20U
3) BMP280 или BME280

Забегая вперёд скажу, что они мне не пригодились.

После месяца размышлений, рисований схемы и трассировки, получилось вот такая двухсторонняя плата, размером 140x56 мм. И толщиной, вместе с элементами, меньше 2 мм. Размер одной цифры ~ 25x48 мм.





Печатные платы и комплектацию я заказал конечно в Китае. Кое-что из комплектации пришлось брать модулями, так как выходило дешевле. Вот эти модули доноры — ESP-09 и GY-302:



Управление светодиодами осуществляется 16-ти канальным ШИМ контролером PCA9685BS с интерфейсом I2C и полевыми транзисторами BSS138. Вообще микросхемы в часах специально выбраны с I2C, для упрощения трассировки и управления.

Через один месяц подтянулись сами платы, за ними ещё через пару недель вся остальная комплектация. Платы мне бесплатно покрыли иммерсионным золотом.



После того, как была получена вся комплектация, я начал монтаж платы. Нанести на плату паяльную пасту не очень долго, около одного часа, используя дозатор.



А вот на то, чтобы расставить элементы, а только светодиодов размером 0603 на плате 380 штук, у меня ушло около 5 часов.



После расстановки почти всех элементов, отправляем плату в инфракрасную печку. У меня вот такая:



После оплавления в печке, необходимо исправить недостатки и вручную допаять ионистор. И вот наконец плата после монтажа.



Для программирования ESP8266 я решил использовать среду Arduino. Потому что это самый простой и быстрый старт для ESP8266, да и это всего на всего часы, а не управление защитой на атомной электростанции.

Спустя несколько дней написания кода и исправления ошибок монтажа я смог её заставить отображать время и синхронизироваться с сервером NTP по WiFi. Синхронизация с NTP происходит раз в 5 часов. В остальное время WiFi отключается для понижения потребления.



На обратной стороне платы имеются 4 сенсорных кнопки, а на самой плате контроллер MPR121. Однако библиотека github.com/adafruit/Adafruit_MPR121 для Arduino не работает на ESP8266. Вероятно причина её неработоспособности очень простая, но честно скажу мне пока некогда изучать этот вопрос.

Плата без сбоев проработала у меня дома где-то около одного месяца, пока я думал над финальным дизайном, но в голову особо ничего не приходило, кроме как просто приклеить плату к стеклу. Что я собственно и сделал.

Фотографии




















Планы на будущее, если оно будет:

1) Усовершенствовать прошивку;
а. сделать настройки через web интерфейс;
б. сделать обновление прошивки через web интерфейс;
2) Разобраться с сенсорными кнопками.

Исходные файлы находятся здесь:

github.com/denruss/clock380
github.com/denruss/clock380_sketch

Можно заказать PCB по ссылке:
www.pcbway.com/project/shareproject/clock380.html
Tags:
Hubs:
Total votes 42: ↑40 and ↓2 +38
Views 32K
Comments Comments 64