Arduino Nano 33 BLE и Nano 33 BLE Sense — характеристики, датчики и распиновка

Arduino Nano 33 BLE и Arduino Nano 33 BLE Sense — две платы формата Nano на модуле u-blox NINA-B306 с чипом Nordic nRF52840 (Arm Cortex-M4F, 64 МГц). Это не одноплатные компьютеры и не Linux-устройства: платы работают на базе Arm Mbed OS, поверх которой выполняется пользовательская программа. Производитель — Arduino. Обе платы относятся к первому поколению; у Sense есть более новая версия Nano 33 BLE Sense Rev2 с другим набором датчиков. Arduino помечает оригинальные Nano 33 BLE и Nano 33 BLE Sense как End of Life (EOL).

Базовая Nano 33 BLE (ABX00030) имеет 9-осевой IMU LSM9DS1. Nano 33 BLE Sense (ABX00031) дополнительно содержит барометр, датчик влажности, датчик жестов, близости и цвета, цифровой микрофон и криптомикросхему ATECC608A. Остальные основные компоненты — процессор, радиомодуль, питание и расположение выводов — у них одинаковые.

Wi-Fi на платах нет. Модуль обеспечивает Bluetooth 5; сам nRF52840 также поддерживает радиопротокол IEEE 802.15.4, используемый Thread и Zigbee, но для этих протоколов нужны соответствующие программные стеки. Логика — 3,3 В, выводы не толерантны к 5 В.

Плата Arduino Nano 33 BLE, вид сверху
Плата Arduino Nano 33 BLE Sense, вид сверху

Основные характеристики

  • Беспроводной модуль: u-blox NINA-B306 (Nordic nRF52840)
  • Процессор: Arm Cortex-M4F с FPU, 64 МГц
  • Flash-память: 1 МБ; SRAM: 256 КБ; EEPROM: нет
  • Беспроводная связь: Bluetooth 5 (многопротокольное радио, до 2 Мбит/с, Long Range); аппаратная поддержка IEEE 802.15.4; NFC-A tag; Wi-Fi нет
  • Датчики Nano 33 BLE: IMU LSM9DS1 (9 осей)
  • Датчики Nano 33 BLE Sense: LSM9DS1, барометр и датчик температуры LPS22HB, датчик влажности и температуры HTS221, APDS-9960 (жесты, близость, цвет и освещённость), цифровой микрофон (в документации указаны MP34DT05 и MP34DT06JTR), криптомикросхема ATECC608A
  • Рабочее напряжение логики: 3,3 В
  • Входное напряжение (VIN): 5–21 В
  • Цифровые выводы: 14 (D0–D13); аналоговые входы: 8 (A0–A7), АЦП 12 бит
  • Максимальный ток вывода: до 15 мА на выход, до 5 мА на вход; суммарный внешний ток GPIO и потребление от VDD — не более 25 мА (по схеме выводов Arduino)
  • Интерфейсы: UART, I²C (A4/A5), SPI (D11–D13), I²S, PDM, QSPI
  • USB: Micro-USB, встроенный USB Full-speed (12 Мбит/с)
  • Размеры: около 45 × 18 мм (по чертежу 43,16 × 17,76 мм)
  • Способ программирования: Arduino IDE (пакет Arduino Mbed OS Nano Boards), Arduino Cloud Editor; также доступен MicroPython

Технические характеристики

Процессор и радио

Модуль NINA-B306 содержит nRF52840: ядро Cortex-M4F (64 МГц), 1 МБ flash и 256 КБ SRAM. По документации Arduino, радиоблок поддерживает Bluetooth 5 со скоростью до 2 Мбит/с, режим Long Range и расширенную рекламу, мощность передатчика до +8 дБм и чувствительность −95 дБм. Среди периферии nRF52840 — USB Full-speed (12 Мбит/с), NFC-A tag, криптографический блок CryptoCell CC310, QSPI, SPI до 32 МГц, TWI (I²C), I²S, PDM и 12-битный АЦП с частотой до 200 тыс. выборок в секунду. Чип также поддерживает IEEE 802.15.4; наличие радиоподдержки само по себе не означает, что Thread или Zigbee доступны в стандартном скетче без соответствующего стека.

В datasheet обеих плат в описании модуля встречается запись «nRF52480» — это опечатка. Правильное обозначение микроконтроллера — nRF52840.

Датчики

  • LSM9DS1 (обе платы) — 9-осевой IMU: 3-осевой акселерометр (±2/±4/±8/±16 g), магнитометр (±4/±8/±12/±16 гаусс) и гироскоп (±245/±500/±2000 °/с), 16-битные данные.
  • Только на Sense: LPS22HB (давление 260–1260 гПа и температура); HTS221 (влажность 0–100 %RH, точность ±3,5 %RH в диапазоне 20–80 %RH; температура ±0,5 °C в диапазоне 15–40 °C); APDS-9960 (жесты, близость, освещённость и цвет R, G, B); цифровой микрофон (всенаправленный, отношение сигнал/шум 64 дБ). В документации Arduino есть расхождение в модели микрофона: в описании указан MP34DT05, а в перечне компонентов платы — MP34DT06JTR.
  • Только на Sense: ATECC608A — криптографический сопроцессор с защищённым хранением до 16 ключей, сертификатов или данных, поддержкой ECDH, кривой NIST P-256, SHA-256, HMAC и AES-128.
Расположение элементов на Arduino Nano 33 BLE (вид сверху)
Расположение элементов на Arduino Nano 33 BLE Sense (вид сверху)

Память

Flash 1 МБ и SRAM 256 КБ находятся внутри nRF52840. Отдельной EEPROM нет: для энергонезависимого хранения данных используют область flash. В datasheet Nano 33 BLE и Nano 33 BLE Sense численные значения энергопотребления не приведены (указано TBC).

Цифровые и аналоговые выводы

Нумерация повторяет классическую Nano: D0–D13 и A0–A7. В таблице выводов datasheet явно отмечены как PWM контакты D3, D5, D6, D9 и D10; на странице характеристик Arduino заявлена поддержка PWM для всех цифровых выводов, поэтому при выборе конкретного контакта следует сверяться с версией платы и ядра. Выводы A4 и A5 имеют внутренние подтяжки и используются по умолчанию как внешняя шина I²C, поэтому применять их как аналоговые входы не рекомендуется. Аналогового выхода (ЦАП) нет: несмотря на обозначение «A0/DAC0» в таблице datasheet, nRF52840 не имеет аппаратного ЦАП.

⚠ Только 3,3 В и малые токи. Все выводы работают на 3,3 В и не допускают 5 В — подача 5 В может повредить плату. По схеме выводов Arduino ток выхода — до 15 мА на вывод, входа — до 5 мА; суммарный внешний ток GPIO и потребление от VDD не должны превышать 25 мА.

⚠ Вывод 5V не является выходом стабилизатора. Он подключён через перемычку SJ1 к USB VBUS и по умолчанию отключён. При замкнутой SJ1 напряжение на контакте 5V появляется только при питании платы через USB; при питании от VIN регулируемые 5 В на этом выводе не формируются.

Распиновка Arduino Nano 33 BLE и BLE Sense

Интерфейсы связи

  • UART: TX — P1.03, RX — P1.10 (на схеме выводов обозначены TX/D0 и RX/D1; контакты 16 и 17).
  • I²C: A4 (SDA, P0.31) и A5 (SCL, P0.02) — внешняя шина. Встроенные датчики Sense подключены к отдельной внутренней шине SDA1/SCL1 (P0.14/P0.15), поэтому они не сидят на тех же линиях A4/A5.
  • SPI: D13 (SCK), D12 (CIPO/MISO), D11 (COPI/MOSI); выбор ведомого устройства (CS) назначается программно, обычно используется D10.
  • I²S, PDM и QSPI — поддерживаются микроконтроллером; на Sense цифровой микрофон подключён по PDM.

USB

Разъём Micro-USB используется для питания, программирования и последовательной связи. У nRF52840 есть собственный USB Full-speed контроллер (native USB), поэтому отдельный USB-UART мост не требуется. Контакт USB ID выбирает режим Host/Device. Для режима Host требуется корректное управление линией ID и подача питания VBUS на подключённое устройство; контакт 5V на гребёнке по умолчанию отключён и подключается к USB VBUS перемычкой SJ1.

Питание

Питание подаётся по USB, на VIN (5–21 В по схеме выводов) или на VUSB. Понижающий преобразователь MPM3610 формирует шину 3,3 В; согласно datasheet, преобразователь рассчитан на входное напряжение до 21 В. Из-за диода Шоттки между VUSB и VIN минимальное напряжение на USB-разъёме должно составлять примерно 4,8–4,96 В в зависимости от потребляемого тока. В платах нет зарядного устройства аккумулятора. Для Nano 33 BLE Sense datasheet не приводит численные значения энергопотребления (для параметров указано TBC).

Размеры и конструкция

Размеры платы — около 43,16 × 17,76 мм, отверстия с шагом 40,64 × 15,24 мм; с USB-разъёмом длина составляет около 45 мм. Два ряда по 15 контактов с шагом 2,54 мм; плату можно монтировать как DIP-модуль с припаянными гребёнками или паять за кастелляции. Выпускаются варианты с установленными выводами и без них.

Чертёж Arduino Nano 33 BLE с размерами платы

Интерфейсы и разъёмы

  • Micro-USB (J1); JP2 и JP3 — два ряда по 15 контактов;
  • Кнопка Reset (PB1); пользовательский светодиод L (D13) и светодиод питания; также на плате есть RGB-индикатор.
  • Перемычки на нижней стороне: SJ1 (VUSB), SJ2 (D7), SJ3 и SJ4 (D8 и 3,3 В; соответствие перемычек сверяйте с datasheet конкретного SKU).
  • Площадки отладки SWD на нижней стороне.
Нижняя сторона Arduino Nano 33 BLE: перемычки SJ1–SJ4

Программирование

Платы программируются в Arduino IDE (пакет Arduino Mbed OS Nano Boards) и Arduino Cloud Editor. На базе Mbed OS выполняется пользовательский скетч; для Nano 33 BLE и Nano 33 BLE Sense также доступна поддержка MicroPython. Для датчиков Sense есть библиотеки Arduino. Загрузка и восстановление прошивки выполняются по USB; если скетч заблокировал процессор и плата не определяется, режим загрузчика включается двойным нажатием Reset сразу после подачи питания.


Распиновка

Таблица составлена по схеме выводов Arduino (ABX00030 и ABX00031 — расположение основных контактов одинаковое). Все сигнальные выводы работают с логикой 3,3 В; они не толерантны к 5 В.

КонтактОбозначениеПорт nRF52840Функции
1D13P0.13SPI SCK; светодиод LED_BUILTIN
2+3V3—Выход 3,3 В
3AREF—Опорное напряжение АЦП; может использоваться как GPIO
4A0P0.04Аналоговый вход АЦП (обозначение DAC0 в datasheet не означает наличие аппаратного ЦАП)
5A1P0.05АЦП
6A2P0.30АЦП
7A3P0.29АЦП
8A4P0.31АЦП; I²C SDA
9A5P0.02АЦП; I²C SCL
10A6P0.28АЦП
11A7P0.03АЦП
125V (VUSB)—Питание USB VBUS; подключается к контакту через SJ1
13RST—Сброс
14GND—Земля
15VIN—Вход питания 5–21 В
16TXP1.03UART TX
17RXP1.10UART RX
18RST—Сброс
19GND—Земля
20D2P1.11Цифровой вывод
21D3P1.12Цифровой вывод; PWM указан в datasheet
22D4P1.15Цифровой вывод
23D5P1.13Цифровой вывод; PWM указан в datasheet
24D6P1.14Цифровой вывод; PWM указан в datasheet
25D7P0.23Цифровой вывод
26D8P0.21Цифровой вывод
27D9P0.27Цифровой вывод; PWM указан в datasheet
28D10P1.02Цифровой вывод; PWM указан в datasheet (SS)
29D11P1.01SPI COPI (MOSI)
30D12P1.08SPI CIPO (MISO)

Возможности и особенности

  • Bluetooth 5 и nRF52840 с FPU и 1 МБ flash на плате формата Nano.
  • 9-осевой IMU на обеих платах; на Sense дополнительно установлены датчики давления, влажности, жестов, цвета и микрофон.
  • Machine learning на краю: возможности TinyML и TensorFlow Lite зависят от используемой модели и доступных ресурсов; датчики сами по себе не означают наличие готового распознавания.
  • Native USB и криптосопроцессор ATECC608A (на Sense).

Для чего подходят платы

  • Носимые устройства и датчики движения (обе платы);
  • Метеостанции и мониторы окружающей среды (Sense);
  • Управление жестами и распознавание звука (Sense);
  • Bluetooth-датчики и пульты для телефона;
  • Обучение TinyML и создание маломощных IoT-устройств.

Преимущества

  • Bluetooth 5, Cortex-M4F с FPU, 1 МБ flash.
  • Много датчиков на Sense; IMU на базовой версии.
  • Native USB, форм-фактор Nano.

Ограничения

  • Нет Wi-Fi.
  • Логика 3,3 В, не толерантна к 5 В; токи GPIO ограничены (суммарно не более 25 мА по схеме выводов).
  • Вывод 5V по умолчанию отключён и связан с USB VBUS через перемычку SJ1.
  • Нет аппаратного ЦАП, EEPROM и зарядного устройства аккумулятора.
  • Оригинальные модели относятся к первому поколению; у Sense есть Rev2 с другими датчиками (библиотеки нужно выбирать с учётом ревизии).
  • В документации встречаются опечатки и расхождения: «nRF52480» вместо nRF52840, обозначение микрофона MP34DT05/MP34DT06JTR и пометка A0/DAC0 при отсутствии аппаратного ЦАП.

Сравнение

ХарактеристикаNano 33 BLENano 33 BLE SenseNano 33 BLE Sense Rev2
АртикулABX00030ABX00031ABX00069
ПроцессорnRF52840, Cortex-M4F 64 МГцто жето же
IMULSM9DS1 (9 осей)LSM9DS1 (9 осей)BMI270 + BMM150 (9 осей)
БарометрнетLPS22HBLPS22HB
ВлажностьнетHTS221HS3003
Жесты и цветнетAPDS-9960APDS-9960
МикрофоннетMP34DT05 / MP34DT06JTR (расхождение в документации)MP34DT06JTR
КриптосопроцессорнетATECC608Aнет (по datasheet Rev2)

Подробнее о новой версии — в статье про Nano 33 BLE Sense Rev2. Для сравнения с Wi-Fi-платами смотрите Nano 33 IoT.


Заключение

Nano 33 BLE и Nano 33 BLE Sense — компактные платы на nRF52840 с Bluetooth 5 и программной средой на базе Mbed OS. Базовая версия подойдёт, если нужны Bluetooth и IMU; Sense — если важен набор дополнительных датчиков.

Перед покупкой учтите, что Wi-Fi нет, логика 3,3 В, токи GPIO ограничены, зарядного устройства аккумулятора нет, а вывод 5V по умолчанию отключён. Оригинальные модели отмечены Arduino как EOL; для нового проекта также рассмотрите актуальные платы семейства Nano 33 BLE.


Материалы

Иллюстрации (фотографии, вид сверху и снизу, схема выводов и чертёж) взяты из документации Arduino к Nano 33 BLE и Nano 33 BLE Sense (SKU ABX00030, ABX00031); схемы выводов распространяются под лицензией CC BY-SA 4.0, права на остальные принадлежат Arduino.

Оставьте комментарий

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