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 !
Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
- adafruit2
- Posts: 22148
- Joined: Fri Mar 11, 2005 7:36 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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
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
- westfw
- Posts: 2008
- Joined: Fri Apr 27, 2007 1:01 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
BTW, I think it's the UF2 bootloader that causes the folder to open, not anything to do with CircuitPython.
- neradoc
- Posts: 542
- Joined: Wed Apr 27, 2016 2:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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.
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.
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
*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?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
*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?
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
Yes, many times. Good information but nothing there has worked.neradoc wrote:Have you looked at https://learn.adafruit.com/introducing- ... tsy-m0/faq ?
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!
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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.
- adafruit2
- Posts: 22148
- Joined: Fri Mar 11, 2005 7:36 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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
uploading an arduino sketch *removes* circuitpython
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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.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
- adafruit2
- Posts: 22148
- Joined: Fri Mar 11, 2005 7:36 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
something is amiss with your setup then. once Blink is installed, it should work:
https://learn.adafruit.com/introducing- ... aq-2704880
https://learn.adafruit.com/introducing- ... aq-2704880
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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.adafruit2 wrote:something is amiss with your setup then. once Blink is installed, it should work:
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.
- adafruit2
- Posts: 22148
- Joined: Fri Mar 11, 2005 7:36 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
all documentation is on that learn guide or in learn.adafruit.com
- TomHumbleAndHandsome
- Posts: 99
- Joined: Mon Feb 15, 2021 6:38 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
Actually, I had that bookmarked as "things to read"...adafruit2 wrote:all documentation is on that learn guide or in learn.adafruit.com
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.
- adafruit2
- Posts: 22148
- Joined: Fri Mar 11, 2005 7:36 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
please post a new thread with questions since this thread is resolved
- westfw
- Posts: 2008
- Joined: Fri Apr 27, 2007 1:01 pm
Re: Can I buy ItsyBitsys M0 WITHOUT Circuit Python?
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.
Please be positive and constructive with your questions and comments.