Verified 2026-10
Adafruit Feather M0 WiFi - ATSAMD21 + ATWINC1500
Feather-format ATSAMD21G18 (48 MHz Cortex M0+, 256 KB flash / 32 KB RAM) with an ATWINC1500 802.11bgn module on its own SPI, 3.3 V logic, micro-USB with a built-in USB bootloader, a 200 mA LiPo charger and 20 GPIO on the 28-pin Feather header - the cheapest route to a SAMD21 board that has WiFi without sharing the CPU with it.
Place this board on a carrier in the editor →
Specs
| MCU | Microchip/Atmel ATSAMD21G18 (ARM Cortex-M0+, 48 MHz, 256 KB flash, 32 KB SRAM, no EEPROM) plus an Atmel ATWINC1500 WiFi module |
|---|---|
| Clock | 48 MHz |
| Flash | 0.25 MB |
| RAM | 32 KB |
| I/O | 20 digital, 10 analog, 8 PWM |
Adafruit's own counts for the header: 20 GPIO, 10 analog inputs, 8 PWM, and one true analog output (DAC) on A0. Four further GPIO numbers (D2, D4, D7, D8) exist on the chip but are wired to the WiFi module and are not brought out.
Pinout
32 pads, as the vendor numbers them.
| # | Name | Function | Signals |
|---|---|---|---|
| 1 | Wake | Header pad 1 of the 1x16 row. Adafruit: connected to the WAKE pin of the WiFi module, "not used at this time but it's there if you want it" | WINC1500 WAKE, not used in current firmware |
| 2 | TX | GPIO #1, transmit for hardware Serial1; can also be read as an analog input | D1, GPIO1, PA10, Serial1 TX, analog input AIN18 |
| 3 | RX | GPIO #0, receive for hardware Serial1; can also be read as an analog input | D0, GPIO0, PA11, Serial1 RX, analog input AIN19 |
| 4 | MI | Hardware SPI MISO. Keep it for SPI at speed - it is also the MISO line into the WiFi module | D22, GPIO22, PA12, SPI MISO |
| 5 | MO | Hardware SPI MOSI; also the MOSI line into the WiFi module | D23, GPIO23, PB10, SPI MOSI |
| 6 | SCK | Hardware SPI clock; also the clock into the WiFi module | D24, GPIO24, PB11, SPI SCK |
| 7 | A5 | Analog input A5 / digital I/O | D19, GPIO19, PB02, analog input AIN10 |
| 8 | A4 | Analog input A4 / digital I/O | D18, GPIO18, PA05, analog input AIN5 |
| 9 | A3 | Analog input A3 / digital I/O; also the VREFB pin | D17, GPIO17, PA04, analog input AIN4, VREFB |
| 10 | A2 | Analog input A2 / digital I/O | D16, GPIO16, PB09, analog input AIN3 |
| 11 | A1 | Analog input A1 / digital I/O | D15, GPIO15, PB08, analog input AIN2 |
| 12 | A0 | Analog input A0 and the chip's true analog output (DAC), 0-3.3 V - not PWM | D14, GPIO14, PA02, analog input AIN0, DAC VOUT |
| 13 | GND | Common ground for all power and logic | ground |
| 14 | ARf | External analog reference; Adafruit: cannot go higher than 3.3 V | analog reference, input |
| 15 | 3V | Output of the 3.3 V regulator, 600 mA peak (the WiFi module alone can pull 300 mA in bursts) | 3.3 V supply, output |
| 16 | RST | Reset; tie to ground to reset the board and launch the bootloader | reset, input |
| 17 | BAT | Positive side of the JST-PH LiPo connector, also fed by the charger | LiPo battery, supply |
| 18 | En | Enable for the 3.3 V regulator, pulled up on the board - ground it to shut the 3.3 V rail down | 3.3 V regulator enable, input |
| 19 | USB | 5 V from the micro-USB jack when it is plugged in | USB VBUS, supply |
| 20 | 13 | GPIO #13, wired to the red LED next to the USB jack - so using it for anything else lights the LED | D13, GPIO13, PA17, red LED |
| 21 | 12 | GPIO #12 | D12, GPIO12, PA19 |
| 22 | 11 | GPIO #11 | D11, GPIO11, PA16 |
| 23 | 10 | GPIO #10 | D10, GPIO10, PA18 |
| 24 | 9 | GPIO #9, which is also analog input A7 and is already wired to the LiPo divider - Adafruit warns it sits at about 2 V on its own because of that divider | D9, GPIO9, PA07, analog input A7, battery divider |
| 25 | 6 | GPIO #6 | D6, GPIO6, PA20 |
| 26 | 5 | GPIO #5 | D5, GPIO5, PA15 |
| 27 | SCL | Hardware I2C clock. No pull-up is fitted, so a 2.2-10 kOhm pull-up is needed on the bus | D21, GPIO21, PA23, I2C SCL |
| 28 | SDA | Hardware I2C data. No pull-up is fitted, so a 2.2-10 kOhm pull-up is needed on the bus | D20, GPIO20, PA22, I2C SDA |
| 29 | SWCLK | Bottom-side test pad on the fab file's SWCLK net (TP1), 1.5 mm round; for a CMSIS-DAP debugger | SWD clock, debug, test pad |
| 30 | SWDIO | Bottom-side test pad on the SWDIO net (TP2), 1.5 mm round | SWD data, debug, test pad |
| 31 | BAT- | JST-PH battery connector (fab file X1) pad 1, on the ground net | battery negative, ground |
| 32 | BAT+ | JST-PH battery connector pad 2, on the VBAT net | battery positive, supply |
Buses
| Bus | Signals | Pins | Voltage | Note |
|---|---|---|---|---|
| I2C ×1 | SDA, SCL | SDA, SCL | ||
| SPI ×1 | SCK, MOSI, MISO | SCK, MOSI, MISO | ||
| UART ×1 | TX, RX | TX, RX |
Power
| Input | micro-USB 5 V, or a 3.7 V LiPo on the JST-PH connector; the 3.3 V rail comes from an AP2112K-3.3 regulator rated 600 mA peak, and the board switches to USB automatically when it is present |
|---|---|
| Input range | 5 V USB or 3.7 V LiPo |
| Typical draw | 22 mA |
22 mA typical is Adafruit's own two figures added: "about 12mA for the WINC & 10mA for the ATSAMD21" with the WiFi module's power management on. Adafruit quotes no board-level total, and the figure is not what a transmitting board draws - they state the WiFi can pull 300 mA peak during xmit, which is half the regulator's peak rating. The LiPo charger is 200 mA with a charge-status LED (silk CHG).
Notes
Pin numbers 1-28 are the fab file's own pad numbers: 1-16 are JP1, the 1x16 header, running WAKE (1) to RST (16); 17-28 are JP3, the 1x12 header, running BAT (1) to SDA (12). That is the reverse of the FeatherWing schematic symbol's 1-28 order, so do not assume pin 1 is RESET here. The GPIO/PAxx/SERCOM/timer columns are read off Adafruit's own pinout PDF for this board (the header table, not the marketing page). Four pins are consumed inside the board and are NOT on the header: D2 (PA14) enables the WiFi module, D4 (PA08, NMI) resets it, D7 (PA21) is its IRQ and D8 (PA06) its chip select - so a project needing those four GPIO numbers cannot have them. D9/A7 is the LiPo divider, as noted per pin. Adafruit states there is no CircuitPython or MicroPython support for the WINC1500 and none is planned, so this board is Arduino-only. As of 25 Apr 2025 the PCB is re-silkscreened with Adafruit Pinguin and the JST connector may be black or tan; the circuit is unchanged, and the fab file fetched here is still the vector-font revision. Dimensions 53.65 x 22.8 x 8 mm, 6.1 g, four mounting holes, 0.1in longer than most Feathers - it will not fit a Feather-length footprint. Pins 29-32 are not in the header: 29-30 are the bottom SWD test pads and 31-32 the JST battery connector, numbered after the header so every number is unique.
Provenance
Every figure on this page was read from the 4 sources below and last checked on Oct 19, 2026.
- vendor Adafruit - Feather M0 WiFi w/ATWINC1500 product page (ID 3010, $39.95; ATSAMD21G18 48 MHz, 256 KB/32 KB, AP2112K-3.3 at 600 mA peak, WiFi 300 mA peak, 200 mA LiPo charger, 20 GPIO, 8 PWM, 10 analog in, 53.65 x 22.8 x 8 mm, 6.1 g, Pinguin resilk 25 Apr 2025)
- reference Adafruit learn - Feather M0 WiFi, Pinouts (power pins, logic pins, no pull-ups on SDA/SCL, D9 = A7 on the LiPo divider, #2/#4/#7/#8 used by the WINC1500, Wake/ARef/RST, SWD pads on the bottom)
- datasheet Adafruit - Feather M0 WINC1500 Pinout.pdf, the header table (Arduino name, GPIO, PAxx, ADC, touch, SERCOM, timer columns for D0-D13, A0-A5, SCK/MOSI/MISO, SDA/SCL)
- datasheet Adafruit - Feather M0 WiFi Eagle fab file (JP1 1x16 pads 1-16 = WAKE..!RESET, JP3 1x12 pads 1-12 = VBAT..SDA, silk labels per pad, TP1 = SWCLK and TP2 = SWDIO, X1 JST pads 1 = GND / 2 = VBAT)