Arduino MKR GSM 1400: Connecting Your Projects to the World
A compact microcontroller board designed for IoT applications, featuring cellular connectivity for remote data transmission.
The Arduino MKR GSM 1400 is a powerful yet compact board designed for IoT (Internet of Things) projects requiring cellular communication. It belongs to the Arduino MKR family, which focuses on small form-factor boards with advanced connectivity options. Released around 2017, it was one of Arduino's early offerings to integrate cellular modem capabilities directly onto the board, simplifying the process of connecting remote devices to the internet without relying on Wi-Fi or Ethernet.
At its heart, the MKR GSM 1400 is powered by the u-blox SARA-U201 module, which provides 2G, 3G, and 4G (LTE Cat 1) cellular connectivity. This module is paired with an ARM Cortex-M0+ based microcontroller, the Microchip SAMD21, which handles the core processing, GPIO control, and communication protocols. This dual-chip architecture allows for efficient management of both the application logic and the cellular modem, making it suitable for battery-powered devices where power consumption is a critical factor.
The board is designed for makers, students, and embedded engineers who need to build IoT solutions that can operate in areas without readily available Wi-Fi networks. Its integrated GSM modem means you can send sensor data, receive commands, or even make simple calls directly over the cellular network. This makes it ideal for applications like remote environmental monitoring, asset tracking, smart agriculture, or creating connected devices in remote locations. The 3.3V operating voltage and breadboard-friendly design further enhance its usability for prototyping.
Compared to other Arduino boards, the MKR GSM 1400 stands out due to its built-in cellular modem. While boards like the MKR WiFi 1010 offer Wi-Fi and Bluetooth, or the original Arduino Uno focuses on basic I/O, the GSM 1400 specifically targets applications where cellular is the primary or only connectivity option. This specialized nature makes it a niche but powerful tool for developers looking to push the boundaries of connected hardware beyond traditional network infrastructures.
Watch
Related video, embedded from YouTube.
Specifications
| Microcontroller / SoC | Microchip SAMD21 Cortex-M0+ 32-bit Low-Power ARM MCU |
| Cellular Module | u-blox SARA-U201 (supports 2G, 3G, 4G LTE Cat 1) |
| Architecture | 32-bit ARM Cortex-M0+ |
| Clock speed | 48 MHz |
| Flash / Storage | 256 KB |
| RAM / SRAM | 32 KB |
| Operating voltage | 3.3V |
| Digital I/O pins | 22 (many with alternative functions) |
| Analog / ADC | 7 (12-bit resolution) |
| PWM | 11 pins |
| Connectivity | GSM/3G/4G LTE, I2C, SPI, UART |
| USB | Micro USB connector (for programming and power) |
| Power input | 5V via Micro USB, VIN pin (7-12V recommended), or LiPo battery connector |
| Dimensions | 67.64 mm x 25 mm |
Pinout & pin functions
| Pin | Function |
|---|---|
| GND | Ground |
| 3V3 | 3.3V output |
| VCC | Main power supply (typically 5V from USB or VIN) |
| VIN | External power input (7-12V recommended) |
| VBAT | Battery input (for LiPo battery) |
| RST | Reset pin |
| 0 (RX) | Serial communication RX (UART) |
| 1 (TX) | Serial communication TX (UART) |
| 2 | Digital I/O |
| 3 | Digital I/O, PWM |
| 4 | Digital I/O |
| 5 | Digital I/O, PWM |
| 6 | Digital I/O, PWM |
| 7 | Digital I/O |
| 8 | Digital I/O |
| 9 | Digital I/O, PWM |
| 10 | Digital I/O, SPI SS |
| 11 | Digital I/O, SPI MOSI, PWM |
| 12 | Digital I/O, SPI MISO |
| 13 | Digital I/O, SPI SCK |
| A0 | Analog Input (ADC), Digital I/O |
| A1 | Analog Input (ADC), Digital I/O |
| A2 | Analog Input (ADC), Digital I/O |
| A3 | Analog Input (ADC), Digital I/O |
| A4 | Analog Input (ADC), Digital I/O, I2C SDA |
| A5 | Analog Input (ADC), Digital I/O, I2C SCL |
| A6 | Analog Input (ADC), Digital I/O |
| A7 | Analog Input (ADC), Digital I/O |
| SARA_PWR | Power control for SARA module |
| SARA_STATUS | Status indicator for SARA module |
| SIM_DETECT | SIM card detection pin |
Wiring & circuit basics
Powering the Arduino MKR GSM 1400 requires careful consideration to avoid damage. The primary power source is typically the Micro USB port, which supplies 5V. Alternatively, the VIN pin can accept a wider voltage range, usually between 7V and 12V, which is then regulated down to 3.3V by an onboard regulator. For portable applications, a LiPo battery can be connected to the VBAT header, which is also managed by an onboard power management circuit. Always ensure your power source can supply sufficient current, especially when the GSM module is active, as it can draw significant power spikes. Avoid connecting higher voltages directly to the 3.3V pin, as this will damage the board.
The Arduino MKR GSM 1400 operates at a logic level of 3.3V. This means that digital input pins expect signals between 0V (LOW) and 3.3V (HIGH). If you are connecting external components that operate at 5V, such as some older sensors or LEDs, you will need a logic level shifter to prevent damage to the microcontroller. Conversely, if you are connecting a 3.3V sensor to a 5V Arduino board, it might work, but it's not guaranteed and depends on the sensor's tolerance. For this 3.3V board, ensure all connected components are compatible or use appropriate level shifting.
A basic example circuit is wiring an LED. Connect the anode (longer leg) of an LED to a digital pin capable of PWM, for instance, pin 5. Connect the cathode (shorter leg) of the LED to one end of a current-limiting resistor (typically 220-330 ohms for standard LEDs). Connect the other end of the resistor to a GND pin on the Arduino. When the microcontroller sets pin 5 HIGH (3.3V), current flows through the resistor and LED, illuminating it. The resistor is crucial to prevent excessive current from flowing through the LED and potentially damaging it or the microcontroller pin.
Programming & getting started
The primary toolchain for the Arduino MKR GSM 1400 is the Arduino IDE. After installing the IDE, you'll need to add the 'Arduino SAMD Boards' board package via the Board Manager. Then, select 'Arduino MKR GSM 1400' from the Tools > Board menu. Connect the board via USB, select the correct COM port, and you can upload standard Arduino sketches. The board also supports more advanced environments like PlatformIO, which offers a more robust development experience with features like integrated debugging and library management. For cellular communication, you'll typically use the Arduino `MKRGSM` library, which provides functions to connect to the cellular network, send/receive SMS, and make HTTP requests.
To upload your first program, open the Arduino IDE, select 'File' > 'Examples' > 'MKRGSM' > 'SendSMS'. Connect your Arduino MKR GSM 1400 to your computer via USB. Ensure you have a valid SIM card inserted into the SIM card slot and that it is not PIN-protected (or you know the PIN). Select the correct board and COM port from the 'Tools' menu. Click the Upload button. Once uploaded, you can open the Serial Monitor to see output and potentially interact with the board. You will need to configure the example sketch with your phone number and the SMS message content.