Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

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
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

Hi,

Is it possible to purchase ItsyBitsys without Circuit Python on board? Here's why I ask:

Occasionally the Arduino environment doesn't recognize the ItsyBitsy. It's a common issue that many people have had and the fix seems to be to hit the reset during a verbose attempt to download. And often you have to double press the reset button. This is a pain but it works.

When you double press the reset button, explorer opens up showing the ItsyBitsy as a folder. I assume this has something to do with the way Circuit Python works.

Here's the rub: I often solder the ItsyBitsy with the pads up (and the reset button down) so I don't have the option of double pressing the reset button, it's under the board where I can't reach it. But I CAN take a wire and short the "Rst" input on the back of the board to ground. I do this twice to simulate a "double press" of the reset button. Again, this is a bit more of a pain, but it works.

So I'm just looking for a pain-free way to use the ItsyBitsy M0 express. I SUSPECT (with no proof) that the reason the ItsyBitsy sometimes has issues with downloading files is due in part to the Circuit Python environment.

So, can I get any ItsyBitsy M0 sans Circuit Python? I promise to buy a mess of them if you have them !

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

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by adafruit2 »

at this time they only come with circuitpython. opening the usb serial port at 1200 baud *should* pop it into bootloader mode.
you could double click on a board that is programmed how you like, and grab the UF2 off, then drag that onto new boards in bootloader mode before soldering in

User avatar
westfw
 
Posts: 2008
Joined: Fri Apr 27, 2007 1:01 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by westfw »

BTW, I think it's the UF2 bootloader that causes the folder to open, not anything to do with CircuitPython.

User avatar
neradoc
 
Posts: 542
Joined: Wed Apr 27, 2016 2:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by neradoc »

They might come with Circuitpython pre installed (do they ?), but once you upload an Arduino program you are not using Circuitpython anymore. The BOOT drive you see with double-reset is the UF2 bootloader, it is compatible with Arduino.

Have you looked at https://learn.adafruit.com/introducing- ... tsy-m0/faq ?

Arduino uses a special technique that allows rebooting into bootloader mode by monitoring the USB serial connection, if for any reason that is not possible, like if the program crashed the board in a state where it can't do that, you have to reboot it manually with a double press at the right time as mentioned at the bottom of that FAQ.

User avatar
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

adafruit2 wrote:at this time they only come with circuitpython. opening the usb serial port at 1200 baud *should* pop it into bootloader mode.
you could double click on a board that is programmed how you like, and grab the UF2 off, then drag that onto new boards in bootloader mode before soldering in
*Opening the usb serial port...* - The serial port that opens when I double reset disappears from the list of ports after I compile. How do I open the port at 1200 baud? And which port?

*Double click on a board that is programmed how you like* - Do you mean programmed with a bootloader that I like? I don't like any of them; they all require a double reset to work :-) Are there different versions of the bootloader floating around?

User avatar
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

Yes, many times. Good information but nothing there has worked.

Here's a description of my best progress so far:

I do a double reset then look at the list of ports in the Arduino environment.
"COM5" with the itsyBitsy M0 express is listed.
I select COM5 and attempt an upload.
The upload works without requiring me to double reset.
About 5-10 seconds after seeing "Upload Complete", I get another message "Board at COM5 is not available"
and COM5 is gone from the list of Ports.

If I have to always double reset, I can do that. It just is a pain when you don't have access to the reset button.

I've also thought of getting a programmer but that could just be a can of worms. The last time I used a programmer, it was a big machine that loaded your code onto a separate UVPROM chip... I'm sure things have changed!

User avatar
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

Incidentally, even though I'm able to upload code by double resetting the device to get it into upload mode, the fact that the COM port disappears after it's done means I can't debug using Serial.print statements. So I take back what I said before about it being a pain but I can still use it; it's more than just a pain. I need a solution.

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

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by adafruit2 »

once you have arduino sketch on the itsy board you do not need to doubleclick anymore to enter bootloader, it will enter the bootloader via the IDE

uploading an arduino sketch *removes* circuitpython

User avatar
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

adafruit2 wrote:once you have arduino sketch on the itsy board you do not need to doubleclick anymore to enter bootloader, it will enter the bootloader via the IDE
Here's where I see something wrong. I've successfully uploaded sketches using the double reset but I still need to double reset, otherwise the bootloader doesn't kick in and the IDE doesn't find the port.

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

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by adafruit2 »

something is amiss with your setup then. once Blink is installed, it should work:

https://learn.adafruit.com/introducing- ... aq-2704880

User avatar
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

adafruit2 wrote:something is amiss with your setup then. once Blink is installed, it should work:
Ok, feel free to curse me under your breath if you like but I didn't believe my code could possibly be the problem. But it was. I took your advice and uploaded "blink" as described, and it totally fixed this issue.

PROBLEM SOLVED!

Now I'll selectively add my code to the Blink example one line at a time to determine the offending line of code.
I'll come back and post details of what exactly I did wrong, just to make this thread complete, but I think I'm home free from here.

Thank you.

Meanwhile, is there detailed documentation on the Itsybitsy M0 (and other boards too) available?
Specifically, the memory map and boot sequence, *theory of operation* etc.
The more I know, the less I'll have to come back here asking dumb questions.

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

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by adafruit2 »

all documentation is on that learn guide or in learn.adafruit.com

User avatar
TomHumbleAndHandsome
 
Posts: 99
Joined: Mon Feb 15, 2021 6:38 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by TomHumbleAndHandsome »

adafruit2 wrote:all documentation is on that learn guide or in learn.adafruit.com
Actually, I had that bookmarked as "things to read"...

Ok, here is the offending code. If I omit the declaration of "strip" then everything works fine. If I include the declaration, then I lose the serial port when the code runs.

Any ideas?


#define NUMPIXELS 1
#define CLOCKPIN 40
#define DATAPIN 41

Adafruit_DotStar strip(NUMPIXELS, DATAPIN, CLOCKPIN, DOTSTAR_BRG); // this line clobbers the serial port.

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

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by adafruit2 »

please post a new thread with questions since this thread is resolved

User avatar
westfw
 
Posts: 2008
Joined: Fri Apr 27, 2007 1:01 pm

Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?

Post by westfw »

You can theoretically cause an M0 board to stop responding to the automatic reset request if you somehow stop the USB processing on the board. I'm not entirely sure exactly which "common" things would do that, but for example you could turn off interrupts and enter a tight loop that never services the USB functions, and that would do it for sure. The USB code has to be running enough to detect the speed change to 1200bps.

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

Return to “Itsy Bitsy Boards”