0

I have a Digispark / digistump Attiny85. Working with Windows 11 and the Arduino IDE 2.0.4 I would like this guy to have Brown Out Detection set to 101 (2.7V)

For this, I'd need to set the BOD fuses.

How can I do this with the USB interface of the Arduino IDE? To use the USB programming, I have to set the Board to "Digispark (Default 16.5Mhz)".

I have seen that in normal ATTiny85 operation, under the Tools-Menu I could choose the fuses I like. In the Digispark Default setting this is not available.

5
  • Which version of the IDE are you using, on what operating system? Mar 14 at 13:41
  • Windows 11, IDE 2.0.4
    – Anderas
    Mar 14 at 20:59
  • 1
    To answer this well someone would need to to know which exact thing called "digispark" you have. The official one and various clones do different things with the reset pin and its configuration. It may also matter whether or not it is a "Pro" variant.
    – timemage
    Mar 15 at 19:19
  • 1
    You can't change the fuses without using an ISP programmer (an Arduino or even another digispark can be configured as such). However, if the reset pin of the ATtiny85 has been disabled, you will first need a high voltage programmer to reset the ATtiny85 to its factory condition. See: digistump.com/wiki/digispark/tutorials/programming . With the ISP programmer connected, you can use AVRDUDE also to set the fuses. The last post here digistump.com/board/index.php/topic,2257.msg10556.html#msg10556 implies that 2.7v brown out is anyway already enabled.
    – 6v6gt
    Mar 16 at 6:19
  • Thank you very much!
    – Anderas
    Mar 18 at 11:28

1 Answer 1

3
+50

The first thing to say (already mentionened by @timemage) is that there is a large variety of "Digispark / Digistump" devices, both original, clones using the Micronucleus bootloader, even when considering only the ATTiny85 variants. Those variants, where the reset pin has not been re-configured as a GPIO pin, are easier to use. Otherwise, you firstly need a high voltage programmer to reset the ATTiny85 to its factory state, to restore the reset pin for configuring fuses etc.

The second thing is that the last post here: digistump.com/board/index.php/topic,2257.msg10556.html#msg10556 implies that 2.7v brown out, which you appear to need, is anyway already enabled (at least with the variant described by the author) That is, the fuse settings are: lfuse 0xE1 hfuse 0x5D efuse 0xFE.

Anyway, to change the fuses (or load the "Digispark / Digistump" (Micronucleus) bootloader) you need an ISP programmer (an Arduino or even another digispark can be configured as such). See: digistump.com/wiki/digispark/tutorials/programming. With the ISP programmer connected, you can then use AVRDUDE also to set the fuses.

In the worst case, you have to start with a factory condition ATtiny85 and go through the entire process of loading the "Digispark / Digistump" firmware onto it and configuring the appropriate fuse settings. See https://circuitdigest.com/microcontroller-projects/attiny85-ic-programming-through-usb-using-digispark-bootloader

2
  • Basically you're saying I should use ISP instead of using the advantage of the Digistump USB driver. Thanks, that's an answer!
    – Anderas
    Mar 18 at 11:26
  • 1
    Yes, but only for the one-time operation of configuring the fuses. Once that is done, you can revert to the USB method for uploading code.
    – 6v6gt
    Mar 18 at 14:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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