Авторизация
Зарегистрироваться

Внешняя телеметрия для компьютера на основе Arduino ProMicro и OLED дисплея

Здравствуйте, уважаемые читатели. Сегодня хочу рассказать об устройстве телеметрии или мониторинга для компьютера. Схема подключается к USB-порту компьютера, как внешнее устройство, показывает в реальном времени основные параметры процессора и видеокарты (частоту, температуру, загрузку). Под катом — схема устройства, сборка, немного столярки и демонстрация работы, текста немного, больше фото…

Проект был найден на просторах интернета, называется он Gnat-Stats, ссылка на hackaday.io. Проект предусматривает сборку устройства на основе разных плат микроконтроллеров (Arduino ProMicro, STM32 BluePill) и разных дисплеев (на SH1106 и SSD1306).

Компоненты и схема

Схема устройства очень простая, в основе всего два компонента — плата Arduino ProMicro и OLED дисплей с размером экрана 1,3", были куплены на Aliexpress у одного продавца.

ProMicro — ссылка

OLED дисплей — ссылка

Нарисовал схему устройства


Сборка

В среде Arduino IDE прошиваем наш микроконтроллер, собираем схему для проверки:

Скетч есть на сайте проекта, дополнительно выложил на Google Drive, ссылка в конце статьи. Убедившись что всё работает, можно собирать в более компактный вид, для будущей установки в корпус. Питание соединяем проводами, а линию данных через разъём PLS:

Получился такой себе «бутерброд»:

Что бы ничего не закоротило, между платами наклеил небольшой кусочек двухстороннего скотча
Теперь нужно делать корпус.

Корпус

Делать корпус буду конечно же из дерева, в закромах нашлась дубовая доска, толщиной 20 мм. Разметил и с помощью стамески выдолбил место под платы:

Ножовка, наждачный круг и не ограниченное время — получаем это:

Корпус решил сделать немного под наклоном, что бы экран лучше читался:
Корпус не опрокидывается, так как доска, из которой он был сделан, была довольно толстая (20 мм).

С помощью дремеля, вырезал отверстие для USB-кабеля:

Для передней панели нашёл у себя синее затемнённое оргстекло, вырезал из него кусочек нужного размера:

Примеряем все части «пазла»:

Пропитываем корпус льняным маслом, собираем и склеиваем всё вместе


Испытания

Для работы устройства, помимо прошивки микроконтроллера, необходимо ещё две программки:
• первая Open Hardware Monitor — собирает все данные с датчиков компьютера (температура, частота и др.)
• вторая Hardware Serial Monitor — передаёт эти данные нашему устройству
Программы можно поставить в «Автозагрузку», они будут висеть в трее и не мешать, ссылка на программы в конце статьи.
При первом включении Hardware Serial Monitor автоматически определит к какому порту подключено наше устройство, если по каким либо причинам это не произошло, можно указать в ручную. После этого устройство готово к работе:


Для демонстрации работы нашей телеметрии, запустил игру чтобы нагрузить систему и сделал гифку, испытания проводились на домашнем компьютере (в рабочем нет видеокарты):
Как видно из демонстрации, присутствуют три «экрана» с разными параметрами процессора и видеокарты.

Для понимания размеров устройства — фото рядом с мышкой:

Вот такая собственно телеметрия или мониторинг (кому как угодно), из доработок для себя я вижу что нужно было выпаять светодиоды на ProMicro, чтобы убрать красную засветку внутри корпуса.

Скетч и программы для работы устройства — ссылка

Всем удачных поделок, спасибо за внимание.
Добавить в избранное +170 +290
свернуть развернуть
Комментарии (156)
RSS
+
avatar
  • vigos
  • 25 июля 2019, 09:34
+11
Отличная работа.
+
avatar
+8
нужно было выпаять светодиоды на ProMicro, чтобы убрать красную засветку внутри корпуса
А по мне, так даже интересней, придаёт технологичности в устройство. Замечательный, действительно доступный даже не особо осведомлённым в ардуино, проект!
+
avatar
+1
Истинно плюсую!!!
Хотел сделать на основе LCD1604 и LCD Smartie, но не прокатило, все скетчи расчитаны либо на 1602, либо 2004.
Сейчас вашу схему попробую, тем более есть и экран и ардуинка.

А вот и первая засада :( в проект требуется Arduino pro micro…
Может кто из знающих переделал проект на Arduino Nano, или хотя бы подсказал что менять.
+
avatar
+1
Ничего специфического от Micro не задействовано. Должно работать и на Nano.
+
avatar
  • Demz
  • 25 июля 2019, 15:40
+1
да оно и просто на микрухе работать будет, от микро тут только коннектор USB нужен, чтобы не городить огород.
+
avatar
0
ссылки ведут не туда)
+
avatar
  • vitgo
  • 25 июля 2019, 09:46
+1
У меня всё нормально
+
avatar
0
Заработало!
+
avatar
  • Kila
  • 25 июля 2019, 09:45
0
А чем OSD наложение параметров не устроило?
+
avatar
0
некоторые античит проги ОСД наложение не любят.
+
avatar
  • kven
  • 25 июля 2019, 09:51
0
это на постоянку? прогорит быстро.
а диоды можно тупо изолентой заклеить, парой слоев.
+
avatar
  • vitgo
  • 25 июля 2019, 09:53
0
В скетче есть настройка когда изображение на экране инвертируется.
+
avatar
  • kven
  • 25 июля 2019, 09:56
0
это гуд, но все равно будет неравномерно, а за год эти модули сильно деградируют.
+
avatar
  • Angrim
  • 25 июля 2019, 10:06
+3
Почитайте про xiaomi band 2, сделаны на экранах схожих с этим, только меньше. Экран загорается при взмахе. Случайных взмахов в процессе использования хватает, чтобы у части людей он становился просто нечитаем.
Я забыл выключить девайс на выходные с таким же экраном, изображение выгорело. При полной заливке яркость выгоревших пикселей на глаз составила не более 50% от остальных. Будет инверсия-не за 3, а за 6 дней общая яркость упала бы на 50%

Но вообще девайс годный… понять бы, сколько отжирает ресурсов по, постоянно анализирующее нагрузку и отправляющее эти данные по коп порту
+
avatar
+7
Выгорает спустя месяцы одного режима.
Все же скринсейвер надо
+
avatar
  • X3Shim
  • 25 июля 2019, 21:53
0
2.5 года у меня метеостанция работает, выдает статичную картинку, меняются только циферки, не вижу деградации, норм кажет :)
+
avatar
  • ASPtr
  • 25 июля 2019, 12:59
+8
Слухи о неизбежной и скоропостижной смерти подобных дисплеев, скажем так, несколько преувеличены. Вот экземпляр очень необычного и редкого устройства, тадам… метеостанции )) В основном, конечно, как CO2-метр функционирует. Работает уже два года, практически круглосуточно. Дисплей отключается по датчику освещенности где-то часа в три ночи (да, я сова в терминальной стадии), включается в восемь утра по таймеру. Не, если поставить рядом новый экранчик, то разница, наверное, будет заметна. Но в практическом плане выгорание абсолютно не мешает.
+
avatar
0
О валяется такой реобас от кулер мастер, хорошая была штука году так в 7м, надо будет найти его а то там корпус прямо для усилителя просится.
+
avatar
  • ASPtr
  • 25 июля 2019, 13:41
0
Ну там из корпуса, только передняя панель ))
+
avatar
0
Стильный девайс. Есть где-нибудь обзор/статья?
+
avatar
  • ASPtr
  • 25 июля 2019, 17:15
0
Есть где-нибудь обзор/статья?
К сожалению — нет. Как пишут на радиокоте: «Автор слишком ленив, чтобы давать описание» ©
На самом деле, там из примечательного только корпус. Донором блестящих элементов для которого, как справедливо отметили выше, послужил реобас AEROGATE II.
В программной части — ничего интересного, обычный «быдлокод». Могу поискать исходник, если действительно интересно.
+
avatar
-1
слухи о неизбежной и скоропостижной смерти подобных дисплеев, скажем так, несколько преувеличены
нет, это факт
практическом плане выгорание абсолютно не мешает
там точно олед?
+
avatar
  • ASPtr
  • 25 июля 2019, 17:08
+1
нет, это факт
А то, что устройство работает два года, без видимых последствий, это не факт?
Чтобы делать какие-то выводы у меня, по крайней мере, есть работающий пример. А у Вас?

там точно олед?
Мне, безусловно, льстит, что этот девайс можно принять за некое фабричное изделие. Но если Вы не поняли, то это самодельное устройство, т.е. я САМ его сделал. И какой там стоит дисплей знаю абсолютно точно — OLED на контроллере SH1106.
+
avatar
0
то, что устройство работает два года, без видимых последствий, это не факт?
может вам хороший экземпляр попался. лично я все что видел, долго без выгорания не работало (правда я дорогие фирменные не покупал, мне лично больше ипс нравится)
я отлично знаю, что есть возможность делать равномерное выгорание и дисплеи сами по качеству сильно отличаются, тем не менее, сейчас в общей массе так, как писали выше. ладно, проехали
+
avatar
  • ASPtr
  • 25 июля 2019, 17:30
0
может вам хороший экземпляр попался
Возможно. Давно покупал, когда только появились — за дорого.
Может и то, что дисплей «отдыхает» несколько часов в день, помогло ему сохраниться. А может и нет. ))
+
avatar
  • sim31r
  • 27 июля 2019, 21:41
0
Не новый экран нужно, а залить экран белым. Тогда видно будет выгоревшие пиксели.
+
avatar
+8
При виде первого фото с доской, никак не ожидал увидеть столь шикарный конечный результат.
Класс!!!
+
avatar
  • vitgo
  • 25 июля 2019, 10:03
+7
Я сначала выдолбил полость потом вырезал корпус. Боялся что если сделаю наоборот, при работе со стамеской может треснуть корпус, размеры маленькие.
+
avatar
  • wwest
  • 25 июля 2019, 13:40
+1
Дело не в размерах а в том что дуб сильно пористый, твёрдый и ХРУПКИЙ как стекло!
Так что стенки малой толщины наверняка будут скалываться при ручной обработке.Очень не приятный и сложный материал.
Ну и пропитывать такой пористый материал маслом… ну на любителя.Лучше уж лаком или вообще не покрывать.Дуб в защите и стабилизации древесины в комнатных условиях не нуждается.

Лучше взять Бук, граб, берёзу, ясень, ольху… и не иметь проблем.
+
avatar
0
Не, ну идея ясна и последовательность логична.
+
avatar
  • Angrim
  • 25 июля 2019, 09:59
+3
Данный oled дисплей для таких проектов плохо подходит. Выгорает очень быстро от статичного изображения. Необходимо делать «скринсейвер», что не очень удобно а данном случае, так как смысл этого девайса всегда показывать инфу.
В данном случае tft оправдан. Есть качественные, но дорогие ips, есть не очень хорошего качества, но относительно дешевые tn. Для данного применения TN должно хватить
+
avatar
  • Angrim
  • 25 июля 2019, 10:00
0
Про очень быстро-за сутки горящие постоянно пиксели уже сильно заметнее не горящих при полной заливке экрана. Даже при периодической инверсии экран потускнеет очень быстро, просто при инверсии он будет тускнеть относительно равномерно
+
avatar
  • kven
  • 25 июля 2019, 10:06
+4
не долго, зато красиво
+
avatar
  • Angrim
  • 25 июля 2019, 10:08
+1
Вот за это можно и плюс поставить
+
avatar
  • g00gle
  • 25 июля 2019, 10:25
+5
Да ладно, на пару лет его хватит. Все зависит от времени использования.
+
avatar
  • zkolja
  • 26 июля 2019, 14:41
0
откуда сведения в «пару лет»?
автор показывает в чуть больше года (378 дней)
или в… где живёте год составляет всего 180 дней?
+
avatar
  • g00gle
  • 26 июля 2019, 17:41
0
378 дней круглосуточно. В данном (и в большинстве других) устройстве это ни к чему, поэтому ресурс будет поболее.
+
avatar
+1
Собирал аналогичный дисплей USB-LCD (atmega8+LCD2004 или любой подобный) и прога LCD Smartie(древняя прога с кучей плагинов), AIDA64 и другие
+
avatar
0
А подобного для замены GPanel от Palit никто не встречал?
+
avatar
0
Классно получилось, дабы меньше выгорал, сделайте динамику переключения экранов, если их несколько… пиксели выгораю когда они в статике.
+
avatar
+7
Что бы не моргали RXLED и TXLED надо после Serial.begin вставить DDRD &= ~_BV(PD5); DDRB &= ~_BV(PB0);. Это переведет эти ножки на ввод.
+
avatar
  • vitgo
  • 26 июля 2019, 10:52
0
Спасибо, попробую.
+
avatar
+1
Надо было внутри еще вставить рамку из обложки папки вокруг дисплея, чтобы она закрыла плату. Тогда бы было видно только экран.
Но в любом случае получилось очень здорово. Однозначно плюс и спасибо за наводку. Закажу себе такой дисплей и тоже попробую собрать.
+
avatar
  • vitgo
  • 25 июля 2019, 11:23
+1
По поводу рамки — хорошая идея, спасибо.
+
avatar
0
По поводу рамки — хорошая идея, спасибо.
Стекло хорошо приклеено? Если не сильно, можно добавить рамку и будет прям совсем хорошо.
+
avatar
0
Проще всего, сделайте рамку из черного аракала(самоклейка у рекламщиков) и наклейте ее с обратной стороны стекла. Заранее конечно вырежьте окно под экран.
+
avatar
  • wwest
  • 25 июля 2019, 13:47
0
Рамку лучше чёрным лаком на стекло с обратной стороны.
+
avatar
0
Рамку лучше чёрным лаком на стекло с обратной стороны.
С лаком накосячить можно. А пластиковая рамка будет лучше.
+
avatar
  • wwest
  • 25 июля 2019, 22:16
0
Синяя изолента спасёт отца русской демократии.
Прямые линии, ровные углы…
И аэрозольный баллончик чёрной автомобильной алкидной эмали.
А пластиковую рамку нужно точно вырезать углы и она имеет заметную толщину-не бумага чай.
+
avatar
+1
Суперски, спасибо! Заморочусь пожалуй.
GTX1060, живут же люди)))
+
avatar
  • kven
  • 25 июля 2019, 11:47
0
GTX1060, живут же люди)))
в смысле?
+
avatar
0
Ну вот я до сих пор на GTX660 сижу
+
avatar
  • kven
  • 25 июля 2019, 11:54
0
ну я вообще видюху вынул и на встройку перешел, как играть забросил, просто гтх1060 валом на вторичке после ферм, в разы дешевле магазина, кто играет — тому выгодный момент.
+
avatar
  • Marble
  • 25 июля 2019, 17:57
0
Сейчас самое время апгрейдить видюху — вторичный рынок завален предложениями от майнеров. Я за $230 взял GTX 1080 c остатком гарантии еще на полтора года. Главное — тщательный визуальный осмотр и обязательная проверка стресс-тестами при покупке, в интернете куча гайдов как выбирать видюху после майнинга.
+
avatar
+1
Стекло надо сделать 3D или хотя бы 2,5D
+
avatar
  • Offi
  • 25 июля 2019, 12:37
0
А сейчас оно типа двухмерное, да?
P.S. Шлифовать грани стекла дело не самое здоровое, не уверен, что стоит в данном случае…
+
avatar
0
у китайцев уже 20D правда на картинках «честно» пишут, что всё таки 9D ;)
+
avatar
  • LePart
  • 25 июля 2019, 12:11
0
А на мониторе она не отображается, информация эта? Через Conky, например, или AIDA.
+
avatar
  • Oksion
  • 25 июля 2019, 12:23
0
Отлично получилось. Корпус вышел стильно. А проект телеметрии на ESP никто не портировал что-бы без проводов данные передавать (хотя провод питания всёравно нужнен будет). Вроде как задачка не сложная
+
avatar
  • u3712
  • 25 июля 2019, 12:32
0
с помощью стамески выдолбил
Купите мультитул, пригодится. ))
+
avatar
  • vitgo
  • 25 июля 2019, 12:48
+4
Я смотрю на CNC 3018
+
avatar
0
Тогда уж лучше фрезер. И дешевле, кстати.
+
avatar
  • Demz
  • 25 июля 2019, 15:52
0
это где это фрезер дешевле мультитула?
Например минимальный комплект мультитула 44,5$ с бесплатной доставкой, я себе брал. Кстати, неплохая зверюга, тут уже он обозравался, только там шильдик HILDA и KINGDIAN были, внутри все трое — аналоги.

Ладно, сам нашел кромочник: 32+5$, за качество — не скажу, просто первый в выборке, так что предыдущий оратор прав.
Вот только этим фрезером прямоугольное отверстие не сделать(ограничены радиусом фрезы), а мультитулом — можно. Дабы не разжигать холивар — напомню, чо у каждого из них своя специфика и область применения.
+
avatar
  • sim31r
  • 27 июля 2019, 21:42
+1
Автору был бы полезней 3D принтер )
+
avatar
  • Addiss
  • 25 июля 2019, 23:40
0
+u3712
+Demz
Вот это называется «мультитул»: ссылка
А то, что на фото у u3712 и по первой ссылке Demz, за 44,5$, называется «реноватор». Давайте будем называть вещи своими именами.
+
avatar
  • tuz_83
  • 25 июля 2019, 13:02
+3
Так то оно да, но.........
Что именно не хватало во внутренней телеметрии и зачем нужна внешняя?
P.S. А так проект на ардуино конечно интересен ))
+
avatar
  • vitgo
  • 25 июля 2019, 13:06
+1
проект на ардуино конечно интересен
Вот и я об этом :)
+
avatar
  • tuz_83
  • 25 июля 2019, 13:27
+4
Интересен — да, не спорю. Но ведь наиграетесь быстро. Сколько раз все ставили эти «тулбары-информеры» на разных ОС и надоедали они довольно быстро. Так там программно — взял и убрал, а тут на полку придётся — «обидно» ))
+
avatar
  • udavst
  • 28 июля 2019, 08:48
0
у меня похожее решение, только на lcd 4x16 встроено в отсек 5.25" и отображает состояние с aida через lcdSmartie, лет 10 работает, вполне хорошо и полезно на компе смотрится, до этого был экранчик поменьше, на lpt-порту сидел, ушел в историю вместе с портом.
+
avatar
0
Я бы такой сделал для работы — теста ноутов после ремонта. Когда запускается бенчмарк он чаще всего отображает только фпс, а температуры нужно смотреть в другой проге, которая скрывается в полноэкранном режиме. Можно конечно подключить второй моник и вывести на него, но он от рабочего компа, что опчть же неудобно.
+
avatar
  • kven
  • 25 июля 2019, 13:29
0
а никому не попадался относительно готовый ардуино-проект, чтобы инфу из видеоплеера под win (classic, kodi) выводить на дисплей типа hd44780 через rs323 (usb)?
а то самому делать у меня руки наверное никогда не дойдут.
(lpt+44780 не предлагать)
+
avatar
0
Гляньте тот же LCD Smartie
по крайней мере плагины под Windows Media Center Edition, Windows Media Player, BS Player имеются.
+
avatar
  • kven
  • 25 июля 2019, 14:34
0
на сколько помню, это и есть проект на LPT-порте, нет?
где ж его нынче взять то, адаптеры городить что ли.
+
avatar
0
elchupanibrei.livejournal.com/16535.html
1602 или 2004 в связке с ардуино
Код с некоторым допилом заработал отсюда, но я пробовал WH1604, работает, но с глюками, а знаний в ардуино-программировании нет, чтобы поправить.
Спасибо Vitaliy_S за наводку.
+
avatar
  • kven
  • 25 июля 2019, 15:11
0
спасибо, ознакомлюсь
+
avatar
0
Дичайше плюсую за корпус.
Но настоящие крутые парни все-таки делают это из бойка кувалды килограмм на 5, напильником, сверлами и зубилом.
+
avatar
  • tuz_83
  • 25 июля 2019, 18:24
+5
Но настоящие крутые парни все-таки делают это из бойка кувалды килограмм на 5, напильником, сверлами и зубилом.
«Крутые» вообще голыми руками могут ))

+
avatar
0
Под стекло, наверное, был смысл подложить черную рамку, ограничить только дисплей. А то диоды не совсем красиво подсвечивают плату внутри.
+
avatar
+3
Отлично получилось, вообще нравятся мне такие экранчики, хоть и не долговечные.

А зачем название процессора и видяшки там? Вдруг при работе поменяется что ли?)) Это лишняя инфа имо.
+
avatar
0
У вас мышка Логитек.Зачем придумывать то что уже придумано? Устанавливаете на смартфон прогу от Логитека с маркета и все параметры у вас на телефоне + управление и куча всего.Тоже самое если нет Логитека, а есть видеокарта Ati.У Нвидиа тоже что-то похожее было.
+
avatar
  • Z2K
  • 25 июля 2019, 16:11
0
Приложение работает только при наличии в системе мышки Логитек? Любой модели?
+
avatar
  • Kana
  • 25 июля 2019, 16:42
0
Работает при наличии Logitech Gaming Software или есть более продвинутые аналоги именно для мониторинга — NZXT Cam или Remote System Monitor например, ставите софт на комп и телефон и имеете всю телеметрию на любом смартфоне.
+
avatar
  • b1Ack
  • 29 июля 2019, 03:00
0
У мышки с фото обзора GamingSoftware нету, да и без Mouseware тоже наверное обходятся почти все — настраивать особо нечего.
+
avatar
0
Выводит все параметры что может отображать aida64. Имеется и свой монитор но он немного скуден на инфу.Любой аксессуар от Логитек.
+
avatar
0
Рабочий комп у вас я так понял HP DC7800? Какой там мониторинг? Дело в том что у меня рабочий тоже HP DC7900, давно руки чешутся что-то подобное замутить. Стоит ли повторять проект?
+
avatar
  • fdsnk
  • 25 июля 2019, 16:22
0
Кто-нибудь делал через bt интерфейс и питанием от аккумулятора/батарейки? И возможно ли это?
+
avatar
  • Avacha
  • 25 июля 2019, 19:44
0
Возможно, если Ваш bluetooth адаптер в компе может прикинуться последовательным портом. К ардуине цепляем HC-06, даже скетч менять не надо, и вместо promicro можно promini использовать.
+
avatar
  • Marble
  • 25 июля 2019, 18:03
0
А можно ли это подружить с бОльшим дисплеем(высокого разрешения) и допилить прошивку? Я уже несколько лет вынашиваю идею подобного устройства, но более продвинутого — с рисованием графиков загрузки по каждому ядру проца, а также загрузку памяти и сети.

Хотел использовать старый андроид смартфон/планшет для этого, но заряжать и одновременно передавать данные по кабелю(т.е. не переводя устройство в режим хоста) — невероятно муторно, а для беспроводной передачи я слишком параноидален)
+
avatar
0
Установите на комп и планшет Logitech Gaming Software и выводите все параметры включая тренды.Фантазия только от вас зависит.
+
avatar
  • Marble
  • 25 июля 2019, 19:33
0
Она через беспроводную сеть работает. С беспроводным соединением я и сам могу такую софтину написать. Но я выше писал, что не хочу по воздуху передавать.
+
avatar
0
Я помню году так в 2006 делал на 10 срочном дисплее без всяких андурин.Правда софт сторонний был (неуч я и таких вещей делать не умею )
Сейчас погугли ссылки только на андурину.
+
avatar
0
Чегой-то слева артефакты полезли и температуру проца не цепляет, надо копать)
+
avatar
  • vitgo
  • 25 июля 2019, 18:32
+2
У Вас дисплей не такой как у меня, 0.96" размер экрана, может в этом причина.
+
avatar
0
ну что было) вижу теперь что 1,3", спасибо
хотя разрешение идентичное, всё же фруктовые библиотеки не очень мне нравятся
+
avatar
+2
всё же фруктовые библиотеки не очень мне нравятся
да они знатно кривые внутри, но ардущикам нравится :)
+
avatar
0
значит я не ардуинщик)))
+
avatar
  • ASPtr
  • 26 июля 2019, 02:27
+4
Попробуйте тип контроллера в настройках поменять
OLED_SH1106 <---> OLED_SSD1306
+
avatar
0
артефакты победили, спасибо. копаю температуру процессора
+
avatar
  • Deemmkka
  • 12 августа 2019, 05:26
+1
Ну как, удалось победить температуру проца? У меня почему-то тоже не отображается.
+
avatar
  • 579089
  • 26 июля 2019, 15:10
0
Запустил на НАНО и 1306, но дисплей у меня улетел на ноги А4 и А5. Не могу понять где в программе они определяются.
И очень старая прога монитора. У меня проца совсем не видит, только его загрузку.
+
avatar
0
В скетче используется аппаратный I2C и ноги у него заданы аппаратно.
+
avatar
  • 579089
  • 26 июля 2019, 15:31
0
Да, спасибо разобрался. А можно их как нибудь переопределить малой кровью?
+
avatar
0
Надо подключить библиотеку с программным I2C — там уже определить где SCL и SDA.
+
avatar
+1
У меня на экранах только надписи и никаких показаний, иногда после запуска показывает загрузку проца, до первой смены экранов.
LibreHardwareMonitor поновее брал здесь нормально райзены и показания датчиков AsRock AB350 Pro4 определяет.

Пока забил, лучше на LCD Smartie соберу.
+
avatar
0
надо было сначала приклеить стекло, потом уже малом пропитывать
+
avatar
  • vitgo
  • 29 июля 2019, 08:09
0
Аргументируйте
+
avatar
0
плохо приклеится на промасленную деревяшку
+
avatar
-3
Ждал лютую штуку, которая подключается к материнке и сама опрашивает железо. :(
+
avatar
  • MaDerer
  • 01 августа 2019, 13:39
0
Поднял мониторинг на NodeMCU 1.0. Работает с приличными косяками как с отображением (надо править скетч), так и по показаниям (надо настраивать/менять Open Hardware Monitor).

Но всё таки


Фото


Косяки, это накладывающиеся надписи (ну не влазит в одну строку название моего процессора) и бредовая температура процессора (15 градусов, когда в квартире 30+).
+
avatar
  • MaDerer
  • 01 августа 2019, 16:05
0
Поправка. Температуру совсем не показывает, хотя в мониторинге она есть, т.е. надо копаться в скетче.
+
avatar
  • vitgo
  • 01 августа 2019, 16:10
0
Почему выбор пал на NodeMCU
+
avatar
  • MaDerer
  • 01 августа 2019, 17:05
0
«Я его слепила из того что было...»

Просто собрал метеостанцию, поигрался, подпалил NodeMCU и заказал еще парочку на «поиграться». Затем решил уменьшить потребление и на пробу заказал парочку ESP-12E, но у них оказалась проблема с выходом из глубокого сна, по крайней мере на скетче Arduino IDE. В итоге заказал еще Wemos, ESP-12F, ESP-12E и еще один экранчик SSD1306.

Пока заказ шел, появилась ваша статья. Arduino Pro Micro собираюсь (а может и собирался, если со скетчем справлюсь) заказать. А тем временем решил вот собрать из того, что есть.

Правда, тут мне повезло, скетч собрался с SSD1306, а с SH1106 некультурно матерился. Ну и пришлось добавить строки после void setup() {:

Wire.begin(D6, D5);
Wire.setClock(100000);

что бы повесить экран на GPIO12 и GPIO14.
+
avatar
  • Deemmkka
  • 09 августа 2019, 19:58
0
Господа, сильно не бейте, первый раз имею дело с Arduino. Короче приобрел все компоненты как в данном обзоре, скачал прогу для заливки скетчей, но ничего не получается. Как я понял нужно скачать дополнительные библиотеки. Может кто подскажет? А может у кого-то уже есть готовый архивчик?
+
avatar
  • vitgo
  • 10 августа 2019, 21:35
0
В скетче есть ссылки на все необходимые библиотеки.
+
avatar
  • Deemmkka
  • 11 августа 2019, 08:41
0
Только вы не уточнили в статье, чтобы залить скетч пришлось установить несколько библиотек (Adafruit, Neopixel и т.д.), а так, да, спустя пару дней шаманства все получилось
+
avatar
  • Deemmkka
  • 11 августа 2019, 09:14
0
Кстати, да, температуру проца то не показывает, хотя в программе для винды все норм. А как оставить только один экран вместо постоянно меняющихся трёх?
+
avatar
  • MaDerer
  • 23 августа 2019, 03:59
0
Если не сильно углубляться, то в строках:
/* cycle screen DisplayStyles */
int displayChangeMode = 2;

Выставьте дисплей, который вам предпочтителен и закомментируйте строки:
/*change display screen*/
  if ((millis() - lastDisplayChange) > displayChangeDelay)
  {
    if (displayChangeMode == 1) {
      displayChangeMode = 2;
      display.fillRect(0, 0, 128 , 64, BLACK);

    }
    else if (displayChangeMode == 2) {
      displayChangeMode = 3;
      display.fillRect(0, 0, 128 , 64, BLACK);
    }
    else if (displayChangeMode == 3) {
      displayChangeMode = 1;
      display.fillRect(0, 0, 128 , 64, BLACK);
    }

    lastDisplayChange = millis();
  }
+
avatar
  • Deemmkka
  • 23 августа 2019, 09:18
0
я уже разобрался, но спасибо
+
avatar
-1
матрица от планшета от 7 дюймов и выше + nzxt cam или aida64, и выходит такое

+
avatar
  • Deemmkka
  • 19 августа 2019, 09:53
0
а к материнке как подключается матрица? в винде тупо вторым монитором определяется?
+
avatar
0
Сигнал с видео выхода ( мат плата или видеокарта ) идёт на вход hdmi скалера, а со скалера уже на матрицу от планшета.Определяется как второй монитор в винде.
+
avatar
  • Deemmkka
  • 19 августа 2019, 10:17
0
Кстати, да, хорошая мысль, спасибо
+
avatar
+1
Проще и без гемора со скетчами и ком портами :-) в аиде самому скрин можно какой угодно и любого цвета сделать.
+
avatar
  • Maks777
  • 18 августа 2019, 22:07
0
У меня также температуру процессора не показывает. Кто нибудь решил проблему?
+
avatar
  • Deemmkka
  • 19 августа 2019, 09:36
0
Здесь, я как понял, мало кто овечает
+
avatar
  • Maks777
  • 19 августа 2019, 09:41
0
Это да) Придется самому смотреть скетч)
+
avatar
  • Deemmkka
  • 19 августа 2019, 17:18
0
Ну как успехи? я вот сейчас смотрю скетч и нифига разобраться не могу
+
avatar
  • Maks777
  • 19 августа 2019, 17:22
0
Поставил версию 1,41 тоже самое. Я только понял что дисплеии 1,2,3 в скетче отвечают за виды и отображение… Может где то строка какая закоментирована? Или на АМД камнях такой глюк?
+
avatar
  • Maks777
  • 19 августа 2019, 17:48
0
Нашел автора на ютубе, оставил ему комментарий) Если ответит что то толковое напишу Вам!
+
avatar
  • Deemmkka
  • 19 августа 2019, 17:59
+1
Я тоже спросил на ютубе, он молчит. Я нашел строки отвечающие за вывод температуры в скетче, вроде все правильно, но не работает. Кстати глюк не в AMD, у меня камень от Intel. Уже час разбираюсь, ничего не понимаю!
+
avatar
  • Maks777
  • 19 августа 2019, 18:05
0
ДА, значит дело не в камне… Будем ждать ответа.
+
avatar
  • Maks777
  • 19 августа 2019, 19:20
0
Есть еще одно предположение, в скетче есть функция неопиксель для мигания светодиодного кольца, эту функцию можно вырезать и освободиться ОЗУ, из за нехватки которого может и что то не функционирует.
+
avatar
  • Deemmkka
  • 19 августа 2019, 22:29
+1
Не думаю, хотя все может быть, у меня уже терпения нет. Написал ещё на форуме проекта, может чел который написал код что-то подскажет, если что отпишусь.
+
avatar
  • Maks777
  • 20 августа 2019, 08:17
0
Спасибо! Мне тоже ничего конкретного пока никто не ответил)
+
avatar
  • Deemmkka
  • 21 августа 2019, 11:16
+1
Подключил сегодня данный аппарат к другому компу, температуру показывает, возможно из-за того, что проц относительно старый (i7-3615QM), короче intel 3-ей серии. Мне кажется проблема в программе Open Hardware Monitor для винды (ей нужно обновление), т.к. программа к-рая на официальном сайте вообще не определяет мой intel i5-8400, и в скетче все правильно, ну или значения температуры для новых процессоров должны браться с других адресов
+
avatar
  • Maks777
  • 21 августа 2019, 11:24
0
Спасибо за инфу! Мне так и не кто не ответил пока… В вашем мнении есть рациональное зерно! А я на рабочем ПК проверял не показала температуру серия AMD-FX.
+
avatar
  • Deemmkka
  • 21 августа 2019, 12:06
+1
Разобрался, заработало. Спасибо Berserker_s. Нужен HardwareMonitor новейшей версии. Отсюда ci.appveyor.com/project/LibreHardwareMonitor/librehardwaremonitor/build/artifacts
+
avatar
  • Maks777
  • 21 августа 2019, 13:49
0
Спасибо большое, вечером проверю) Думаю все запуститься) — раз Вы уже проверили)
+
avatar
  • Maks777
  • 21 августа 2019, 19:27
0
Мне к сожалению не помогло ( Вы в этой программе же ничего не настраивали?
+
avatar
  • Deemmkka
  • 21 августа 2019, 20:01
0
Нет, удалил папку со старым Hardware Monitor, запустил новый, затем запустил Serial Monitor, скетч был версии 1.41. Обязательно запускайте проги с правами администратора!!!
+
avatar
  • Maks777
  • 21 августа 2019, 21:20
0
Сделал также и прошивка у меня 1,41… Непрокатило (
+
avatar
  • MaDerer
  • 23 августа 2019, 05:53
0
Попробуйте утилиту в моём коментарии ниже.
+
avatar
  • MaDerer
  • 23 августа 2019, 09:48
0
В общем ссылка кажется получилась битая или Муська их ломает. В общем брал на http://runawaybrainz.blogspot.com, куда попал из About в Gnat Stats Hardware Serial Monitor. Там перейти по Project Design Files, а там уже Temporarily GoogleDrive link.
+
avatar
  • MaDerer
  • 23 августа 2019, 04:40
0
Начал углубленно копаться в скетче. Если что накопаю, буду кидать тут или в ответах самому себе.

Пока что «решил» длинное имя названия процессора. Сделал может криво и не совсем универсально, но результат меня устраивает. Значит так, во вкладках DysplayStyle1-3 перед строкой:
display.println(cpuName);
добавьте строку
cpuName = cpuName.substring(0, 12);
где вместо «12» поставьте удобное для себя количество символов.

По поводу того, что бы был только один экран, я ответил выше.

Попробую накопать отсутствие показа температуры процессора.
+
avatar
  • MaDerer
  • 23 августа 2019, 05:52
0
Предворительные результаты есть. Скачал по ссылке со страницы проэкта с drive.google архив GnatStats_HardwareSerialMonitor_v2.1.zip и запустив его появилась температура, правда пропали данный SYSRAM. Но всё таки
Скриншот
родная утилита материнской платы показывает температуру процессора (2) с разницей с температурой#1 материнской платы в Open Hardware Monitor (1) +-0,5 градуса (на скрине 1 градус т.к. видимо не успело обновиться).
В это же время температура CPU Core в OHM (3) может показать и 19 градусов в то время как в квартире 25-27, т.е. полная чушь.

Значит надо либо как то выциплять данные, которые передает Hardware Serial Monitor (задумка есть) и смотреть, передаются ли данные с датчиков якобы материнской платы, а затем править скетч; либо искать другую версию OHM (ту, что выложили в коментариях выше уже попробовал.
+
avatar
  • MaDerer
  • 23 августа 2019, 08:10
0
Продолжаю. Боюсь особо радоваться нечему. Настроил перехват даных пересылаемых по COM-порту и вот что вышло:
C30c 18%|G38c 42%|RG|CPU:AMD A8-5600K APU with RaGPU:NVIDIA GeForce GTX 560 Ti|GCC50|GMC135|GSC101|CHC3900|.
Т.е. если перевести частично: CPU Temp — 30 градусов, загрузка 18%, Видеокарта — 38 градусов, загрузка 42%. RG — это наверное оперативная память. Ну и так далее.
Т.е. вывод такой — эта утилита уже скомпилированна таким образом, что бы брать из Open Hardware Monitor только определенные данные, и если необходимо что-то добавить или изменить, придется брать исходники и собирать самому.
+
avatar
  • Deemmkka
  • 23 августа 2019, 09:27
0
С помощью чего вы перехватываете данные?
+
avatar
  • MaDerer
  • 23 августа 2019, 09:37
0
HDD Software Device Monitoring Studio. Короче первое что попалось на просторах интернета и нормально запустилось.
+
avatar
  • Deemmkka
  • 23 августа 2019, 09:50
0
Спасибки, попробуем, хотел бы еще какие-нибудь данные отобразить на дисплейчике
+
avatar
  • MaDerer
  • 23 августа 2019, 10:07
0
Для этого уже надо вплотную заниматься с исходниками Hardware Serial Monitor, что бы поменять захват данных из Open Hardware Monitor. Увы, но это не мой уровень :(

Но в принципе можно необходимую инфу из 3-х дисплеев собрать на одном. А перехваченные мною данные просто помогают понять логику работы скетча.
+
avatar
  • MaDerer
  • 23 августа 2019, 09:35
+1
Ну и напоследок вот что передает 1.1 версия Hardware Serial Monitor (отличия подчеркнул):
Cc 44%|G40c 19%|R5,0G|CPU:AMD A8-5600K APU with Radeon HD GraphicsGPU:NVIDIA GeForce GTX 560 Ti|GCC405|GMC324|GSC810|CHC4024|.
Т.е. вывод я могу сделать такой: если не отображается температура, а в мониторинге она есть, то либо надо Open Hardware Monitor подгонять под Hardware Serial Monitor, либо наоборот. А это работа с исходниками, компиляция, Visual Studio, С++ и т.д…
+
avatar
  • Maks777
  • 23 августа 2019, 10:49
0
Спасибо за работу!
+
avatar
  • Maks777
  • 23 августа 2019, 17:52
0
Скачал с облака по той ссылке GnatStats_HardwareSerialMonitor_v2.1 и появились показания температуры) Ура!!! Спасибо!!!
+
avatar
  • MaDerer
  • 24 августа 2019, 11:44
0
И всё таки это не конец!!! Стал мало есть и плохо спать… В общем не выдержал и скачал себе Microsoft Visual Studio, а в архиве GnatStats_HardwareSerialMonitor_v2.1 как раз вместе с утилитой лежат исходники и решил я победить если не знаниями, то логикой.

Оказалось, что если скомпилировать эти сорцы, то нет отображения температуры процессора и использования памяти (по крайней мере на моём железе). Не буду претендовать на универсальность, но проблему с памятью победил. Для запуска с отладкой раскомментировал вывод в консоль и обнаружилось, что если в выводе память показана как
Sensor: Memory Used Type: Data Value: 5,872391
то в коде мы имеем поиск значения в строке
case "Used Memory":                                             //if the name is "used memory"

Поменял на «Memory Used» и ву-а-ля!!! Память отображается.

Копаю дальше. Держу в курсе. %)
Если что, вот список захватываемой информации без правки кода (может и до этого доберусь):
Дополнительная информация
Hardware Name=ASUS F2A85-V PRO
Checking: Mainboard
Hardware Name=AMD A8-5600K APU with Radeon HD Graphics
Checking: CPU
Sensor: CPU Core #1 Type: Load Value: 45,37572
Sensor: CPU Core #2 Type: Load Value: 53,17919
Sensor: CPU Core #3 Type: Load Value: 43,93064
Sensor: CPU Core #4 Type: Load Value: 50
Sensor: CPU Total Type: Load Value: 48,12139
Sensor: CPU Cores Type: Voltage Value: 1,55
Sensor: Northbridge Type: Voltage Value: 1,55
Sensor: CPU Core #1 Type: Clock Value: 3600,468
s.Name=CPU Core #1
Sensor: CPU Core #2 Type: Clock Value: 3600,468
s.Name=CPU Core #2
Sensor: CPU Core #3 Type: Clock Value: 3600,468
s.Name=CPU Core #3
Sensor: CPU Core #4 Type: Clock Value: 3600,468
s.Name=CPU Core #4
Hardware Name=Generic Memory
Checking: RAM
Sensor: Memory Used Type: Data Value: 5,872391
Sensor: Memory Available Type: Data Value: 6,078323
Sensor: Memory Type: Load Value: 49,13841
Sensor: Virtual Memory Used Type: Data Value: 6,731728
Sensor: Virtual Memory Available Type: Data Value: 7,031487
Sensor: Virtual Memory Type: Load Value: 48,91101
Hardware Name=NVIDIA GeForce GTX 560 Ti
Checking: GpuNvidia
Sensor: GPU Core Type: Temperature Value: 38
s.Name=GPU Core
Sensor: GPU Type: Fan Value: 1140
Sensor: GPU Core Type: Clock Value: 50,625
s.Name=GPU Core
Sensor: GPU Memory Type: Clock Value: 135
s.Name=GPU Memory
Sensor: GPU Shader Type: Clock Value: 101,25
s.Name=GPU Shader
Sensor: GPU Core Type: Load Value: 1
Sensor: GPU Memory Controller Type: Load Value: 7
Sensor: GPU Video Engine Type: Load Value: 0
Sensor: GPU Fan Type: Control Value: 20
Sensor: GPU Memory Total Type: SmallData Value: 1024
Sensor: GPU Memory Used Type: SmallData Value: 360,0586
Sensor: GPU Memory Free Type: SmallData Value: 663,9414
Sensor: GPU Memory Type: Load Value: 35,16197
Hardware Name=Generic Hard Disk
Checking: HDD
Sensor: Used Space Type: Load Value: 61,48637
Hardware Name=Generic Hard Disk
Checking: HDD
Sensor: Used Space Type: Load Value: 67,71809
Hardware Name=Generic Hard Disk
Checking: HDD
Sensor: Used Space Type: Load Value: 44,25489
Hardware Name=Generic Hard Disk
Checking: HDD
Sensor: Used Space Type: Load Value: 74,04384
Т.е. если добавить в HardwareSerialMonitor их вывод в COM, а в скетче Arduino добавить их обработку, то всю эту информацию спокойно можно выводить на экран.
+
avatar
  • MaDerer
  • 24 августа 2019, 12:48
0
Продолжил копаться и оказалось, что «Memory Used» используется в OpenHardwareMonitorLib.dll от Libre Hardware Monitor. В .dll из Open Hardware Monitor используется «Used Memory» и править не надо.

И вот что еще интересно!!! Я всегда запускал Open Hardware Monitor вместе с Hardware Serial Monitor . Но дело в том, что в Hardware Serial Monitor уже входит библиотека OpenHardwareMonitorLib.dll, а значит достаточно только запуска Hardware Serial Monitor .

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.