Feather M0 Express not uploading - Unsupported ARM7TDMI arc

Please tell us which board you are using.
For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Feather M0 Express not uploading - Unsupported ARM7TDMI arc

Post by iNode »

I got a Feather M0 Express and I can't get anything uploaded to it (tried blink and other examples). It also doesn't appear as a 2MB USB storage device when it's plugged in.

Made sure to install all the necessary Arduino & Adafruit SAMD boards. When I plug it it it shows COM# and I have the board selected to M0 Express. When I try to upload to it, it keeps trying and eventually fails and says no device found on COM# even though it's selected in the Port..

Here's the verbose output when I enabled it:
Forcing reset using 1200bps open/close on port COM19
PORTS {COM19, } / {COM19, } => {}
PORTS {COM19, } / {COM19, } => {}
PORTS {COM19, } / {COM19, } => {}
PORTS {COM19, } / {COM19, } => {}
PORTS {COM19, } / {COM19, } => {}
PORTS {COM19, } / {} => {}
PORTS {} / {} => {}
PORTS {} / {} => {}
PORTS {} / {COM19, } => {COM19, }
Found upload port: COM19
C:\Users\theab\AppData\Local\Arduino15\packages\arduino\tools\bossac\1.7.0/bossac.exe -i -d --port=COM19 -U true -i -e -w -v C:\Users\theab\AppData\Local\Temp\arduino_build_480908/Blink.ino.bin -R
No device found on COM19
Set binary mode
readWord(addr=0)=0x5342
readWord(addr=0xe000ed00)=0
readWord(addr=0x400e0740)=0x55000000
version()=SBS00000,4#
chipId=0x55000000
Unsupported processor
Send auto-baud
Set binary mode
readWord(addr=0)=0x342c3034
An error occurred while uploading the sketch
readWord(addr=0xe000ed00)=0x53550023
readWord(addr=0x400e0740)=0x30455342
version()=740,4#
chipId=0x30455342
Unsupported ARM7TDMI architecture
Double clicking and then uploading while it's bootloader mode doesn't make any difference.

User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by iNode »

So an updated, it's still not working, I tried to follow this guide to flash circuit python onto the board using bossac.exe and it's giving me the same error that Arduino is giving me, No device found on COM19 when the computer see's that it's plugged in.
Capture.PNG
Capture.PNG (149.39 KiB) Viewed 1344 times
The command line output for when O'm running bossac:
C:\Users\theab\Desktop\bossac-1.7.0>bossac -e -w -v -R -p COM19 "C:\Users\theab\Downloads\M0\adafruit-circuitpython-feather_m0_express-0.9.5.bin"
No device found on COM19

User avatar
adafruit2
 
Posts: 22193
Joined: Fri Mar 11, 2005 7:36 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by adafruit2 »

we've seen the AMR7TDMI thing come up but its hard to understand exactly why it happens. are you using a hub? what exact version of windows are you using?

User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by iNode »

adafruit2 wrote:we've seen the AMR7TDMI thing come up but its hard to understand exactly why it happens. are you using a hub? what exact version of windows are you using?
Nope, directly into my laptop's USB port. I'm running Windows 10 Pro 64-bit v1607 on a Razer Blade, I then tried it on my Window 10 desktop and same thing, port recognized, no USB appearing on My Computer and can't upload any code to it.

After 2 days of trying non-stop I gave up on windows and tried to seek a different solution. I installed a Linux virtual machine running Ubuntu, got Arduino on there and installed the two SAMD boards from Arduino and Adafruit in the board manager. Now it seems to work in the Linux virtual machine, it shows up as a 2MB USB drive and I can upload.

I look forward to see where this board goes, only reason why I went to such extents to get it working!

Maybe there should be some kind of precaution for windows users until this issue gets fixed as it seems like I'm not the only one experiencing this problem. Needless to say, I got this board since it seemed very easy to use as it was just dragging and dropping python files after you added the firmware but instead it was the complete opposite and really troublesome on the Arduino side of things (not with circuit python) for windows users and only being able to use it in a virtual machine is pretty annoying.

--

Update: I tried to program the M0 express as a HID keyboard on the Linux virtual machine, it worked fine in the virtual machine but after I exited the VM and tried it on windows to see what would happen and it did not work or recognize the device as a HID.

User avatar
tannewt
 
Posts: 3315
Joined: Thu Oct 06, 2016 8:48 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by tannewt »

Was your HID keyboard code Arduino or CircuitPython? I only know the CircuitPython side of things.

User avatar
adafruit2
 
Posts: 22193
Joined: Fri Mar 11, 2005 7:36 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by adafruit2 »

i have Some Ideas what could be causing things. i need a little time to come up with the test tho

inode, can you email support@adafruit and ask for a new feather m0 express? but keep the current one. if you dont mind helping us, i might have you try a test and if that doesnt work we might give you a return label!

User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by iNode »

tannewt2 wrote:Was your HID keyboard code Arduino or CircuitPython? I only know the CircuitPython side of things.
tannewt2, I used the Arduino HID keyboard example code.

Code: Select all

#include "Keyboard.h"

void setup() {
  Keyboard.begin();
}

void loop() {
    Keyboard.print("You pressed the button ");
    delay(1000);
}
-
inode, can you email support@adafruit and ask for a new feather m0 express? but keep the current one. if you dont mind helping us, i might have you try a test and if that doesnt work we might give you a return label!
adafruit2, Yes for sure, I'd love to help out! I'll send an email right now

User avatar
dhalbert
 
Posts: 401
Joined: Tue Feb 17, 2015 6:18 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by dhalbert »

You probably noticed this already, but I see the COM port switching between normal operation and when you double-click to allow bossac to upload. For instance, I see COM4 after a single-click reset, but COM5 after double-click. Also, you can omit the "-p COMx" argument to bossac, and it will automatically scan for the right port.

User avatar
adafruit2
 
Posts: 22193
Joined: Fri Mar 11, 2005 7:36 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by adafruit2 »

dhalbert, it sounds like thas it but i think this is actually something else. i had it happen a few times in development but then it 'went away' - and its a rare occurance. maybe 1/50 boards. its something marginal, either with the uf2 bootloader or the chip. not sure 100% what tho :/

User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by iNode »

dhalbert wrote:You probably noticed this already, but I see the COM port switching between normal operation and when you double-click to allow bossac to upload. For instance, I see COM4 after a single-click reset, but COM5 after double-click. Also, you can omit the "-p COMx" argument to bossac, and it will automatically scan for the right port.
Mine doesn't do that, stays on the same port. I also remember when I omitted "-p COM#" it said something like scanned for ports but none were found.

User avatar
adafruit2
 
Posts: 22193
Joined: Fri Mar 11, 2005 7:36 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by adafruit2 »

inode, can you email support@adafruit and ask for a new feather m0 express? but keep the current one. if you dont mind helping us, i might have you try a test and if that doesnt work we might give you a return label!
adafruit2, Yes for sure, I'd love to help out! I'll send an email right now
ok if you load circuitpython on, using the virtmachine, then plug it back into your win laptop, can you run py code and use the serial console or is that also not working
(the usb/serial code in the bootloader is totally separate from the python usb/serial core)

User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by iNode »

adafruit2 wrote:
inode, can you email support@adafruit and ask for a new feather m0 express? but keep the current one. if you dont mind helping us, i might have you try a test and if that doesnt work we might give you a return label!
adafruit2, Yes for sure, I'd love to help out! I'll send an email right now
ok if you load circuitpython on, using the virtmachine, then plug it back into your win laptop, can you run py code and use the serial console or is that also not working
(the usb/serial code in the bootloader is totally separate from the python usb/serial core)
I ran some tests and noticed a couple things:

On the Linux Ubuntu 17.04 VM:
  • The board is recognized right away without needing drivers, I can upload the firmware to it or python scripts.
  • When plugging it in it randomly alternates between showing up FEATHERBOOT and CIRCUITPY with the last python file that I uploaded onto it, even after I put the firmware onto it. (Might also be because it kept being loaded in bootloader mode when plugging it in?)
  • Python from serial wouldn't work when it was plugged in and showed up as FEATHERBOOT. I added a line in the python script to print text and it was just blank in the serial, pressing CTRL+C to interrupt the script does nothing.
  • I cannot access the serial console or upload Arduino code to the board (even with the Arduino & Adafruit SAMD boards installed from the board manager). I had to add some udev rules to get it to start uploading or to get the serial monitor or screen to work. (I had to setup a new VM and completely forgot to add the udev rules as I did yesterday and noticed the serial port showed up but did not work when trying to connect to it)
  • I noticed that after I added the udev rules, it mainly appeared as CIRCUITPY when I plugged it in the majority of the times.
    vm_serial.PNG
    vm_serial.PNG (260.2 KiB) Viewed 1211 times
    I followed this guide for the udev rules: https://learn.adafruit.com/adafruit-ard ... inux-setup
On macOS:
I went on my iMac and plugged it in there to test it out, it was the most seamless experience using it on Mac.
  • I had Arduino already installed from a couple years back so I can't exactly remember what all the configurations I did but after installed the Arduino & Adafruit SAMD board in the board manager I was able to access the serial monitor, screen and and upload to the board.
  • Most oft the times when I plugged the board in, it showed up as FEATHERBOOT even after flashing the Circuit Python firmware and putting a python script on it. Although it seemed like it still kept running the script just fine on the board.
  • Just like on Linux, I couldn't access python from serial when the board appeared as FEATHERBOOT.
  • When it appears as CIRCUITPY it outputs the text it's suppose to print, pressing CTRL+C interupts the script and lets me access python.
  • As mentioned above, it mainly appeared as FEATHERBOOT, so I didn't have access to python from serial, to work around this I just readded the circuit python firmware and then it a few seconds later it appeared as CIRCUITPY.
18073454_10213052478567040_367024947_n.png
18073454_10213052478567040_367024947_n.png (36.62 KiB) Viewed 1211 times
On windows:
When plugging in the board standalone and then trying to access the serial port, the serial prints nothing when it's suppose to be printing "hi". Pressing any key will just have it print out "USB". Trying to interrupt with CTRL+C doesn't do anything as shown below.. (I think it only does this while in bootloader mode)
Serial.PNG
Serial.PNG (661.8 KiB) Viewed 1211 times
I tried flashing the circuit python firmware on the linux VM, re-adding the python script then ejecting the feather from the VM so it's loaded back into windows. When connecting to serial it's again just blank when it's suppose to be printing "Hi", trying to interrupt it or pressing any key will get it to stop working and bring up an error window saying "Error writing to serial device" then disconnects. The results are the same even if I unplug it and plug it back in when it's not in bootloader mode.

User avatar
adafruit2
 
Posts: 22193
Joined: Fri Mar 11, 2005 7:36 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by adafruit2 »

note that doubleclicking RESET will put it into bootloader mode. a single reset button click will get out of bootloader mode. if you see "FEATHERBOOT" and a green led, it is in bootloader mode.

if it shows up as a FEATHERBOOT device, its in bootloader mode. it will never run python code in bootloader mode. the python core is not loaded.

so it sounds like your board works perfectly fine on mac and linux, just not windows. (please verify yes/no :)

User avatar
adafruit2
 
Posts: 22193
Joined: Fri Mar 11, 2005 7:36 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by adafruit2 »

ok update, we've done some sleuthing on the USB sync code. we think that is causing some of the issues

on a mac or linux, get into FEATHERBOOT mode. then unzip this attachment, and drag this uf2 file onto the FEATHER BOOT drive, it will update the bootloader. do a hard power cycle after, then try it again on windows
Attachments
update feather boot.zip
(7.48 KiB) Downloaded 48 times

User avatar
iNode
 
Posts: 12
Joined: Sat Apr 16, 2016 7:29 pm

Re: Feather M0 Express not uploading - Unsupported ARM7TDMI

Post by iNode »

Thanks!

Sorry for the late reply, I just finished my exam today!

I checked the bootloader thing on the VM I had setup and yes, it seems to be working fine on Mac/Linux.

I tried uploading the updated feather boot file you provided but it seems like windows still isn't recognizing it as a USB drive or Arduino doesn't upload. One thing I noticed though is that if I flash the circuit python firmware in the VM, get out of bootloader mode then try to upload an Arduino sketch, it says "Uploading" but doesn't do anything for a couple minutes then just says "An error occurred while uploading the sketch" compared to when it in bootloader mode which gives you more info.

I also got the new Feather M0 Express that I got sent (Thank you!) but it's behaving the same the original I have when I plug it into windows. I tried flashing the updated boot loader on there too but it didn't make a difference either. I'm going to try them both on a different PC and I'll get back to you soon.

Locked
Please be positive and constructive with your questions and comments.

Return to “Feather - Adafruit's lightweight platform”