2

I have some issues with my Digispark ATtiny85 board. If I upload the blink sketch for example the LED starts blinking and everything looks fine. But as soon as I unplug the Digispark from the USB port and plug it back in nothing happens. I know that the programm starts with a delay of 5 seconds so programming via USB becomes possible, but still nothing. Its seems like the flash-memory (where the programm is stored) of the ATtiny 85 is empty.

Here is the example blink sketch:

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(0, OUTPUT); //LED on Model B
  pinMode(1, OUTPUT); //LED on Model A   
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(0, HIGH);   // turn the LED on (HIGH is the voltage level)
  digitalWrite(1, HIGH);
  delay(1000);               // wait for a second
  digitalWrite(0, LOW);    // turn the LED off by making the voltage LOW
  digitalWrite(1, LOW); 
  delay(1000);               // wait for a second
}

I also tried uploading the sketch from a Laptop running on Windows but without success.

I am using Linux Mint and Arduino IDE 1.8.10.

Since I am new to Microcontrollers, I would be grateful for explainations, tipps or useful links. Thank you!

6
  • How is the eeprom used? Or you're confusing program memory (flash) with eeprom? The programmer selection is for flashing code (or bootloader by next menu item) into it over ISP connection using some programmer.
    – KIIV
    Dec 17 '19 at 11:53
  • 1
    The code is saved in flash, not in EEPROM. The blink sketch does not use the EEPROM. So the actual problem is: You have a running blink sketch, but if you unplug the digispark and again plug it in, the blink sketch isn't running anymore?
    – chrisl
    Dec 17 '19 at 11:57
  • 1
    Or could a floating reset pin be the reason for this behavior? the official digispark has the reset pin disabled, so you get an extra GPIO pin. So it can't be a floating reset pin.
    – Gerben
    Dec 17 '19 at 15:32
  • Okay I confused flash with EEPROM. Thanks for pointing this out, I will change that in the question. @chrisl Yes that's my problem
    – leonardo
    Dec 17 '19 at 16:55
  • 1
    I got the same issue, on two boards. Will probably try to burn the bootloader using usbasp, maybe they burned the wrong one back in china.
    – Lucas
    Feb 7 '20 at 20:06
2

I got the same issue, on two boards. Will probably try to burn the bootloader using usbasp, maybe they burned the wrong one back in china.

EDIT:

As expected flashing the micronucleus bootloader using USBasp solved the problem on both of the boards. I've used burn-o-mat as the arduino was not seeing my programmer.

Just download the firmware from github (I've used this: https://github.com/f4goh/micronucleus/archive/master.zip )

and connect like so (here the guy is using arduino uno, doesn't matter): https://hamprojects.wordpress.com/2018/12/27/digispark-microcontrollers-implementation/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.