Datasheet
Metro M0 HELP!
My Metro M0 stopped working when I unplugged the USB!
A lot of our example sketches have a
while (!Serial);
line in setup(), to keep the board waiting until the USB is opened. This makes it a lot easier to debug a program
because you get to see all the USB data output. If you want to run your Metro M0 without USB connectivity, delete
or comment out that line
My Metro never shows up as a COM or Serial port in the Arduino IDE
A vast number of Metro 'failures' are due to charge-only USB cables
We get upwards of 5 complaints a day that turn out to be due to charge-only cables!
Use only a cable that you know is for data syncing
If you have any charge-only cables, cut them in half throw them out. We are serious! They tend to be low quality in
general, and will only confuse you and others later, just get a good data+charge USB cable
Ack! I "did something" and now when I plug in the Metro, it doesn't show up as a device anymore so I cant upload
to it or fix it...
No problem! You can 'repair' a bad code upload easily. Note that this can happen if you set a watchdog timer or
sleep mode that stops USB, or any sketch that 'crashes' your Metro
1. Turn on verbose upload in the Arduino IDE preferences
2. Plug in Metro M0, it won't show up as a COM/serial port that's ok
3. Open up the Blink example (Examples->Basics->Blink)
4. Select the correct board in the Tools menu, e.g. Metro M0 (check your board to make sure you have the right
one selected!)
5. Compile it (make sure that works)
6. Click Upload to attempt to upload the code
7. The IDE will print out a bunch of COM Ports as it tries to upload. During this time, double-click the reset
button, you'll see the red pulsing LED and the NeoPixel will be green that tells you its now in bootloading
mode
8. The Metro will show up as the Bootloader COM/Serial port
9. The IDE should see the bootloader COM/Serial port and upload properly
I can't get the Metro USB device to show up - I get "USB Device Malfunctioning" errors!
This seems to happen when people select the wrong board from the Arduino Boards menu.
If you have a Metro M0 (look on the board to read what it is you have) Make sure you select Metro M0 - do not use
Feather M0 or Arduino Zero
I'm having problems with COM ports and my Metro M0
Theres two COM ports you can have with the M0, one is the user port and one is the bootloader port. They are not
the same COM port number!
When you upload a new user program it will come up with a user com port, particularly if you use Serial in your user
© Adafruit Industries https://learn.adafruit.com/adafruit-metro-m0-express-designed-for-circuitpython Page 51 of 198










