
Рад снова все приветствовать на сайте «У Самоделкина». Я люблю иногда поиграть в компьютерные игры. Иногда это спокойные пошаговые стратегии типа Heroes или XCOM, а иногда зубодробительный экшен по типу DOOM-ма. И, конечно, я хочу, чтобы мой компьютер выглядел красиво и интересно. Способов достичь этого много, но сегодня я остановлюсь на инструкции по добавлению подсветки в системник. Просто добавить светодиодов или светящихся кулеров – слишком просто и неинтересно. Мы будем обклеивать системник изнутри светодиодной лентой из WS2812 и поставим Arduino или Attiny85 или ESP8266 для управления лентой. Можно будет запускать кучу эффектов, что разнообразит вид системника. Гирлянда из системника это конечно круто, но тоже как-то слишком просто и скучно. Поэтому будет и другое применение, кроме красоты. Мы будем использовать подсветку для отображения температуры центрального и графического процессоров. На компьютере будем запускать программу, которая в свою очередь будет снимать показания с датчиков компьютера и отправлять их на контроллер, управляющий WS2812 лентой.
Нам будет нужно:
- Arduino (любая версия) или ESP8266 или Attiny 85
- Лента ws2812 или кольца
- USB-TTL для Arduino Pro mini или ESP8266
- ISP программатор для Attiny (можно использовать любую Arduino вместо него)
- Соединительные провода
- Коннектор Molex, мама
- Паяльник, припой, канифоль
- Прямые руки и аккуратность
Шаг 1 Вымеряем длину ленты и выбираем WS2812.
Корпуса у всех разные. Разных форм, видов и размеров. Лучших результатов можно достигнуть, добавив подсветку в прозрачный корпус. Например такой
То есть, в корпус из монолитного поликарбоната, оргстекла ил подобного. Или что-то подобное
Для примера я буду все делать на своем корпусе, стенки которого сделаны из прозрачного пластика. Для начала делаем замеры. Будем размещать светодиодную ленту по периметру системного блока, с внутренней стороны. Замеряем ваш системник, делаем запас по 1,5 на углы. Так же следует сразу определиться, будет подсветка с одной стороны или с двух. Исходя из сделанных расчетов, покупаем ленту. Крепим ее, как уже было сказано, по периметру системного блока, с внутренней стороны. Если лента не клеить, используйте двусторонний скотч на пористой основе. Благодаря ему вы сможете легко и прочно закрепить ленту на любой поверхности

Если вы планируете размещать светодиоды на одной линии, лучше всего выбирать именно ленту. Но можно купить и диоды по отдельности, только будьте готовы их потом спаивать вместе. А эта процедура не из приятных. К каждому светодиоды надо будет припаять по 4 провода. Также можно использовать WS2812 размещенных на кольце из текстолита. Примерно такие
Это будет очень удобно для осуществления отображения температуры ЦП и ГП светодиодами. Так же лента бывает разной плотности светодиодов. Чем больше диодов на метр, тем ярче и контрастнее будет подсветка. И, как всегда, вариантов масса, все ограничено только вашей фантазией.
Шаг 2 Подготовка электрики.
Мы определились с длинной и типом светодиодов. Выбрали наилучшее место для их размещения. Теперь надо подумать о месте размещения контроллера подсветки. Разберем несколько вариантов. Берем Arduino Uno:

К нижней стороне платы лучше приклеить какой-нибудь изолирующий материал, или поместить Arduino в специальный корпус из пластика. Вариантов много, цель одна – не допустить короткого замыкания. Также не стоит размещать плату близко к пластику, или между светодиодами и пластикам. Я вначале приклеил к нижней части платы двусторонний скотч на пористой основе, в два слоя, а затем приклеил Arduino к блоку питания моего системника:

Очень хотелось, чтобы можно было менять прошивку Arduino, не вынимаю ее из корпуса. Для этого снимем со старого корпуса USB порт с передней панели, или найдем плату расширения с USB. Главное, чтобы с одной стороны было USB, а с другой контакты для подключения к выводу USB на материнской плате. Подключаем это «чудо» к материнской плате, следую инструкциик материнской плате. Разъем выглядит так:

Подключив провод к материнской плате, размещаем USB разъем внутри корпуса, главное чтобы не было короткого замыкания:

Чтобы провод не болтался при переноске системника, да и чтобы не было «джагурды» из проводов, фиксируем подключенный провод с USB где-нибудь на корпусе:

Я советую так фиксировать все провода, свободно болтающиеся в корпусе. Особенно много проводов от блока питания. А вот SATA кабель лучше сильно не скручивать.

Питание ленты и Arduino будем брать от блока питания компьютера. Чтобы не разрезать провода блока питания, нам понадобиться Molex разъем, мама. Подключаемся к +5 и GND.
Тут все просто, +5 от блока питания, через разъем Molex, подключаем к +5 светодиодной ленты и +5 на Arduino. Тоже самое и с GND, от блока питания, через Molex к GND ленты и GND Arduino. Припаиваем провода к ленте, провод Din припаиваем тоже, просто пока не подключаем.

Провода питания ленты и Arduino обжимаем в Molex:

Если вы выбрали Attiny85 для подсветки корпуса, ее удобно поместить в термоусадку, и вывести провода для подключения сбоку.

Сразу скажу, если будете использовать Attiny85, подсветка будет работать только в режиме гирлянды. То есть просто красиво мигать, как на видео. Для световой индикации температуры центрального и графического процессоров, Attiny будет не достаточно, надо будет использовать Arduino Uno или подобную на основе микроконтроллера Atmega328.
Шаг 3 Подготовка программ и прошивка Arduino.
Для начала нам понадобиться Arduino IDE для редактирования и заливки скетча. Предпочитаю все скачивать с официального сайта.
Скачиваем как вам будет удобнее. Если скачали установочный файл, запускаем его и устанавливаем на свой компьютер. Если выбрали ZIP архив, просто распаковываем его и запускаем EXE файл. Также нам понадобиться библиотека для работы с WS2812 лентой. Существуем много библиотек для этих «умных» светодиодов, все они с похожим функционалом. Я предпочитаю библиотеку от Adafruit. Нам понадобиться Adudruit NeoPixel. Скачиваем последнюю версию с хостинга Githab.
Устанавливаем скаченную библиотеку. Распаковав архив в папку «libraries» и перегрузив Arduino IDE, можно переходить к следующему шагу. Если не дружите с GitHab-ом или проще скачать здесь, выкладываю библиотеку в виде Rar архива:
Мой скетч написан на основе этой библиотеки, и поэтому с другими работать не будет. Мой скетч простой, он работает по принципы новогодней гирлянды. Просто разноцветные огоньки бегают:
Данный скетч можно залить в Attiny 85. Только для этого контроллера понадобиться установить поддержку этой платы в Arduino IDE. Для добавления поддержки контролеров серии Attiny нужно добавить строку, в настройках Arduino IDE:
https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json
После этого зайти в Arduino Ide, меню «настройка», «менеджер плат», воспользовавшись поиском, найти там «Attiny85» и нажать кнопку установить.
И самое интересное. Индикацию температуры ЦП и ГП будет осуществлять благодаря скетчу AlexGyver-а. Скачиваем скетч с его сайта: https://alexgyver.ru/pcdisplay_v2/
Скачав архив, распаковываем его. В папке «schemes» можно посмотреть схему подключения для этого режима. Если необходимо пере подключить пин подключения ленты WS2812. Для начал необходимо установить библиотеки находящиеся в папке «libraries». Установку следует производить так, как и описано выше. Заходим в папку «firmware» тут находиться скетч для Arduino, его следует залить в плату, при необходимости внести изменения в настройках пина подключения WS2812 ленты. В «software» находиться программа для компьютера, которая будет собирать информацию о температуре центрального и графических процессоров. Эту программа будет собирать и другую информацию, но нам нужна только эту. В настройках программы следует указать com порт, к которому подключена Arduino.


