Автор: Anton

Programistik

Управляем контактами GPIO в Linux из Docker-контейнера библиотекой Libgpiod [обновлено 23.10.2023]

В публикации Работа с GPIO в Linux. Часть 6. Библиотека Libgpiod познакомились с библиотекой Libgpiod,  разработанной Bartosz Golaszewski. Библиотека позволяет управлять контактами GPIO одноплатного компьютера, подавать 1/0, подписываться на события (необходимо для обработки прерывания кнопки), и т.д. В отличие от множества библиотек для Raspberry Pi, Libgpiod не заточена под конкретные процессоры и работает на различных архитектурных платформах: ARMv7, ARM64, AMD64, RISC-V. Но компиляция библиотеки из исходного кода, в зависимости от дистрибутива может приводить к тем или иным сложностям и «замусоривает» систему лишними пакетами . Поэтому в дополнение и для создание Docker-контейнеров c .NET приложениями, были собраны контейнеры на базе ОС Alpine и Ubuntu содержащие библиотеку Libgpiod вместе с утилитами для управления GPIO.

Читать далее »

Представлен обновленный одноплатный компьютер ASUS Tinker Board 2S за $120

В последнее время тема интернета вещей набирает все большую популярность. Компания ASUS для сферы IoT решений разработала ряд различных устройств (https://iot.asus.com/) от встраиваемых систем до акселератора нейронных сетей. Среди них одноплатный компьютер Tinker Board разработанный для AIoT, который аналогичен по возможностям Raspberry Pi. Недавно компания представила обновленную версию Tinker Board 2S с быстрым процессором Rockchip RK3399/OP1, для хранения данных на плате распаяна eMMC память объемом 16 Гб. Модель с 2 Гб RAM будет продаваться на площадках Amazon и Aliexpress по цене от 120 долларов и выше.

Читать далее »

Работа с GPIO в Linux. Часть 7. Управление подсветкой (backlight) экрана используя ШИМ (PWM)

В публикации Подключение дисплея SPI LCD ILI9341 был подключен данный дисплей к плате Banana Pi BPI-M64. Все управление подсветкой сводилось к двум состояниям: включено или выключено. Контакт LED на дисплее предназначен для регулирования уровня яркости экрана. Из-за того, что плата Banana Pi BPI-M64 не имеет аналоговых выходов, невозможно было регулировать степень яркости дисплея. Поэтому для регулирования значения напряжения на контакте LED, воспользуемся драйвером двигателя (микросхема TB6612FNG). Входящий сигнал ШИМ (PWM) в микросхеме TB6612FNG регулирует напряжение на выходе. С ШИМ (PWM)  уже работали в публикации LED, ШИМ (PWM), КНОПКА. Поэтому потребуется лишь соединить контакт ШИМ (PWM) на плате Banana Pi BPI-M64 с соответствующим контактом на микросхеме TB6612FNG, и вывод с микросхемы TB6612FNG соединить с входом контакта LED на дисплее. Как это сделать, для возможности регулирования  подсветки экрана, читаем под катом.

Читать далее »

Релиз Debian 11 «BullsEye» с драйверами Panfrost и Lima для GPU ARM, и возможностью печати на принтере без драйверов

Вышел релиз Debian 11 «BullsEye» с open-source драйверами Panfrost и Lima для GPU ARM, поддержкой файловой системы exFAT в ядре, возможностью печати на принтере без установки соответствующих драйверов и многими другими обновлениями. Для релиза заявлена 5 летняя поддержка. Выпуск Debian имеет большое значение, поскольку данная операционная система Linux служит основой для построения Ubuntu и других производных дистрибутивов, таких как: Armbian, Raspberry Pi OS, и т.д. Armbian —  самый популярный дистрибутив Linux, предназначенный для различных одноплатных компьютеров, построенных на ARM процессоре: Orange Pi, Banana Pi, Odroid, Olimex, Cubieboard, Roseapple Pi, Pine64, NanoPi и др.

Читать далее »

Безопасность встраиваемых систем Linux

Весь наш мир построен на противоположностях. Если вы создаете свое устройство и продаете его, то всегда найдется тот, кто захочет его взломать. Цели у злоумышленника буду самыми разными, от попыток сделать клон устройства (привет Китаю) до шантажа конечных потребителей, что весьма ухудшит вашу репутацию с точки зрения изготовления надежных устройств. И чем популярнее система на основе которой построено устройство, тем интереснее она злоумышленнику. В последнее время активно развивается сегмент одноплатных компьютеров, таких как Raspberry Pi, и множества других. Linux системы по распространенности использования во встраиваемых систем, вышли на первые места. Большая функциональность устройств, например наличие разных беспроводных интерфейсов коммуникаций, в совокупности с большими возможностями ОС Linux, привела к серьезной необходимости организации защиты устройства. Некоторые думают, что достаточно отключить учетную запись root и установить надежный пароль, но на самом деле это только малая часть того, что следует сделать. Какие технологии и концепции используются для снижения рисков и реализации более безопасного устройства работающего на Linux узнаете под катом.

Читать далее »

Превращаем одноплатник Cubietruck в Wi-Fi Hotspot с Captive portal, VPN-шлюзом и Ad block

Для построения Wi-Fi сети обычно используют готовые маршрутизаторы, функциональность которых всегда ограничен прошивкой. А если необходимо добавить блокировщик рекламы, VPN шлюз и красивый Captive portal, покупать новую железку? Стоимость устройства с такими возможностями будет уже весьма высока. Можно взять Linux с Hostapd и сделать точку доступа с Wi-Fi, но в отличие от готовых маршрутизаторов не будет наглядного Web-интерфейса. И для решения этой задачи был создан проект RaspAP, который на базе устройств с ОС Debian создает Wi-Fi Hotspot с Captive portal, VPN-шлюзом, Ad block. Для RaspAP в отличие от OpenWrt не требуется непосредственная поддержка устройства, достаточно поддержки последней версии Debian. RaspAP работает поверх уже установленных ОС: Raspberry Pi OS, Armbian, Debian, Ubuntu. Как сделать Wi-Fi Hotspot на RaspAP прошу под кат.

Читать далее »

Как сделать кластерный сервер на ARM процессоре и тестирование VPS на AWS Graviton2

В предыдущей публикации рассматривались преимущества использование ARM серверов для хостинг провайдеров. В этом посте рассмотрим практические варианты создания кластерного сервера на ARM процессоре и протестируем инстанс Amazon EC2 T4g работающий на процессоре ARM AWS Graviton2, посмотрим на что он способен.

Читать далее »