Arduino/Genuino MKR1000

Ecco un nuovo articolo un po diverso da quelli che scrivo normalmente. Oggi voglio presentarvi una nuova board di casa Arduino/Genuino la MKR1000.

La Arduino/Genuino MKR1000 Board nasce per aiutare coloro che cercano una soluzione semplice, veloce ed economica in ambito IoT (Internet of Things). La MKR1000 board si basa sul SoC (System on Chip) Atmel ATSAMW25 il quale fa parte della famiglia SmartConnect dei prodotti Wireless dell’Atmel.

mkr1000_both
Arduino MKR1000 & Genuino MKR1000

Il SoC ATSAMW25 è composta da tre blocchi principali:

  • SAMD21 Cortex-M0+ 32bit low power ARM MCU
  • WINC1500 low power 2.4GHz IEEE® 802.11 b/g/n Wi-Fi
  • ECC508 CryptoAuthentication

Il microcontrollore ATSAMD21 Cortex-M0 a 32bit è molto simile a quello presente sulla board Arduino/Genuino Zero quindi vi lascio immaginare di quanta potenza e memoria dispone la MKR1000. Un altro vantaggio è la possibilità di collegare direttamente alla board, tramite il connettore dedicato, una batteria Li-Po a singola cella da 3.7V e minimo 700mAh.

Vi lascio una tabella con tutte le caratteristiche della MKR1000:

Microcontroller SAMD21 Cortex-M0+ 32bit low power ARM MCU
Board Power Supply (USB/VIN) 5V
Supported Battery Li-Po single cell, 3.7V, 700mAh minimum
Circuit Operating Voltage 3.3V
Digital I/O Pins 8
PWM Pins 12 (0, 1, 2, 3, 4, 5, 6, 7, 8, 10, A3 – or 18 -, A4 -or 19)
UART 1
SPI 1
I2C 1
Analog Input Pins 7 (ADC 8/10/12 bit)
Analog Output Pins 1 (DAC 10 bit)
External Interrupts 8 (0, 1, 4, 5, 6, 7, 8, A1 -or 16-, A2 – or 17)
DC Current per I/O Pin 7 mA
Flash Memory 256 KB
SRAM 32 KB
EEPROM no
Clock Speed 32.768 kHz (RTC), 48 MHz
Full-Speed USB Device and embedded Host

Per maggiori informazioni vi consiglio di consultare la pagina ufficiale su Arduino.cc.

Ecco alcune foto della board

MKR1000 TOP
MKR1000 TOP

 

MRK1000 BOTTOM
MRK1000 BOTTOM

 

MKR1000 Pinout
MKR1000 Pinout

Da qui è possibile scaricare il PDF con il pinout della MKR1000.

Getting Started

Prima di incominciare a caricare sketch sulla board bisogna procurarsi Arduino 1.6.8 o successivo e installare la scheda dal “Gestore schede” presente sull’Arduino IDE.

Eseguite i seguenti passaggi:

  1. Installare Arduino 1.6.8.
  2. Aprire Arduino 1.6.8.
  3. Andare su Strumenti -> Schede -> Gestore schede.
  4. Cercare Arduino SAMD Boards (32-bits ARM Cortex-M0+).
  5. Cliccare su installa in basso a destra come nell’immagine seguente:mkr1000_install

Dopo l’installazione della scheda si può procedere a caricare gli sketch su di essa.

Ora provate a caricare l’esempio blink per vedere se è andato tutto liscio come l’olio.

Quindi:

  1. Aprire di nuovo Arduino 1.6.8.
  2. Andare su Strumenti -> Schede.
  3. Selezionare la scheda Arduino/Genuino MKR1000 (Se non la vedete vuol dire che non è stata installata correttamente).
  4. Collegare la board al PC tramite un cavo USB Micro-B.
  5. Andare su Strumenti -> Porta.
  6. Selezionare la Porta COM utilizzata dalla board.

Caricate il seguente sketch:

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin 13 as an output.
  pinMode(6, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(6, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);              // wait for a second
  digitalWrite(6, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);              // wait for a second
}

Questo è l’esempio “Blink” modificato. Ho sostituito il pin 13 con il 6 poichè sulla MKR1000 il led è collegato al pin digitale 6.

Se noterete lampeggiare il led vuol dire che è andato tutto bene. Prossimamente posterò articoli-tutorial su come sfruttare al meglio questa board.

Intanto, per farvi un’idea sul suo potenziale, vi consiglio di consultare il mio progetto pubblicato su Hackster.io per il concorso “World’s Largest Arduino Maker Challenge“.

Per ora è tutto, grazie per la lettura. A presto!  😀