Собственно вдохновился давним проектом Гайвера, но кардинально изменил подход к реализации
Скачать архив со скетчем и 3d моделью корпуса можно во вложении
Скетч обновлен. Просьба перекачать файл во вложении. Список изменений в постах данной темы
Собственно вдохновился давним проектом Гайвера, но кардинально изменил подход к реализации
1. Из-за недостатка свободных USB портов параметры работы ПК из Libre Hardware Monitor получаю по WiFi. Для этого в LHM есть такая удобная функция как Web сервер, откуда средствами ESP8266 качаю JSON и произвожу парсинг данных. Плюс данного подхода - это возможность расположить устройство в любом удобном месте не заботясь о длине проводов, наличии свободных USB разъемов и прочего.Также есть это возможность выводить любые данные на экран дисплея, а не только те которые выводит в COM порт автор мода LHM. Да и версия Hardware Monitor подойдет любая свежая. Очевидный минус подхода - парсинг JSON lидет гораздо медленнее, чем чтение из COM порта
2. ЖК экран 2004 имет кучу достоинств, типа дешевизны и простоты подключения, но габариты у него, что-то не особо радуют, да и отображаемая картинка в целом тоже. Поэтому для проекта использовал, так кстати купленный на недавней распродаже на алике за смешные 180 рублей TFT 1.8 дисплей с SPI интерфейсом. И габариты поменьше и картинка глазу приятнее
3. Так как решил получать данные с ПК по воздуху, то и микроконтроллер вместо Arduino использовал на базе ESP8266 - Wemos d1 mini
4. Помимо непосредственно, чтения датчиков решил добавить еще и отображение графиков температуры процессора и видеокарты. Не так чтобы особо нужная фича, но сделал просто чтобы была. Может кому пригодится
5. Через несколько дней использования, понял что мне очень не хватает отображения текущего времени на экране дисплея. Добавил синхронизацию времени по NTP протоколу и отображение его на экране
6. Опять же, довольно скоро понял, что раз уж устройство работает независимо от ПК, то надо что-то делать когда компьютер выключен. Просто отправлять устройство в спячку и выключать экран мне показалось не интересно, поэтому решил пусть уж тогда погоду хоть показывает. Поэтому прикрутил еще и поддержку получения текущих погодных параметров с Open Weather Map
1. Из-за недостатка свободных USB портов параметры работы ПК из Libre Hardware Monitor получаю по WiFi. Для этого в LHM есть такая удобная функция как Web сервер, откуда средствами ESP8266 качаю JSON и произвожу парсинг данных. Плюс данного подхода - это возможность расположить устройство в любом удобном месте не заботясь о длине проводов, наличии свободных USB разъемов и прочего.Также есть это возможность выводить любые данные на экран дисплея, а не только те которые выводит в COM порт автор мода LHM. Да и версия Hardware Monitor подойдет любая свежая. Очевидный минус подхода - парсинг JSON lидет гораздо медленнее, чем чтение из COM порта
2. ЖК экран 2004 имет кучу достоинств, типа дешевизны и простоты подключения, но габариты у него, что-то не особо радуют, да и отображаемая картинка в целом тоже. Поэтому для проекта использовал, так кстати купленный на недавней распродаже на алике за смешные 180 рублей TFT 1.8 дисплей с SPI интерфейсом. И габариты поменьше и картинка глазу приятнее
3. Так как решил получать данные с ПК по воздуху, то и микроконтроллер вместо Arduino использовал на базе ESP8266 - Wemos d1 mini
4. Помимо непосредственно, чтения датчиков решил добавить еще и отображение графиков температуры процессора и видеокарты. Не так чтобы особо нужная фича, но сделал просто чтобы была. Может кому пригодится
5. Через несколько дней использования, понял что мне очень не хватает отображения текущего времени на экране дисплея. Добавил синхронизацию времени по NTP протоколу и отображение его на экране
6. Опять же, довольно скоро понял, что раз уж устройство работает независимо от ПК, то надо что-то делать когда компьютер выключен. Просто отправлять устройство в спячку и выключать экран мне показалось не интересно, поэтому решил пусть уж тогда погоду хоть показывает. Поэтому прикрутил еще и поддержку получения текущих погодных параметров с Open Weather Map
Использовал Wemos D1 mini так что названия пинов будут с него
1.8 TFT Wemos
LED 3V3
SCK D5
SDA D7
A0 D1
RESET D6
CS D8
GND GND
VCC 5V
Тач кнопка
VCC 5V(можно и 3V3. Говорят работать будет стабильнее)
GND GND
OUT D2
1.8 TFT Wemos
LED 3V3
SCK D5
SDA D7
A0 D1
RESET D6
CS D8
GND GND
VCC 5V
Тач кнопка
VCC 5V(можно и 3V3. Говорят работать будет стабильнее)
GND GND
OUT D2
Настройка перед компиляцией осуществляется в скетче
В целом если вдруг пропустили этот шаг, то ничего страшного не произойдет. При первом запуске если устройство не сможет подключиться ни к одной известной сети, то оно перейдет в режим в точки доступа с именем PCDisplay. После чего подключившись к ней через смартфон и перейдя по адресу 192.168.4.1 можно настроить подключение к интернету
В переменной dataServer нужно прописать ip адрес вашего пк с запущенным Libre Hardware Monitor и обязательно удостовериться, что данная галочка стоит на месте
А также не забыть в настройках брэндмауэра ПК разрешить доступ для входящих подключений в локальной сети по 8085 порту
Также изменение значения переменной dataServer возможно и через Web интерфейс по адресу http:\\ip.ad.re.ss Сам IP выданный устройству можно посмотреть либо в настройках роутера, либо на экране устройства после перезагрузки при удачном подключении к WiFi
Чтобы отображалась погода необходимо прежде всего получить ключ API Open Weather Map. Это не сложно. Нужно просто зарегистрироваться на сайте https://openweathermap.org, перейти в личный кабинет, на вкладке API keys ввести имя ключа и нажать Generate. Полученное значение вставить в скетч как значение константы const String api_key = "xxxxxxxxxxxxxxxxxx"; вместо xxxxxxxxxxxxx в кавычках. В значении константы qLocation указать свой город. На этом настройка закончена
Ядро ESP8266 использовать 3.0 и выше!
ArduinoJSON 6 версии
В целом если вдруг пропустили этот шаг, то ничего страшного не произойдет. При первом запуске если устройство не сможет подключиться ни к одной известной сети, то оно перейдет в режим в точки доступа с именем PCDisplay. После чего подключившись к ней через смартфон и перейдя по адресу 192.168.4.1 можно настроить подключение к интернету
В переменной dataServer нужно прописать ip адрес вашего пк с запущенным Libre Hardware Monitor и обязательно удостовериться, что данная галочка стоит на месте
А также не забыть в настройках брэндмауэра ПК разрешить доступ для входящих подключений в локальной сети по 8085 порту
Также изменение значения переменной dataServer возможно и через Web интерфейс по адресу http:\\ip.ad.re.ss Сам IP выданный устройству можно посмотреть либо в настройках роутера, либо на экране устройства после перезагрузки при удачном подключении к WiFi
Чтобы отображалась погода необходимо прежде всего получить ключ API Open Weather Map. Это не сложно. Нужно просто зарегистрироваться на сайте https://openweathermap.org, перейти в личный кабинет, на вкладке API keys ввести имя ключа и нажать Generate. Полученное значение вставить в скетч как значение константы const String api_key = "xxxxxxxxxxxxxxxxxx"; вместо xxxxxxxxxxxxx в кавычках. В значении константы qLocation указать свой город. На этом настройка закончена
Ядро ESP8266 использовать 3.0 и выше!
ArduinoJSON 6 версии
Скачать архив со скетчем и 3d моделью корпуса можно во вложении
Скетч обновлен. Просьба перекачать файл во вложении. Список изменений в постах данной темы
Вложения
-
21.3 KB Просмотры: 25
-
26.9 KB Просмотры: 34
Изменено: