Setting DigiSpark (&clone) Fuses

I'm going to dig into this a bit, I have to check over my set up a bit before I further trouble anyone. Thanks for the help so far!!

=============

Summary: Can't read/write FUSES (edit: was 'flags') on DigiSpark clone. Command line requires com port and I don't see my device showing up as one.


Howdy everyone!

I finally got back to my Big Arduino Project, which I was hoping to build around an ATtiny85. I got a couple of Digispark clones, and have used them for a variety of small projects successfully,.

For this next project, timing is critical, so I got an external oscillator, and can't figure out how to set the flags.

All the tutorials I've seen on this want me to find the com port that my PC is using to talk to the Digispark. I have no been able to do this!

On both my Win10 and Win7 machines, the Digispark never shows up as a com port. When I installed the drivers, "Digistump LLC (usbuser) Port (08/16/2014 1.1.0.0" fails while "Digistump LLC (usbuser) Port (09/02/2014 5.1.2600.1)" and libusb-win32 DigiUSB (09/02/2014 1.2.6.1) both work.

I'm not really sure how to get this board to show up, and all the fuse reading/setting stuff seems to depend on AVDdude, which seems dead in its tracks without a proper com port?

Is there a way to read (or write) these through the IDE I'm missing, etc?

More info:

When I use "Arduino as ISP", trying to upload or to burn bootloader, I get the same output - stk500_getsync() errors:

Arduino: 1.6.8 (Windows 7), Board: "ATtiny25/45/85, Disabled, CPU, ATtiny85, 1 MHz (internal), B.O.D. Disabled"

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Users\(username)\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.1.2/avrdude.conf -v -pattiny85 -cstk500v1 -PCOM6 -b19200 -e -Uefuse:w:0xFF:m -Uhfuse:w:0xD7:m -Ulfuse:w:0x62:m 

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "C:\Users\(username)\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.1.2/avrdude.conf"

         Using Port                    : COM6
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         Setting bit clk period        : 5.0
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x06
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x18
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x98
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x1e
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x98
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x80
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x66
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x86
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x9e
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x60

avrdude done.  Thank you.

Error while burning bootloader.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

I'd like to get to where I can read the fuses out. Thanks!

If you have used Digispark clones for a variety of small projects successfully, what all of a sudden has changed?

The Digispark shows up in the first few seconds after you plug it in. So you would normally click upload, and wait for the IDE to ask you to plug in the Digispark.

Using ISP programmer with a Digispark is disabled because the RSTDISBL fuse is programmed. You would have to use a high voltage programmer to reset the fuses.

Info about Digisparks including how to HV program them: http://www.instructables.com/id/How-to-unlock-Digispark-ATtiny85-and-convert-it-to/?ALLSTEPS

In any event, the errors he's seeing when trying to program it are because he didn't disable reset on the Arduino running Arduino as ISP after uploading Arduino as ISP. So when it opens the connection to talk to Arduino as ISP, that resets the board, and it instead finds itself talking to the bootloader on the Arduino board, which wants to talk at a different baud rate anyway. Or Arduino as ISP wasn't actually uploaded to it or something.

DMJ:
The issue is I cannot set the flags - I don't know if you caught it above, but I'm trying to set the flags to use an external oscillator.

The two Digisparks I DID try this on no longer function, I can;t seem to upload to them. I thought I was following the instructable you'd mentioned, but they specifically ask for a com port, the point of my question - since I can't get the digispark to mount as a com port, how do I do this? Perhaps they are speaking of the com port of the uno?

Dear Dr,
Perhaps! There was a call for a 10uf cap between reset and gnd on R3 Unos, which I'm using, but as the Uno is also a clone board, perhaps that's what's going on? How can you tell the Uno is resetting?

If I pull the pin powering the the Digispark (VIN - UNPOp8), the process halts until I plug it back in. So the Uno at least is getting SOMETHING from the Attiny?

Two more bits:

  1. The cap preventing reset on the UNO must be working, cause I couldn't program it till I pulled it.
  2. Transistor, etc, seems to be working, I'm getting high voltage on pin for each of the failed attempts shown before.

When I try to run the serial monitor, I get

Error opening serial port 'COM6'. (Port busy)

The behavior is the same across both of my PC's.