digistump / DigistumpArduino

Files to add Digistump support (Digispark, Pro, DigiX) to Arduino 1.6.X (1.6.5+)
934 stars 377 forks source link

Warning! The USB Examples breaks the bootloader USB enumeration #85

Open E3V3A opened 5 years ago

E3V3A commented 5 years ago

I just found this repo, after having posted my issue here.

The Summary:

The example code for using USB, will break the Digispark bootloaer enumeration, and will make your (Windows) machine think that your Digistump is a DigiUSB, instead of a bootlaoder, preventing any future connections and (Arduino IDE) uploads.

Please put some warnings in these example codes, to make that clear to the user, before he flashes over his boot loader connections!

bratoff commented 5 years ago

I do not work for Digistump, but please allow me to add my 2 cents worth: The board pictured in your post at the micronucleus repo is NOT a Digistump product. Is it really fair to expect them to support it?

E3V3A commented 5 years ago

The board pictured in your post at the micronucleus repo is NOT a Digistump product. Is it really fair to expect them to support it?

Yes, because it is exactly the same circuit as in the (original) Digistump, except the ugly PCB printed USB connector is replaced by a proper uUSB, thus even a better product. Everything else is the same. (And since I had no clue that this was a knock-off, it seem that Digistump still get all the credit with whatever projects are created by these.)

No, I no longer expect anyone to support anything! (Even RPi people doesn't support their own product issues.)

That said, the real problem is about including examples that will undeniably "break" your board, without any info in neither the source code, nor elsewhere.

pfeerick commented 5 years ago

Ah yes, RPi support... lets not go there... it can be quite confusing at times... making you think it would be much more fun watching paint dry... Not to say it can't be good... but when it isn't... it's not 😮 Does that make sense? 😆

Anyway, lets be frank - nothing is likely to happen here as this repo hasn't been updated in the last two years. But you do have a valid point - Windows USB enumeration is that slow at times that the 5 seconds could be over before the computer even makes a device available for programming so that micronucleus can do it's think... hence a warning note for Windows users should be included... probably indicating that they will need to either become familar with the HVSP process and have a ICP (via an Arduino or actual programmer) to reset the device if it doesn't co-operate, or be able to get a live linux system working to have faster USB enumeration speeds.

Then again, I shouldn't talk... I forked this some three years ago, and haven't made any changes! 😮 Might have to see what needs updating and apply it on my fork.

E3V3A commented 5 years ago

Yep, it seem that this repo has been abandoned. No PR merges for years, with 11 outstanding. Not sure this place serve an other purpose than a /dev/null for bitching and whining! :sob:

The examples may still be useful, but now orphaned.

phamtienmanh commented 5 years ago

sure this place serve an other purpose than a /dev/null for bitching and whining! 😭

The examples may still be useful, but now orphaned.

Hello E33V3A, did u solve the problem I followed this tutorial https://www.electromaker.io/blog/article/programming-ws2812b-leds-with-attiny85-23 , then I cant have my attiny85 as usb bootloader anymore. I guess it cause of using pin number 4, with is USB-. Need some help plz, I am not an arduino man

pfeerick commented 5 years ago

Which of these is your board?

digispark_vs_clone

If it's the ones on the left, then you shouldn't be having the problem unless the a) the board is faulty or b) you're having issues with your computer not detecting the digispark before the bootloader times out. If it's the one on the right, you may be able to reprogram the bootloader as the Chinese are lazy and don't bother setting the proper fuses, but that would require some Arduino knowhow...