Arduino MKR NB 1500

ArduinoMCU 8-32 bitarduino

⚡ L’essentiel en 60 secondes

L'Arduino MKR NB 1500 se distingue comme l'une des premières cartes de développement orientées vers le grand public à intégrer nativement les technologies de réseau cellulaire à faible consommation, spécifiquement le NB-IoT et le LTE-M. Annoncée en mai 2018 par Arduino, cette carte a été conçue pour permettre aux makers et aux ingénieurs de créer des objets connectés capables de transmettre des données sur de longues distances sans dépendre d'une infrastructure Wi-Fi ou Bluetooth locale. Il est important de noter qu'à la date de rédaction de cette fiche, en octobre 2026, cette carte est considérée comme étant en fin de vie et n'est plus commercialisée par le fabricant, bien que sa documentation technique reste accessible en ligne. Le cœur de cette carte repose sur un microcontrôleur Microchip ATSAMD21G18A, un composant Arm Cortex-M0+ cadencé à 48 MHz. Pour comprendre cette architecture, il faut savoir que le Cortex-M0+ est un cœur 32 bits extrêmement économe en énergie, idéal pour les applications fonctionnant sur batterie où la performance brute est moins critique que l'autonomie. Ce microcontrôleur dispose de 256 Ko de mémoire flash pour stocker le programme et de 32 Ko de mémoire vive pour les données temporaires. Contrairement à d'autres cartes de la gamme MKR, celle-ci ne possède pas de stockage externe comme une carte SD, ce qui signifie que tout le code doit tenir dans la mémoire interne.

L'atout majeur de la MKR NB 1500 réside dans son module radio, le u-blox SARA-R410M-02B. Ce module est capable de communiquer sur trois réseaux distincts : le NB-IoT, le LTE-M et l'EGPRS. Le NB-IoT, ou Narrowband IoT, est une norme conçue pour les objets nécessitant très peu de données, offrant une excellente pénétration dans les bâtiments grâce à une bande passante étroite de 200 kHz. Le LTE-M, quant à lui, offre des débits plus élevés et une meilleure gestion de la mobilité, tandis que l'EGPRS, ou 2G, sert de solution de repli lorsque les réseaux modernes ne sont pas disponibles. La carte est équipée d'une puce de sécurité ECC508, permettant de stocker des clés cryptographiques de manière sécurisée, une fonctionnalité essentielle pour les applications IoT nécessitant une authentification robuste. Pour l'alimentation, la carte intègre un circuit de gestion d'énergie TI BQ24195L qui permet de charger une batterie lithium-polymère directement via le port micro-USB, tout en surveillant la tension de la batterie via une entrée analogique dédiée. Cette conception native pour la batterie, couplée à un cristal de temps réel de 32,768 kHz, permet de mettre la carte en mode veille profonde pour maximiser l'autonomie, une caractéristique cruciale pour les déploiements sur le terrain.

Sur le plan des entrées et sorties, la MKR NB 1500 suit le format compact de la famille MKR. Elle offre 22 broches numériques, dont 12 peuvent générer des signaux PWM, utiles pour contrôler la vitesse d'un moteur ou la luminosité d'une LED. Sept entrées analogiques sont également disponibles, avec une résolution de 10 bits, permettant de lire des capteurs variés. Il est à noter que la broche A0 possède une double fonctionnalité : elle peut servir d'entrée analogique mais aussi de sortie DAC, permettant de générer une tension analogique variable. Les interfaces de communication standard telles que le SPI, le I²C et un port série UART supplémentaire sont également exposées, facilitant l'ajout de capteurs ou de modules externes. La programmation de cette carte s'effectue via l'environnement Arduino IDE, en utilisant le cœur spécifique « Arduino SAMD Boards ». Les développeurs disposent de deux bibliothèques principales : MKRNB, dédiée aux spécificités du NB-IoT et du LTE-M, et MKRGSM, plus générale, qui permet de gérer les connexions de données et les messages SMS. La compatibilité avec le service Arduino Cloud permet également de visualiser les données à distance sans avoir à configurer un serveur complexe.

Cependant, l'utilisation de cette carte n'est pas exempte de défis techniques. La communauté a signalé plusieurs problèmes récurrents, notamment des fiabilités dans la bibliothèque MKRGSM et des difficultés lors de la connexion à des serveurs MQTT, souvent liées à l'interaction entre les modes d'économie d'énergie du modem et les protocoles réseau. Un point de vigilance important concerne la gestion de l'alimentation : le voyant LED d'alimentation reste allumé même lorsque la carte fonctionne sur batterie, ce qui entraîne une consommation électrique inutile qui peut réduire l'autonomie. De plus, la sélection manuelle de la technologie radio (NB-IoT ou LTE-M) a historiquement été complexe, nécessitant l'utilisation de versions récentes des bibliothèques ou d'outils spécifiques. Enfin, il convient de vérifier attentivement la couverture réseau de votre opérateur local, car les bandes de fréquences supportées par la carte (notamment les bandes 2, 3, 4, 5, 8, 12, 13, 20 et 28) ne couvrent pas uniformément tous les territoires, et la disparition progressive des réseaux 2G rend le repli EGPRS de moins en moins fiable. Malgré ces écueils, la MKR NB 1500 reste une référence pédagogique pour comprendre les enjeux de la connectivité cellulaire basse consommation, offrant une plateforme complète pour prototyper des solutions de télémétrie, de suivi GPS ou de surveillance environnementale, tant que l'on accepte les contraintes liées à sa fin de commercialisation et à la complexité de la gestion des réseaux cellulaires.

Forum (1 sujet) →

AttrSpecsvérifié
cpuArm Cortex-M0+ (mkrnb1500.build.mcu=cortex-m0plus), 48 MHz (build.f_cpu=48000000L), 32-bit, single core. No GPU, no FPU.? non vérifié
flash256 KB (upload.maximum_size=262144), RAM: 32 KB (upload.maximum_data_size=32768) — same boards.txt.? non vérifié
storageno external flash/SD on this board (unlike MKR WAN 1310); code runs from internal flash.? non vérifié
cellular_radio_u_blox_sara_r410m_02b_module(docs page): - LTE-M (Cat-M1), NB-IoT (Cat-NB1/NB2) and EGPRS fallback; SMS supported (docs page: "communicate over the LTE-M, NB-IoT and EGPRS networks … send and receive SMS"). - LTE bands 2, 3, 4, 5, 8, 12, 13, 20, 28 for Cat-M1/NB1, "designed for global deployment … via AT&T, T-Mobile USA, Telstra, Verizon" (launch blog post). - Coverage per Arduino: Europe, North & South America, large parts of Asia (docs page). - Interface to the module: dedicated SERCOM4 UART on the MCU (GSM_TX PA12, GSM_RX PA13, GSM_RTS PA14, GSM_CTS PA15, GSM_DTR PA28, GSM_RESETN PB08) — variants/mkrnb1500/variant.cpp. - 32.768 kHz crystal on PA00/PA01 (RTC for low-power use) — same variant.cpp.✔
gpio_mkr_form_factor_3_3_v_logic"22 digital I/Os – 12 with PWM outputs – and seven analog inputs … operate at 3.3V" (launch blog post). - D0–D7 all PWM/timer-capable; LED_BUILTIN = D6 (PA20); D2/D3 also ADC (AIN18/19) — variant.cpp. - Analog A0–A6 (10-bit ADC); A0 (PA02) doubles as DAC output (PIN_ATTR_ANALOG /DAC/, board pin "A0 / DAC0") — variant.cpp. - SPI (SERCOM1): MOSI PA16 / SCK PA17 / MISO PA19; Wire/I²C (SERCOM2): SDA PA08 / SCL PA09; Serial1 (SERCOM5): RX PB23 / TX PB22 — variant.cpp. - Battery voltage sense: ADC_VBAT on PB09; PMIC interrupt PMIC_IRQ on PA27 — variant.cpp.✔
securityMicrochip ECC508 crypto-authentication chip ("the ECC508 crypto-chip for security" — docs page; ECC508 on the MKR platform also confirmed in the launch post).✔
powermicro-USB 5 V input with native USB on the SAMD21 (upload.native_usb=true, boards.txt); LiPo battery connector with on-board charger TI BQ24195L PMIC (-DUSE_BQ24195L_PMIC build flag, boards.txt).✔
  • Fabricant : Arduino (Arduino LLC), Italie. page produit docs.arduino.cc
  • Annoncée : 2018-05-12, aux côtés de la MKR WiFi 1010, dans l'article de blog officiel Arduino "The MKR family gets bigger with two new IoT boards!" ; les ventes sur l'Arduino Store ont démarré en juin 2018 (même article).
  • Statut : Fin de vie / n'est plus vendue. Au 2026-10-13, la page produit officielle de la boutique (store.arduino.cc/products/arduino-mkr-nb-1500 et /arduino-mkr-nb-1500-1413) renvoie une 404 ou redirige vers la page d'accueil de la boutique, et le produit n'apparaît plus dans l'API de recherche de la boutique (store.arduino.cc/search/suggest.json). La page docs reste en ligne.
  • Code de commande / SKU : ABX00019 (visible dans les noms des fichiers de ressources officiels sur la page docs : ABX00019-full-pinout.pdf, ABX00019-schematics.pdf).
  • Prix de lancement :
  • Variantes : un unique SKU mondial construit autour du module u-blox SARA-R410M-02B (page docs).
  • Note pour le pipeline de docs : la consigne de la tâche mentionnait un « u-blox SARA-N211 » ; c'est incorrect — la page produit officielle indique que le module est le SARA-R410M-02B (LTE-M + NB-IoT + EGPRS), et non le SARA-N211 limité au NB-IoT.

+ Points forts

  • Première carte NB-IoT / LTE-M grand public d'Arduino : NB-IoT (Cat-NB1/NB2), LTE-M (Cat-M1) et EGPRS dans un seul produit certifié (page docs, article de lancement). Le NB-IoT est un standard LPWAN 3GPP Release 13 (bande passante de 200 kHz, couverture profonde en intérieur, économies d'énergie PSM/eDRX) — Wikipedia : Narrowband IoT ; LTE-M ajoute la mobilité/le handover et des débits supérieurs — Wikipedia : LTE-M.
  • Bandes mondiales (2/3/4/5/8/12/13/20/28) couvrant AT&T, T-Mobile USA, Telstra, Verizon et la plupart des réseaux européens/asiatiques (article de lancement).
  • Élément crypto matériel (ECC508) pour le stockage de clés/l'authentification TLS, comme le reste de la gamme MKR (page docs).
  • Conception native sur batterie : chargeur/PMIC LiPo BQ24195L, détection ADC VBAT, ligne PMIC IRQ, cristal RTC 32,768 kHz — pensée pour des nœuds autonomes sur batterie/solaire (variant.cpp + drapeaux de build boards.txt).
  • Points d'accroche basse consommation du modem dans les bibliothèques officielles (lowPowerMode / noLowPowerMode dans MKRGSM GSM.h), qui exposent le comportement PSM/eDRX du SARA-R410M.
  • Écosystème MKR : même empreinte que les MKR GSM 1400 / MKR WiFi 1010, compatible avec les carriers MKR (Connector Carrier, IoT Carrier, Motor Carrier — listés dans la barre latérale de la page docs) et les shields MKR.
  • Emplacement Nano-SIM :

− Points faibles

  • Fiabilité de la bibliothèque MKRGSM — ancienne issue toujours ouverte "MKRGSM library not reliable" (c'est aussi le fil principal où le SARA-R410M sur NB 1500 est discuté).
  • Contrôle de flux UART du GSM jamais activé — "variant/mkrnb1500 SARA R410 UART not configured to utilize flow control (RTS/CTS)" (ouverte) : un gros trafic AT peut faire déborder le buffer UART.
  • LED d'alimentation allumée avec alimentation sur batterie — "MKR GSM 1400, MKR 1010 and NB 1500 Power led on with battery source" (ouverte) : quelques mA de consommation batterie constante en plus sur les nœuds sur batterie.
  • Bibliothèque SFU (mise à jour sécurisée du firmware) cassée sur cette carte — "SFU Library not working for MKRNB1500" (ouverte).
  • Le bootloader n'honore pas le bit de sécurité — "Bootloader does not honor security bit" (ouverte, toute la gamme SAMD) : la protection contre la lecture n'est pas absolue.
  • Le modem peut se bloquer au redémarrage — fil de forum "SARA Modem freezes when restarted" ; le contournement courant est une coupure d'alimentation complète du module (secureShutdown/ligne de reset de la bibliothèque) plutôt qu'un redémarrage logiciel par AT.
  • Particularités du PMIC BQ24195L sur la plateforme MKR — par ex. "MKR WiFi 1010 - BQ24195L - OTG / 5V boost mode support" et "Firmware shorts IO pin for USB OTG devices?" ; le bug du timer de sécurité de charge a été corrigé dans la PR #448.
  • Échecs de connexion MQTT-sur-NB-IoT — sujet récurrent du forum : "MKR NB 1500 can't connect to MQTT broker", "Error without details on mqtt.connect" — généralement l'interaction keepalive TCP/PSM ou l'accessibilité du broker, pas la carte elle-même.
  • Obsolescence côté réseau : le repli EGPRS (2G) devient de plus en plus inutile car les opérateurs éteignent la 2G, et la couverture NB-IoT/LTE-M est inégale selon les pays — vérifier votre opérateur avant de déployer (voir la liste de bandes ci-dessus).
  • Sélection de la RAT (technologie d'accès radio) — elle résidait historiquement dans la bibliothèque MKRNB séparée ; elle a été portée dans MKRGSM par "porting of ChooseRadioAccessTechnology from MKRNB" (PR #100) — les anciennes versions de MKRGSM ne peuvent pas imposer NB-IoT vs LTE-M.
  • Retour d'expérience expert expert — expert-arduino
    • Retour d'experience après plusieurs mois sur la MKR NB 1500. Le module SARA-R410M-02B est solide pour du LTE-M/NB-IoT global, et l'ECC508 est un vrai plus sécurité. Mais attention aux soucis documentes : la biblio MKRGSM reste instable (issue 66), et le flux RTS/CTS n'est pas active par defaut (iss… — expert-arduino
    • Merci pour le resume. J'ai exactement ce souci de modem qui se fige au redemarrage doux. Tu utilises le hard reset via la ligne RESETN ou le secureShutdown ? J'ai eu le cas ou il fallait couper l'alim completement. En attendant, est-ce que la version recente de MKRGSM gere mieux la selection RAT (N… — maker-trois
    • Je confirme le problème du LED. J'ai mis un switch sur la ligne PMIC_IRQ pour gerer un peu mieux la conso, mais c'est bricolage. Par contre, n'oubliez pas que le SARA-R410M a besoin d'antenne externe ou une très bonne interne selon l'installation. J'ai du deplacer la carte de 20cm pour passer de 0 … — solder-queen

Retours et projets de la communauté

  • Telstra/Mosquitto MQTT example

    Telstra/Mosquitto MQTT example — : "Telstra Arduino MKR NB1500 Mosquitto example sketch". (unverified au 2026-10-13) — code communautaire hébergé sur github, statut unverified vérifié le 2026-10-13. Projet documenté dans la fiche mkr-nb-1500 (MCU 8-32 bit) ; …

  • Community help threads

    Community help threads — e.g. on the Arduino Forum. (unverified au 2026-10-13) — communauté hébergé sur forum, statut unverified vérifié le 2026-10-13. Projet documenté dans la fiche mkr-nb-1500 (MCU 8-32 bit) ; rôle : approfondir la prise en main de cette ca…

  • Fiabilité de la bibliothèque MKRGSM — ancienne issue toujours ouverte "MKRGSM library not reliable" (c'est aussi le fil principal où le SARA-R410M sur NB 1500 est discuté).
  • Contrôle de flux UART du GSM jamais activé — "variant/mkrnb1500 SARA R410 UART not configured to utilize flow control (RTS/CTS)" (ouverte) : un gros trafic AT peut faire déborder le buffer UART.
  • LED d'alimentation allumée avec alimentation sur batterie — "MKR GSM 1400, MKR 1010 and NB 1500 Power led on with battery source" (ouverte) : quelques mA de consommation batterie constante en plus sur les nœuds sur batterie.
  • Bibliothèque SFU (mise à jour sécurisée du firmware) cassée sur cette carte — "SFU Library not working for MKRNB1500" (ouverte).
  • Le bootloader n'honore pas le bit de sécurité — "Bootloader does not honor security bit" (ouverte, toute la gamme SAMD) : la protection contre la lecture n'est pas absolue.
  • Le modem peut se bloquer au redémarrage — fil de forum "SARA Modem freezes when restarted" ; le contournement courant est une coupure d'alimentation complète du module (secureShutdown/ligne de reset de la bibliothèque) plutôt qu'un redémarrage logiciel par AT.
  • Particularités du PMIC BQ24195L sur la plateforme MKR — par ex. "MKR WiFi 1010 - BQ24195L - OTG / 5V boost mode support" et "Firmware shorts IO pin for USB OTG devices?" ; le bug du timer de sécurité de charge a été corrigé dans la PR #448.
  • Échecs de connexion MQTT-sur-NB-IoT — sujet récurrent du forum : "MKR NB 1500 can't connect to MQTT broker", "Error without details on mqtt.connect" — généralement l'interaction keepalive TCP/PSM ou l'accessibilité du broker, pas la carte elle-même.
  • Obsolescence côté réseau : le repli EGPRS (2G) devient de plus en plus inutile car les opérateurs éteignent la 2G, et la couverture NB-IoT/LTE-M est inégale selon les pays — vérifier votre opérateur avant de déployer (voir la liste de bandes ci-dessus).
  • Sélection de la RAT (technologie d'accès radio) — elle résidait historiquement dans la bibliothèque MKRNB séparée ; elle a été portée dans MKRGSM par "porting of ChooseRadioAccessTechnology from MKRNB" (PR #100) — les anciennes versions de MKRGSM ne peuvent pas imposer NB-IoT vs LTE-M.
  • Faire clignoter la LED embarquée debutant Schéma : IMG-mkr-nb-1500-debutant-1-mkrnb-blink-led.svg — Carte MKR NB 1500 vue de dessus avec la LED utilisateur D6 mise en évidence et le câble micro-USB branché
  • Bouton et console USB debutant Schéma : IMG-mkr-nb-1500-debutant-2-mkrnb-bouton-console.svg — Bouton poussoir branché entre la broche D2 et la masse GND d'une MKR NB 1500, câble USB vers un PC affichant la console série
  • Lire un capteur analogique sur A0 debutant Schéma : IMG-mkr-nb-1500-debutant-3-mkrnb-capteur-analogique.svg — Potentiomètre alimenté en 3,3 V dont le curseur est relié à la broche A0 d'une MKR NB 1500, broche A0 également marquée DAC0
  • Premier attachement au réseau cellulaire intermediaire Schéma : IMG-mkr-nb-1500-intermediaire-1-mkrnb-attachement-reseau.svg — MKR NB 1500 avec antenne vissée sur son connecteur, carte nano-SIM insérée, et antenne relais NB-IoT/LTE-M à l'arrière-plan avec les bandes B3/B20
  • Publier en MQTT sur le réseau cellulaire intermediaire Schéma : IMG-mkr-nb-1500-intermediaire-2-mkrnb-mqtt-cellulaire.svg — MKR NB 1500 reliée par ondes à un routeur cellulaire puis à un serveur MQTT, avec le topic mkrnb1500/donnees et un message JSON
  • Position GPS via shield et Serial1 intermediaire Schéma : IMG-mkr-nb-1500-intermediaire-3-mkrnb-gps-shield.svg — MKR NB 1500 avec un shield GPS superposé communiquant en série sur les broches TX/RX (Serial1), antenne GPS et antenne cellulaire distinctes
  • PSM/eDRX et sommeil bas courant avance Schéma : IMG-mkr-nb-1500-avance-1-mkrnb-psm-edrx-sommeil.svg — MKR NB 1500 sur batterie LiPo avec multimètre en mesure de courant, graphique des états veille active / PSM et chronologie d'éveil toutes les heures
  • Antenne et pièges RF du déploiement avance Schéma : IMG-mkr-nb-1500-avance-2-mkrnb-antenne-rf.svg — Gros plan sur le connecteur d'antenne de la MKR NB 1500 avec antenne fouet et câble pigtail, emplacement SIM à côté, boîtier métallique barré en inset
  • Diagnostic AT et qualité de signal avance Schéma : IMG-mkr-nb-1500-avance-3-mkrnb-diagnostic-at.svg — Console série affichant les réponses AT+CSQ, AT+CEREG? et AT+QENG d'une MKR NB 1500, avec échelle de conversion RSSI en dBm à droite

Bibliothèque de code — exemples écrits pour cette carte

  • attente-lte-nbiot.ino Arduino

    Le MKR NB 1500 met du temps à rejoindre un réseau LTE-M ou NB-IoT : cette boucle d'attachement patiente jusqu'à deux minutes, affiche l'état à chaque tentative, puis confirme l'opérateur et la qualit…

  • choix-bande.ino Arduino

    Un module LPWA qui ne trouve pas de réseau est souvent mal configuré : ce croquis lit puis force le masque de bandes LTE (B3/B7/B8/B20 pour la France) et le mode CAT-M1/NB1 du SARA-R4 du MKR NB 1500.…

  • publish-mqtt-minimal.ino Arduino

    Publication sobre pour réseau LPWA : toutes les dix minutes, le MKR NB 1500 envoie tension batterie et identifiant vers un relais TCP. Le patron volontairement minimal montre le strict minimum d'un p…

  • economie-energie.ino Arduino

    L'atout du NB-IoT est l'énergie : ce croquis configure le PSM et l'eDRX du modem SARA-R4 du MKR NB 1500, puis endort le SAMD21 entre deux mesures de quinze minutes. Bien réglé, l'ensemble tient plusi…

  • geoloc-cellules.ino Arduino

    Sans GPS, la cellule radio suffit souvent : le MKR NB 1500 lit son TAC, son identifiant de cellule et le niveau de signal, puis transmet le tout vers un service de géolocalisation par cellules. Idéal…

  • test-coverage.ino Arduino

    Avant de déployer des stations NB-IoT, mesurez la couverture : ce croquis journalise toutes les cinq secondes statut réseau, RSSI et opérateur au format CSV. Une carte USB ou un notebook à bord suffi…

  • reconnexion-rapide.ino Arduino

    En mobilité ou en sous-sol, la cellule disparaît puis revient : plutôt qu'un redémarrage complet de 30 secondes, ce croquis reteste l'attachement radio toutes les deux secondes et ne réinitialise le …

  • batterie-nb.ino Arduino

    La chute de tension pendant l'émission radio révèle l'état de la batterie : ce croquis mesure VBAT avant et après chaque publication, calcule la pente et la durée de la transaction. Un indicateur d'u…

  • heure-serveur.ino Arduino

    Les réseaux LPWA filtrent souvent le trafic NTP UDP : ce croquis récupère donc l'heure par un simple GET HTTP sur le port 80, puis la maintient avec millis(). La latence plus élevée du NB-IoT est abs…

  • nb_monitor.py Python

    Pendant une campagne de tests NB-IoT, gardez un œil sur la station : ce script pyserial lit le port série du MKR NB 1500, compte les cycles publiés et affiche en rouge chaque ligne contenant un mot-c…

Exemples et dépôts trouvés en ligne