Arduino MKR WiFi 1010 — характеристики, распиновка и питание от Li-Po

Arduino MKR WiFi 1010 — плата серии MKR на 32-битном микроконтроллере ATSAMD21G18A с беспроводным модулем u-blox NINA-W102 (Wi-Fi и Bluetooth) и криптомикросхемой ATECC508. Основной микроконтроллер выполняет скетч Arduino; модуль NINA-W102 работает со своей прошивкой для беспроводной связи. Это не одноплатный компьютер и не плата для запуска Linux. Производитель — Arduino. Плата предназначена для прототипов и IoT-проектов.

MKR — отдельный форм-фактор Arduino, не совместимый с шилдами Uno. Плата узкая (61,5 × 25 мм), выводы расположены двумя рядами по 14 контактов, а главное отличие от Nano и Uno — встроенное зарядное устройство для одноклеточного аккумулятора Li-Po / Li-ion 3,7 В и разъём для его подключения. Логика платы — 3,3 В.

По основным микросхемам плата похожа на Arduino Nano 33 IoT (SAMD21 и NINA-W102), но выполнена в формате MKR, имеет зарядное устройство и криптомикросхему ATECC508. У Nano 33 IoT установлен более новый ATECC608A, но нет зарядного устройства и разъёма аккумулятора. Для сравнения с версией на LoRa см. MKR WAN 1310.

Плата Arduino MKR WiFi 1010, вид сверху

Основные характеристики Arduino MKR WiFi 1010

  • Микроконтроллер: Microchip ATSAMD21G18A (Arm Cortex-M0+, 32 бита)
  • Тактовая частота: до 48 МГц
  • Flash-память: 256 КБ
  • SRAM: 32 КБ
  • EEPROM: отдельной нет
  • Беспроводной модуль: u-blox NINA-W102 на базе ESP32: Wi-Fi 802.11 b/g/n, 2,4 ГГц, Bluetooth BR/EDR и Bluetooth Low Energy
  • Криптомикросхема: ATECC508
  • Зарядное устройство: BQ24195L для одноклеточного Li-Po / Li-ion аккумулятора 3,7 В; разъём аккумулятора на плате
  • Рекомендуемая минимальная ёмкость аккумулятора: 1024 мА·ч; минимальный ток зарядки платы — 512 мА
  • Рабочее напряжение логики: 3,3 В (5 В не допускается)
  • Входное напряжение (VIN): номинально 5 В; абсолютный максимум по datasheet — 5,5 В
  • Цифровые выводы: 15 (D0–D14); аналоговые A0–A6 также имеют сквозную нумерацию D15–D21
  • ШИМ: 13 выводов — D0–D8, D10, D12, A3 и A4
  • Аналоговые входы: 7 (A0–A6), АЦП до 12 бит; аналоговый выход — 10-битный ЦАП на A0
  • Максимальный ток вывода: 7 мА на вывод; максимальный суммарный ток источника — 46 мА, стока — 65 мА на группу выводов
  • Интерфейсы: UART (D13/D14), I²C (D11/D12), SPI (D8–D10), I²S
  • USB: Micro-USB, встроенный USB Full-speed; режимы device и host
  • Размеры и масса: 61,5 × 25 мм, около 32 г
  • Рабочая температура платы: от −40 до +85 °C
  • Способ программирования: Arduino IDE, пакет Arduino SAMD Boards

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

Микроконтроллер

ATSAMD21G18A — 32-битный микроконтроллер на ядре Arm Cortex-M0+ с частотой до 48 МГц. По datasheet платы он содержит:

  • 12 каналов DMA и 12 каналов системы событий;
  • пять 16-битных и три 24-битных таймера/счётчика, 32-битный RTC, сторожевой таймер и генератор CRC-32;
  • полноскоростной USB (host/device) с 8 конечными точками;
  • 6 блоков SERCOM (USART, I²C, SPI, LIN) и два канала I²S;
  • 12-битный АЦП на 350 тыс. выборок в секунду (до 16 бит при усреднении) и 10-битный ЦАП;
  • контроллер внешних прерываний (до 16 линий).

Часть выводов микроконтроллера занята связью с радиомодулем и криптомикросхемой. NINA-W102 подключён к SAMD21 по UART и SPI, а ATECC508 — по внутренней шине I²C.

Память (Flash, SRAM, EEPROM)

  • Flash 256 КБ для скетча (часть занимает загрузчик).
  • SRAM 32 КБ для переменных.
  • EEPROM нет: небольшие данные можно хранить во flash или во внешней памяти; число циклов записи во flash ограничено.
  • В модуле NINA-W102 имеется собственная flash-память и SRAM, используемые прошивкой радиомодуля, а не скетчем SAMD21.

Цифровые и аналоговые выводы (I/O)

Нумерация выводов отличается от Nano: цифровые выводы D0–D14, аналоговые A0–A6 (в сквозной нумерации D15–D21). ШИМ на схеме выводов Arduino отмечен у D0–D8, D10 и D12, а также у A3 и A4 (D18, D19). На A0 доступен аналоговый выход (10-битный ЦАП).

⚠ Только 3,3 В и малые токи. Все сигнальные выводы работают с логическими уровнями 3,3 В и не допускают 5 В. Подача 5 В на GPIO может повредить микроконтроллер. Максимальный ток одного вывода — 7 мА; по схеме выводов Arduino максимальный суммарный ток источника — 46 мА, а стока — 65 мА на группу выводов. Нагрузки подключайте через транзистор или драйвер, светодиоды — через резистор.

Распиновка Arduino MKR WiFi 1010

Интерфейсы связи (UART, I²C, SPI)

  • UART: D14 (TX) и D13 (RX) — аппаратный последовательный порт Serial1. Связь с компьютером по USB идёт отдельно (Serial).
  • I²C: D11 (SDA, PA08) и D12 (SCL, PA09). Те же линии выведены на 5-контактный разъём сверху платы; к этой шине подключена и криптомикросхема ATECC508.
  • SPI: D8 (COPI, MOSI), D9 (SCK), D10 (CIPO, MISO); CS выбирается программно.
  • I²S: микроконтроллер поддерживает два канала I²S; доступные выводы определяются схемой и конфигурацией ядра Arduino.

USB

Разъём Micro-USB используется для питания, программирования и последовательной связи. USB-контроллер находится в микроконтроллере SAMD21 (native USB): плата определяется как устройство без чипа-переходника и может эмулировать HID. Режим USB Host возможен только при подаче питания через контакт VUSB и замкнутой перемычке рядом с ним.

Беспроводная связь

Модуль NINA-W102 построен на ESP32 (два ядра Tensilica LX6 до 240 МГц) и поставляется с предсертифицированным стеком Arduino. Основные возможности модуля:

  • Wi-Fi: IEEE 802.11 b/g/n, диапазон 2,4 ГГц (до 11, 54 и 72 Мбит/с соответственно);
  • Bluetooth BR/EDR: до 3 Мбит/с, до 7 подключённых устройств;
  • Bluetooth Low Energy: поддерживается в двухрежимной конфигурации модуля.

В datasheet u-blox для модуля NINA-W102 указаны Bluetooth 4.2 BR/EDR и Bluetooth 4.2 BLE. В актуальном datasheet самой платы Arduino одновременно встречается указание Bluetooth 5.0 для BLE. Это расхождение в документации; при указании версии безопаснее ориентироваться на спецификацию производителя радиомодуля — Bluetooth 4.2. Диапазона Wi-Fi 5 ГГц нет.

Плата может работать с BLE как центральное и периферийное устройство. Радиомодуль общается с SAMD21 по UART и SPI. Прошивка NINA-W102 содержит предсертифицированный стек Arduino, её исходный код открыт.

⚠ Не перепрошивайте NINA-W102 без необходимости. Arduino предупреждает, что установка пользовательской прошивки аннулирует соответствие радиомодуля стандартам, по которым он был сертифицирован. Ответственность за использование собственной прошивки лежит на пользователе.

Криптомикросхема

ATECC508 — криптографический сопроцессор с аппаратным защищённым хранением ключей: память для 16 ключей, сертификатов или других данных, поддержка ECDH, ECDSA, эллиптической кривой NIST P-256, SHA-256 и HMAC. Он позволяет хранить секреты отдельно от основного микроконтроллера и использовать их при установлении защищённых соединений, например TLS.

Питание и аккумулятор

Плату можно питать по USB, через вывод VIN (номинально 5 В) или от одноклеточного аккумулятора Li-Po / Li-ion 3,7 В, подключённого к разъёму на плате. Зарядкой управляет микросхема BQ24195L. Ток зарядки платы составляет не менее 512 мА, поэтому Arduino рекомендует аккумулятор ёмкостью не менее 1024 мА·ч. После зарядного узла напряжение поступает на линейный стабилизатор AP2112K-3.3 (выходная шина 3,3 В; номинальный предел стабилизатора — 600 мА). В документации Arduino есть опечатка: в кратком перечне компонентов PDF встречается BQ24125L, тогда как описание платы, схема и power tree указывают BQ24195L; здесь использовано обозначение по схеме и power tree.

Схема питания Arduino MKR WiFi 1010: USB, VIN, зарядное устройство, 3,3 В и потребители

⚠ Питание и аккумулятор. По datasheet абсолютный максимум напряжения на VIN и USB — 5,5 В; для питания платы используйте источник 5 В. Не подавайте на VIN 12 В. Минимальный ток зарядки — 512 мА; убедитесь, что аккумулятор рассчитан на такой ток. Рекомендуемая минимальная ёмкость — 1024 мА·ч. Соблюдайте полярность разъёма аккумулятора.

О выводе +5V. Это не стабилизированный выход 5 В: контакт связан через перемычку с входной линией USB/VIN и передаёт напряжение источника без отдельного преобразования. При работе от USB или VIN на нём может присутствовать входное напряжение, если соответствующая перемычка замкнута. Не используйте этот контакт как гарантированный стабилизированный источник 5 В.

В power tree Arduino указаны ориентировочные токи потребителей шины 3,3 В: SAMD21 — 30 мА, NINA-W102 — 320 мА, ATECC508 — 16 мА. В той же диаграмме приведён LDO на 600 мА и отдельное значение 600 мА для пользовательской нагрузки; эти величины не следует складывать или считать гарантированными одновременно. Реальный ток для внешних устройств зависит от потребления самой платы и условий работы стабилизатора. В datasheet значения общего энергопотребления обозначены как TBC.

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

Размеры платы — 61,5 × 25 мм (по чертежу: 2421 mil × 984 mil), масса — около 32 г по данным Arduino Store. Выводы расположены в двух рядах по 14 контактов с шагом 2,54 мм. Крепёжные отверстия находятся по углам платы.

Чертёж Arduino MKR WiFi 1010 с размерами платы

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

  • Micro-USB (J1) — питание, программирование и USB-связь;
  • Два ряда по 14 контактов — аналоговые, цифровые и силовые выводы;
  • Разъём аккумулятора Li-Po / Li-ion (JST, 2 контакта);
  • 5-контактный разъём сверху платы: GND, I²C (SDA, SCL), WK (PA21), +5V — для подключения совместимых модулей;
  • Кнопка Reset; светодиоды питания, зарядки аккумулятора и пользовательский D6 (LED_BUILTIN);
  • Площадки отладки (SWD): +3V3, SWDIO, RESETN, SWCLK, GND.

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

Плата программируется в Arduino IDE (в том числе 2.x) и в Arduino Cloud Editor. Нужен пакет Arduino SAMD Boards; для беспроводной связи используются библиотеки WiFiNINA и ArduinoBLE. Загрузка скетчей идёт по USB через загрузчик. Если скетч завис и плата не отвечает по USB, режим загрузчика можно включить двойным нажатием Reset сразу после подачи питания. Плата поддерживается Arduino Cloud.


Распиновка

Таблица составлена по datasheet (ABX00023) и схеме выводов Arduino. Все сигнальные выводы работают с логическими уровнями 3,3 В; подавать на них 5 В нельзя.

Левый ряд (аналоговый, контакты 1–14)

КонтактОбозначениеПорт SAMD21Функции
1AREFPA03Опорное напряжение АЦП
2A0 (D15)PA02АЦП; ЦАП (DAC0)
3A1 (D16)PB02АЦП
4A2 (D17)PB03АЦП
5A3 (D18)PA04АЦП, ШИМ
6A4 (D19)PA05АЦП, ШИМ
7A5 (D20)PA06АЦП
8A6 (D21)PA07АЦП
9D0PA22Цифровой вывод, ШИМ
10D1PA23Цифровой вывод, ШИМ
11D2PA10Цифровой вывод, ШИМ
12D3PA11Цифровой вывод, ШИМ
13D4PB10Цифровой вывод, ШИМ
14D5PB11Цифровой вывод, ШИМ

Правый ряд (цифровой и питание, контакты 15–28)

КонтактОбозначениеПорт SAMD21Функции
15D6PA20Цифровой вывод, ШИМ; светодиод LED_BUILTIN
16D7PA21Цифровой вывод, ШИМ
17D8PA16SPI COPI (MOSI), ШИМ
18D9PA17SPI SCK, ШИМ
19D10PA19SPI CIPO (MISO)
20D11PA08I²C SDA
21D12PA09I²C SCL, ШИМ
22D13PB23UART RX
23D14PB22UART TX
24RESET—Сброс
25GND—Земля
26+3V3—Выход 3,3 В
27VIN—Вход питания, номинально 5 В
28+5V—Проходное питание от USB/VIN через перемычку, не стабилизированный выход

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

  • Wi-Fi и Bluetooth на плате MKR — отдельный радиомодуль покупать не нужно.
  • Встроенное зарядное устройство Li-Po / Li-ion: можно создавать автономные устройства с аккумулятором.
  • Криптомикросхема ATECC508 для защищённого хранения ключей и сертификатов.
  • Native USB и аналоговый выход (10-битный ЦАП на A0).
  • Компактный формат MKR с выводами, удобными для макетирования.
  • Arduino Cloud: готовая интеграция для облачных IoT-проектов.

Для чего подходит Arduino MKR WiFi 1010

  • IoT-узлы, подключающиеся к домашнему или офисному Wi-Fi;
  • BLE-устройства, отправляющие данные на телефон;
  • Автономные датчики с питанием от аккумулятора и подзарядкой;
  • Прототипы с защищённой связью и аппаратным хранением сертификатов.

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

  • Wi-Fi, Bluetooth, криптомикросхема и зарядка аккумулятора на одной плате.
  • 32-битный процессор, native USB и 10-битный ЦАП.
  • Компактный формат MKR.
  • Поддержка Arduino Cloud.

Ограничения

  • Логика 3,3 В, ток вывода 7 мА — для 5-вольтовых устройств нужны преобразователи уровней и драйверы.
  • VIN рассчитан на номинальные 5 В; абсолютный максимум — 5,5 В. Плату нельзя питать от 12 В.
  • Контакт +5V — проходное, а не стабилизированное питание; его наличие зависит от источника и перемычки.
  • Нет EEPROM; вычислительная мощность SAMD21 ограничена частотой 48 МГц.
  • Wi-Fi работает только в диапазоне 2,4 ГГц.
  • Форм-фактор MKR несовместим с шилдами Uno.
  • В документации Arduino есть расхождения по версии Bluetooth и обозначению зарядного контроллера.

Arduino MKR WiFi 1010 и похожие платы

ХарактеристикаMKR WiFi 1010MKR WAN 1310Nano 33 IoT
МикроконтроллерSAMD21G18ASAMD21G18ASAMD21G18A
Беспроводная связьWi-Fi + Bluetooth (NINA-W102)LoRa (CMWX1ZZABZ)Wi-Fi + Bluetooth (NINA-W102)
КриптомикросхемаATECC508ATECC508ATECC608A
Зарядка Li-Poестьестьнет
IMUнетнетесть
ФорматMKR, 61,5 × 25 ммMKRNano, около 45 × 18 мм

Если нужна связь на большие расстояния — смотрите MKR WAN 1310; для компактного устройства с датчиком движения — Nano 33 IoT.


Заключение

Arduino MKR WiFi 1010 — универсальная IoT-плата с Wi-Fi, Bluetooth, криптомикросхемой и зарядным устройством аккумулятора на базе SAMD21. Она подходит для автономных датчиков и облачных проектов.

Перед покупкой учтите: питание VIN — номинально 5 В и не более 5,5 В, логика — 3,3 В с малыми токами выводов, а контакт +5V не является стабилизированным выходом. Формат MKR несовместим с шилдами Uno.


Материалы

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

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

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