Как стать автором
Обновить
-15
0
Максим @evtomax

Пользователь

Отправить сообщение

Мобильные экранчики в ваших проектах: большой и понятный о гайд о различных дисплеях

Уровень сложности Средний
Время на прочтение 18 мин
Количество просмотров 22K
image


Пожалуй, немалая часть моих читателей так или иначе интересуется DIY-тематикой. И в различных самодельных девайсах порой есть необходимость вывести какую-либо информацию на дисплей, будь это текст, графики или даже какая-то анимация! Для разных задач существуют самые разные дисплеи и в сегодняшнем материале я хотел бы систематизировать и собрать подробнейший гайд об использовании дисплеев с нерабочих мобильных телефонов: какие бывают протоколы и шины данных, как читать схемы устройств и определять контроллеры дисплеев, какие дисплеи стандартизированы, а какие придётся реверсить самому и как быть с подсветкой. В практической части статьи мы подключим дисплей по протоколу MIPI DBI к RP2040 с использованием DMA. Интересно? Тогда добро пожаловать под кат!
Читать дальше →
Всего голосов 110: ↑108 и ↓2 +106
Комментарии 116

Вольтамперметр на базе ESP8266 с записью данных в лог и передачей их по сети Интернет

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 21K

Сегодня мы с Вами соберём вольтамперметр на безе ESP8266, он оснащён модулями: INA226, модуль реального времени, цифровой датчик температуры, сенсорный экран, SD карта для сохранения логов, WI-FI модуль, контроллер для управления силовыми ключами.

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

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

В верхней части экрана у нас отображается текущее время и IP адрес, по которому мы можем подключится к нашему устройству с помощью телефона, планшета или компьютера из любой точки мира.

Читать далее
Всего голосов 27: ↑26 и ↓1 +25
Комментарии 51

Локальные нейросети. Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT

Время на прочтение 8 мин
Количество просмотров 78K

Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.

Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.

И бонусом затронем новую модель для качественного подробного описания фото.

UPD: Добавлена информация для запуска на Windows с ускорением на AMD.

Читать далее
Всего голосов 107: ↑105 и ↓2 +103
Комментарии 87

OpenConnect: недетектируемый VPN, который вам понравится

Уровень сложности Средний
Время на прочтение 15 мин
Количество просмотров 219K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее
Всего голосов 325: ↑324 и ↓1 +323
Комментарии 342

Сокровища HTML: 7 тегов, которые упростят вам жизнь

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 21K

Все мы знакомы с широко используемыми HTML тегами, такими как <div>, <p>, <a>, и <img>. Однако, существуют HTML - теги, которые могут упростить жизнь, и вместо написания дополнительного кода, выполнят всю работу :)

Читать далее
Всего голосов 70: ↑65 и ↓5 +60
Комментарии 28

Шпаргалка с командами Docker

Время на прочтение 5 мин
Количество просмотров 650K
Прим. перев.: Неделю назад Aymen El Amri, руководящий компанией eralabs и создавший обучающий курс «Безболезненный Docker», опубликовал свой Docker Cheat Sheet — шпаргалку по основным командам Docker. Git-репозиторий этого документа на GitHub уже набрал 1000+ stars и несколько сторонних контрибьюторов, что подтвердило его актуальность и пользу.



Представленные здесь команды описаны минимально (с акцентом на читаемость как есть) и включают в себя установку Docker, работу с реестрами и репозиториями, контейнерами, образами, сетью, Docker Swarm. Ниже представлен перевод шпаргалки в её состоянии на 2 сентября с дополнениями из комментариев ниже.
Читать дальше →
Всего голосов 46: ↑42 и ↓4 +38
Комментарии 15

Xiaomi Mi Thermometer 2 не только Bluetooth, но и ZigBee

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 72K

TL;DR: Да, можно программно изменить датчик для работы в сети Zigbee, достаточно по воздуху перезаписать прошивку.

Многим пользователям умного дома известен квадратный датчик температуры и влажности от Xiaomi LYWSD03MMC. Его очевидные плюсы — это LCD экран, подключение к системе умного дома MiHome и конечно же цена. Его без преувеличения можно назвать если не самым, то точно одним из самых дешевых "умных" датчиков, которые имеют интерфесы для подключения к умному дому. В данном случае это популярный bluetooth, который позволяет подключиться к датчику со смартфона и увидеть показания. Поэтому он завоевал своё место в сердцах строителей умных домов как дешевое и надёжное решение.

Читать далее
Всего голосов 91: ↑91 и ↓0 +91
Комментарии 152

Приключения ржавого 1602 (HD44780 A00)

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 8.2K

Как то выдрал из старого принтера HP экранчик, и решил вспомнить былые времена примитивных поделок с символьными экранчиками. Получилось добавить printf, вывести русские символы и мерцающий растр. А так же дополнил программу кодом для дисплеев WH1602, которые использовал раньше.

код
Всего голосов 24: ↑23 и ↓1 +22
Комментарии 3

Освобождение робота-пылесоса, который стал моим другом

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 26K
Немного доп. оборудования, несколько команд Linux и вуаля! Пылесос свободен! Фото Cath Virginia / The Verge

В целом роботы-пылесосы мне нравятся. Для меня это эдакий небольшой друг, который чистит за меня пол. Просто фантастика. Но, к сожалению, есть одна проблема — я им не доверяю. Эти девайсы постоянно отправляют отчёты на серверы, что может представлять угрозу для безопасности и тайны личной жизни. Мне такое не по духу, и я подумал, что кто-то уже должен был хакнуть эту схему. После недолгих поисков в интернете я понял, что прав. Мне попался проект Valetudo, нацеленный на освобождение роботов-пылесосов от связи с облаком.
Читать дальше →
Всего голосов 115: ↑114 и ↓1 +113
Комментарии 44

Старый софт, LPT и современное железо

Время на прочтение 23 мин
Количество просмотров 15K

В своей прошлой статье я не был полностью честен. Перед тем, как получить рабочее устройство, я много раз проверял как мой код работает, перезаписывая его на многоразовую флеш AT28С64. И с самого начала знал что отлаживаться придется на железе, а потому встал вопрос программатора параллельных EEPROM.

Некогда крайне востребованные, а ныне необходимые только для редких специфических задач, эти программаторы стоят неприлично дорого (на этот раз серьезно). Есть бюджетные варианты, например собрать такой программатор на основе ардуины (но не весело) или быстро изобрести решение самому (но лень писать софт).

Однако, у отца оказался программатор Omega. На самом деле это не совсем программатор, это базовый блок на основе которого, теоретически, можно собрать множество разных устройств используя разные адаптеры, но один из адаптеров (имеющихся в наличии) — это универсальный программатор Orange. Все это разработки cnc‑lab.com, там же можно найти описание этого железа http://cnc‑lab.com/omega.htm . Но есть одна небольшая загвоздка: у меня современные компьютеры с Windows 10 и Windows 11, а этот программатор использует LPT. И нужно было как‑то из этой ситуации выходить.

Эта статья о том, как можно заставить работать на новом компьтере старый софт и старое железо, рассчитанные на связь через LPT, при этом не прибегая к изменению ни оригинальных исполняемых файлов, ни схемотехники устройства.

Читать далее
Всего голосов 65: ↑64 и ↓1 +63
Комментарии 33

Почему за нарушение NDA чаще всего ничего не будет: в чём проблема большинства компаний

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 9.4K

Привет! Я Наталья Новикова, юрист по договорам, автор книг в жанре фантастики и приключений.

Когда ИП-шки или юрлица просят меня составить NDA (соглашение о неразглашении коммерческой тайны), я сразу говорю: оно у вас не будет работать, не тратьте деньги.

Ну потому что это нужно создать целую систему, при которой можно реально отсудить у работника пару сотен тысяч рублей за слив информации. Это долго и требует постоянного внимания. Но почему-то у нас принято думать, что если сотрудник подписал пять листочков "Соглашения NDA", где написан штраф 1 000 000 рублей за разглашение любой секретной информации, то компания может спать спокойно: теперь за любой слив базы или отчёта о прибыли конкурентам она поимеет денег с того, кто их слил.

А для того, чтобы получить эти денежки, нужно дойти до суда. А в суде пять листочков NDA не прокатят. Там зададут вопросы.

И ответов у компании, скорее всего, не будет.

Узнать, что дальше
Всего голосов 34: ↑27 и ↓7 +20
Комментарии 55

Пишем Python-макрос для FreeCAD

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 5.8K

В этой статье мы напишем макрос для FreeCAD, который из N+1 цилиндров создаёт симметричный барабан с N отверстиями, разберемся с азами модуля FreeCAD в Python, а ещё изучим теорию сдвига и вращения фигур в пространстве.

Читать далее
Всего голосов 23: ↑23 и ↓0 +23
Комментарии 10

I2C датчик INA219 + Python + Repka Pi: измеряем ток, напряжение и мощность во встраиваемых системах управления

Уровень сложности Средний
Время на прочтение 31 мин
Количество просмотров 9.6K

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

Результаты контроля можно передавать, например, на пульт управления или использовать как‑то еще. Когда заряд аккумуляторов подходит к концу, можно отключить какие‑нибудь устройства с целью экономии энергии или инициировать зарядку аккумуляторов вашего устройства. Если в устройстве есть сервоприводы, можно контролировать потребляемую ими мощность, а при перегрузке отключать все сервоприводы или некоторые из них.

В этой статье мы расскажем об использовании для контроля напряжения, тока и мощности недорогого модуля GY-219 с интерфейсом I2C и чипом INA219. Вы сможете подключить его практически к любому микрокомпьютеру, где есть такой интерфейс.

В статье будет описано подключение GY-219 к отечественному микрокомпьютеру Repka PI, однако все будет работать и с Raspberry Pi. В интернете вы найдете руководства, как подключить GY-219 к любому другому микрокомпьютеру или микроконтроллеру с интерфейсом I2C.

Читать далее
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 22

Программируем и отлаживаем STM32 через USB Type-C порт, не нарушая спецификации USB

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 15K

USB Type-C - действительно универсальный порт.

В данной статье я расскажу о том, как использую Type-C для отладки устройств на STM32. По каким линиям проведен интерфейс SWD, чтобы не нарушить спецификацию USB и сохранить совместимость со всеми устройствами, как сделать свой программатор, и в чем плюсы и минусы этого решения под катом.

Читать далее
Всего голосов 37: ↑37 и ↓0 +37
Комментарии 18

Пишем свой QTableView с нуля

Уровень сложности Сложный
Время на прочтение 6 мин
Количество просмотров 11K

Итак жил был фреймворк Qt и последние 10 лет ничего в нем не менялось. И захотел один чел написать свой QTableView с нужным ему функционалом, а именно захотелось ему выводить ячейки в несколько рядов (по горизонтали) в одной строке. Ещё ему хотелось растягивать одну из ячеек по ширине двух других.

Искал, искал чел готовый пример в интернете и не находил. И вот однажды подумал он посмотреть как сделан внутри сам QTableView и стало плохо ему от количества строк кода, не одна тысяча там.

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Комментарии 55

Создаем проект STM32 C++ FreeRTOS в vscode для очень маленьких

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 10K

Жил себе спокойно, писал кодик в Keil и не парился. Писал изначально на СИ, но кода становилось все больше, а я все ленивее, перешел на С++ и ARM Compiler V6,19. Но пришел к тому что простых прерываний в таймере стало не достаточно, даже можно сказать не правильный подход. Задался желанием подключить какую-нибудь ОС. Выбор пал на FreeRTOS. Довольный, скачиваю операционку, подтягиваю файлы к проекту на плюсах, и получаю кучу ошибок. Попытка их устранить не увенчалась успехом. Вспомнил что есть CubeMX и там можно сгенерировать проект с уже подключенным freertoos. Проверил, 5-ым компилятором и языком СИ, проект отлично собирается, но как только переименовываем main.c в .cpp и выбираем компилятор 6,19, получаем кучу ошибок на ядро ОС, на определение inline и т.п. Так я и не смог подружить подружить ОС и C++ в Keil. Пришлось заменить среду разработки, изначально выбор пал на CubeIDE, все отлично дружится и собирается, но в душе оставались сомнения. В итоге финальным выбором стал vscode, далее опишу как создать проект именно в нем.

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

Читать далее
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 4

Не дадим Windows Phone умереть! Как я написал свои клиенты VK, YouTube для Nokia Lumia? Сам себе экосистема ч.2

Уровень сложности Средний
Время на прочтение 16 мин
Количество просмотров 16K
image

Windows Phone… услышав название этой мобильной системы, поневоле начинаешь с теплотой вспоминать своего недавнего, такого необычного мобильного друга, как будто прошло всего пару месяцев с момента смены смартфона на iPhone/Android. А ведь с момента фактической смерти Windows Phone прошло уже почти 10 лет! Увы, время вспять уже не повернуть, а мобильное подразделение Nokia не спасти, однако при наличии навыков разработки мобильных приложений, большом энтузиазме и фанатизме, есть шанс вернуть жизнь своему старому другу! Недавно я снова загорелся диким энтузиазмом и смог вернуть жизнь старенькой «люмии», написав собственные клиенты нужных мне сервисов с нуля — и готов поделиться этим с вами во всех подробностях!

Сегодня вы узнаете о моей мотивации привносить жизнь старым смартфонам, о тонкостях разработки мобильных приложений, чем Windiows Phone был на голову выше Android в техническом плане и о том, почему провал Windows Phone — одна из самых больших потерь мобильного рынка. Интересно? Тогда добро пожаловать в статью!
Читать дальше →
Всего голосов 81: ↑79 и ↓2 +77
Комментарии 74

Книги по C++, которые можно рекомендовать разработчикам в 2023 году

Время на прочтение 4 мин
Количество просмотров 38K

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

Читать далее
Всего голосов 21: ↑16 и ↓5 +11
Комментарии 39

Автоматизация бурления: ChipArp

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 3.6K

Наиболее знаковым атрибутом видеоигровой музыки 1980-х, несомненно, является арпеджио — технический приём, служащий обогащению гармонии в условиях крайне ограниченной полифонии. Получающееся в результате специфическое «булькающее», «бурлящее» звучание стало в сознании масс своего рода визитной карточкой 8-битной музыки, вызывающей мгновенное узнавание.

Как ни странно, несмотря на многократно выросшую с тех пор мощность современных компьютеров и синтезаторов, в современном музыкальном ПО этот классический приём стал менее доступен, чем раньше. Расскажу о том, почему так вышло, а также о своём довольно старом проекте (2017 год), в котором я попытался решить эту проблему, и почему это не очень-то получилось, хотя и получилось.
Читать дальше →
Всего голосов 69: ↑69 и ↓0 +69
Комментарии 7

Видеокарта VGA для микроконтроллера

Уровень сложности Средний
Время на прочтение 17 мин
Количество просмотров 14K
image

Иногда, при разработке устройств на микроконтроллерах, возникает потребность в выводе на дисплей большого количества информации или же в выводе информации на крупный дисплей для возможности ее считывания с большого расстояния. К сожалению, готовых решений этой проблемы нет, а те что есть – весьма дороги. Например, графические ЖК-дисплеи с возможностью подключения к микроконтроллеру обычно имеют диагональ не более нескольких дюймов и достаточно существенную цену (причем, даже монохромные, о цветных вообще можно не говорить).

В то же время есть огромный парк старых ЖК мониторов. Модели с диагональю 15-19 дюймов можно приобрести в рабочем состоянии за 200 – 500 руб. Особенно это касается моделей с немодным сейчас соотношением сторон 4:3. Эти модели достаточно надежные. Лампы CCFL, используемые для подсветки, конечно, теряют яркость за годы эксплуатации и их спектр свечения уходит в неприятный красноватый оттенок, но благодаря большому количеству таких мониторов всегда есть возможность выбрать более-менее живой экземпляр. Кроме того, лампы CCFL относительно несложно заменить обычной светодиодной лентой, подключив ее напрямую к источнику питания 12 В монитора. Однако при этом обычно необходимо заблокировать цепи обратной связи от микросхемы управления подсветкой к контроллеру самого монитора, иначе монитор будет думать что подсветка неисправна и просто выключится. Также придется пожертвовать функцией регулировки яркости. Однако, этой функцией мало кто пользуется. Обычно яркость монитора настраивается один раз в жизни, сразу после его покупки и потом никогда не меняется.
Читать дальше →
Всего голосов 69: ↑68 и ↓1 +67
Комментарии 76

Информация

В рейтинге
3 930-й
Откуда
Брянская обл., Россия
Дата рождения
Зарегистрирован
Активность