nRF54L Arduino Core — это проект с открытым исходным кодом, созданный для обеспечения поддержки Arduino для беспроводных SoC Nordic Semiconductor nRF54L, начиная с плат XIAO nRF54L15 (Sense) и XIAO nRF54LM20A (Sense) от Seeed Studio, а также совместимых модулей Holyiot nRF54L15.
С момента запуска платы Arduino Nano 33 BLE на базе nRF52840 в 2019 году, беспроводные микроконтроллеры Nordic nRF52 официально поддерживаются средой Arduino IDE. Однако для более новых микроконтроллеров nRF54L на ядре Cortex-M33 это не совсем так. Lolren решил изменить это с помощью неофициального проекта nRF54 Arduino Core.
Основные возможности nRF54L Arduino Core:
- Доступ к двум ядрам — использование 128 МГц процессорного ядра Cortex-M33 и сопроцессора VPR RISC-V без применения сторонней RTOS
- Беспроводная связь
- Поддержка Bluetooth LE — Периферийное, центральное, двойная роль, GATT сервер/клиент, HID, BLE UART, управление PHY/DLE/MTU, LE Secure Connections, связка, OOB, числовое сравнение, конфиденциальность/RPA и подписанные записи CSRK
- Экспериментальная поддержка
- Zigbee — Частичный стек и демонстрации устройств; неполное покрытие Zigbee PRO, маршрутизация, кластеры, OTA и совместимость с экосистемой
- Thread — Поэтапная реализация OpenThread FTD/MeshCoP/SRP/UDP с восстановлением настроек, комиссионер/джойнер, спящий узел и тестовые сценарии с несколькими платами
- Matter — Поэтапная реализация системы, криптографии, буфера пакетов, IPv6/UDP, ACL, ввод в эксплуатацию и пользовательские демонстрации PASE/CASE; не является совместимым по проводному протоколу или сертифицируемым стеком устройств Matter
- BLE Channel Sounding — Экспериментальный двухплатный тест LE CS с поддержкой контроллера; не является Channel Sounding через соединение ACL, калиброванным определением дальности, межвендорной совместимостью или заявкой на квалификацию
- Прямой доступ к периферии — GPIO, ADC, PWM, последовательные шины, аудио, NFC, DPPI, GRTC, сторожевой таймер, компараторы и управление питанием реализованы для аппаратуры nRF54L
- Интеграция низкого энергопотребления — режим ожидания System ON, таймированный System OFF, API определения причины сброса, управление RF-переключателем XIAO, отключение питания внешней flash на LM20A, поддержка гибернации nPM1300
- Поддержка аппаратного обеспечения
- Seeed Studio XIAO XIAO nRF54L15, XIAO nRF54L15 Sense, XIAO nRF54LM20A и XIAO nRF54LM20A Sense
- HOLYIOT-25007 (квадратный) и HOLYIOT-25008 (круглый) модули на базе nRF54L15
- Универсальный модуль nRF54L15 с 36 контактами
- Nordic nRF54L15 DK

Для начала работы просто перейдите в Preferences → Additional Boards Manager URLs в Arduino IDE и добавьте следующий URL:
https://raw.githubusercontent.com/lolren/nrf54-arduino-core/main/package_nrf54l15clean_index.json
Затем установите платы nRF5415L через «nRF54L15 Clean Arduino», выберите плату, например XIAO nRF54L15 / Sense, и загрузите один из соответствующих примеров кода, например CleanBringUp ниже.
Рекомендуется использовать примеры кода из Bluefruit52Lib, nRFL15-Clean-Implementation и nRF54 Board Example. Однако примеры Thread и Zigbee могут работать не так, как ожидается, поскольку код все еще экспериментальный, и данное Arduino Core в настоящее время больше подходит для приложений BLE.
Он будет наиболее полезен людям, не знакомым с nRF Connect SDK на базе Zephyr, и которые предпочитают программирование в среде Arduino. Будут и недостатки использования Arduino, такие как упомянутые отсутствующие/экспериментальные функции и потенциально более высокое энергопотребление для устройств с батарейным питанием.
Исходный код и инструкции можно найти на GitHub под лицензией MIT. Проект был создан с помощью Anthropic Claude.
Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.



