Метка: Linux

Простая разработка IoT приложений на C# для Raspberry Pi и других одноплатников, на Linux

Многие привыкли легко и просто программировать микроконтроллеры на платформе Arduino или nanoFramework (используется C#). Но как обстоит с разработкой IoT приложений на C# .NET для одноплатных компьютеров под Linux? В ответ услышите что нужно все устанавливать из командной строки, да и еще хорошо разбираться в Linux, там не так просто как с Arduino. Для настройки удаленной отладки необходимо выполнить множество различных действий, вручную настроить конфигурацию запуска, генерировать ключи доступа для пользователя, от имени которого будет запускать отладка, и т. д. Но теперь, благодаря расширению .NET FastIoT для Visual Studio Code, это не требуется делать. Черновую работу по установке необходимых пакетов и конфигурированию проекта для удаленной отладки сделает за вас расширение. Теперь вы можете полностью сфокусироваться на своем коде, не отвлекаясь на лишние задачи.

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

Анонс. Расширение .NET FastIoT для простой разработки приложений на C# .NET под одноплатные компьютеры на Linux

Как программировать микроконтроллеры на платформе Arduino или nanoFramework (используется C#) многие знают. Но разработка IoT приложений на C# .NET для одноплатных компьютеров под Linux несколько сложнее. Необходимо установить платформу .NET, отладчик, и выполнить множество других задач. Но теперь, благодаря расширению .NET FastIoT для Visual Studio Code, эти задачи не требуется выполнять вручную.

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

Метеостанция на Banana Pi M64 (Linux, C#, Docker, RabbitMQ, AvaloniaUI)

Статей о создании метеостанции на базе Arduino не счесть. Можно сказать, если статья про метеостанцию, то это про микроконтроллеры Arduino, ESP32 или STM32. Но только не в этот раз. Будем запускать метеостанцию на Banana Pi BPI-M64 под Linux, без использования Arduino-подобных оберток в виде WiringPi, на C# .NET5. Пример метеостанции является демонстрацией встраиваемого решения работы с GPIO, датчиками и вывода пользовательского интерфейса напрямую на LCD. В решении используется: Linux (Armbian) — основная ОС, .NET и C# — платформа для создания прикладного ПО, AvaloniaUI — графической интерфейс с интерактивными графиками и анимацией, Docker — инструмент для развертывания, управления, доставки приложений, RabbitMQ — брокер сообщений для передачи сообщений между контейнерами. Благодаря использованию универсального подхода и технологии Docker, приложение можно запустить не только на Banana Pi BPI-M64, но и на других Banana/Orange/Rock/Nano Pi одноплатных компьютерах, включая Raspberry Pi.

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

Подробности выпуска платы MangoPi-MQ1 на процессоре Allwinner D1s RISC-V

Недавно вышла новость о новом процессоре Allwinner D1s RISC-V на базе которого построен одноплатный компьютер MangoPi-MQ1. MangoPi-MQ1 позиционируется как недорогое решения для малых устройств, например его можно использовать в панелях управления умным домом, камерах видеонаблюдения, системах распознавания голоса, роботах, и т.д. Продаваться MangoPi-MQ1 вероятно, будет по цене от 10$ и выше, например стоимость Sipeed Lichee RV с полной версией такого же процессора составляет $16.90. Одноплатные компьютеры на процессоре Allwinner D1/D1s RISC-V могут составить серьезную конкуренцию многофункциональным микроконтроллерам верхнего ценового сегмента, в решениях которых не требуются быстрый отклик.

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

.NET IoT. Часть 5. Обработка прерываний (interrupt) на примере событий кнопки

Работа с кнопкой уже была продемонстрирована в публикации Управляем контактами GPIO из C# .NET 5 в Linux, но без детального рассмотрения прерываний (interrupt). Поэтому на этом моменте остановимся подробнее. Рассмотрим как работает прерывание, какие бывают триггеры срабатывания, и сделаем пример на C# используя библиотеку Libgpiod. Для примера будем использовать туже самую кнопку.

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

Выпущен тестовый образ Armbian для Raspberry Pi 4

Созданные Armbian образы на базе Ubuntu и Debian получили популярность из-за отсутствия должной поддержки большинства разработчиков одноплатных компьютеров. Некоторое время после выпуска платы на рынок, разработчики поддерживают актуальность дистрибутива, обновляют версию ядра и драйвера. Но максимум через 2 года полностью прекращается обновление всего ПО, и плата остается с устаревшим ядром Linux. Именно для таких случаев проект Armbian и стал единственным решением, позволяющим запускать последние версии Linux на старых одноплатных компьютерах.

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

.NET IoT. Часть 4. Шина I2C, подключение датчика Bosh BME280

В публикации Работа с GPIO в Linux. Часть 5. Device Tree overlays. Шина I2C, подключение датчиков Bosh BMx познакомились с шиной I2C и подключили датчик BME280, считывали значения через Sysfs. Теперь попробуем считать значения температуры, влажности, и атмосферного давления из .NET кода.

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