PlatformIO Community

Attiny13a bricked using PIO Set fuses

Hi,
I lost one of my Attiny13a’s trying to set the fuses. Something inexplicable happened.

This is my platformio.ini

[env:attiny13a]
platform = atmelavr
board = attiny13a
framework = arduino
upload_protocol = atmelice_isp
upload_flags = -e
upload_port = usb
board_build.f_cpu = 8000000L
; Factory default is lfuse 0x6A with clock div 8, and hfuse FF 
board_fuses.hfuse = 0x7A ; Turned off clock div 8
board_fuses.lfuse = 0xFF

I lost the terminal output unfortunately, but it said something along the lines of “Writing to lfuse… reading back… 0xFA is different from 0x7A”.
I dont get it, why the hell did the chip fuse end up with the 0xFA value? i.e. with its SPI programming disabled??
The PIO Set fuse process never returned too. I had to type ctrl+c to kill the terminal process.

Anyone knows if disabling SPIEN from the lfuse is a safety procedure from atmel in case of something going wrong? If so, what could I have done wrong?? I have been using my atmel ICE to program them since forever!

Thank you!

edit:
Just seen this too, might explain the problem?

******************************************************************************************************************************
Obsolete PIO Core v6.1.5 is used (previous was 6.1.6a3)
Please remove multiple PIO Cores from a system:
https://docs.platformio.org/en/latest/core/installation/troubleshooting.html
******************************************************************************************************************************

According to the datasheet I have for the tiny13

Screenshot from 2022-11-21 19-17-33

If you read the fuse byte, it will read 1 for the reserved bits… 7A sets bits 4, 5, 6, in the upper nibble bits 5 through 7 are reserved and will always read 1… from my memory of the tiny85…

“Fuse and Lock bits that are programmed, will be read as zero. Fuse and Lock bits that
are unprogrammed, will be read as one.”

Make sense?

:smiley_cat: