Arduino: 1.8.9 (Windows 10), Board: "Adafruit Feather M0, Arduino, Off" Sketch uses 20876 bytes (7%) of program storage space. Maximum is 262144 bytes. Atmel SMART device 0x10010005 found Device : ATSAMD21G18A Chip ID : 10010005 Version : v2.0 [Arduino:XYZ] Mar 5 2016 17:46:52 Address : 8192 Pages : 3968 Page Size : 64 bytes Total Size : 248KB Planes : 1 Lock Regions : 16 Locked : none Security : false Boot Flash : true BOD : true BOR : true Arduino : FAST_CHIP_ERASE Arduino : FAST_MULTI_PAGE_WRITE Arduino : CAN_CHECKSUM_MEMORY_BUFFER Erase flash done in 0.832 seconds Write 21164 bytes to flash (331 pages) [===== ] 19% (64/331 pages) [=========== ] 38% (128/331 pages) [================= ] 58% (192/331 pages) [======================= ] 77% (256/331 pages) [============================= ] 96% (320/331 pages) [==============================] 100% (331/331 pages) done in 0.128 seconds Verify 21164 bytes of flash with checksum. Verify successful done in 0.016 seconds CPU reset. Couldn't find a Board on the selected port. Check that you have the correct port selected. If it is correct, try pressing the board's reset button after initiating the upload. This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.
The SAMD boards connect to computer over native USB support of the MCU. The handling of the USB is done by Arduino core functions linked at build to your sketch.
A consequence of using the native USB port is, if your sketch has a problem, it influences the USB communication. In this case you can activate the bootloader to handle the USB port and the upload. It is done by double clicking the reset button on board.