Hi, I was checking datasheet for Atmega128, not for Atmega128rfa1. I taught that they are same - obviously not. Sorry for confusion. So I think only way is checking sources of avrdude (maybe chip description have wrong mask.... ). Martin On 29 Mar 2016 23:24, "Armin Oonk" <ar...@berkelaarmrt.com> wrote:
> Hi, > > yes I also have this idea about a wrong bit mask. But I am not an avrdude > developer, so I thought I ask here first. > > I have tested it a bit more today and with atmel studio it all seems fine. > > The value 0xF6 for the extended fuse bit is not a correct value if I look > at the datasheet for the atmega128rfa1. > > Bit 3 is reserved and has as description "Do not modify" with a default > value of 1. With 0xF6 this is set to zero. > > Not sure if the mail list supports image but here is a screenshot of the > extended fuse bits for the atmega128rfa1 > > > Kind regards, > Armin > > Op 29-Mar-16 om 15:41 schreef Martin Stejskal: > > Hi, > I've an idea. Maybe wrong, but I have one :) Since only 2 LSB are actually > used as extended fuses, I guess programmer or avrdude can ignore "unused > bits" (like using some mask). Point is, that there may be bug in programmer > FW or AVR chip description (which avdrude use), so one bit can be > interpreted bad. > But if you check your fuse values with register, I think you does not have > problem (2 LSB are same in both cases). > Or maybe you set unsupported baudrate (on some USB <--> UART convertors it > can be problem). > Regards > Martin > On 29 Mar 2016 17:40, "Armin Oonk" <ar...@berkelaarmrt.com> wrote: > >> Hi, >> >> I have a small programming setup for a custom pcb. I use a raspberry pi >> with avrdude (6.1) to program a atmega128rfa1. I am currently using a >> AVRISP mkii but because it is unavailable I am looking into using the >> Atmel-ICE programmer. >> >> I have some funny behavior with the Atmel-ICE programmer. When I try to >> burn the fuses I get a verification error of the efuse >> Command: >> avrdude -p m128rfa1 -c atmelice_isp -P usb -B 32 -U lfuse:w:0xf7:m -U >> hfuse:w:0xd1:m -U efuse:w:0xfe:m >> >> Output (only the error part): >> avrdude: verification error, first mismatch at byte 0x0000 0xf6 != 0xfe >> avrdude: verification error; content mismatch >> >> When I use the old and trusted AVRISP mkii everything works >> Command: >> avrdude -p m128rfa1 -c stk500v2 -P usb -B 32 -U lfuse:w:0xf7:m -U >> hfuse:w:0xd1:m -U efuse:w:0xfe:m >> >> Output: >> avrdude: 1 bytes of efuse verified >> >> >> Does anybody have a idea why it get an error with the atmel-ICE >> programmer? >> >> >> Full command output: >> >> sudo avrdude -p m128rfa1 -c atmelice_isp -P usb -B 16 -U lfuse:w:0xf7:m >> -U hfuse:w:0xd1:m -U efuse:w:0xfe:m >> >> avrdude: AVR device initialized and ready to accept instructions >> >> Reading | ################################################## | 100% 0.01s >> >> avrdude: Device signature = 0x1ea701 >> avrdude: reading input file "0xf7" >> avrdude: writing lfuse (1 bytes): >> >> Writing | ################################################## | 100% 0.09s >> >> avrdude: 1 bytes of lfuse written >> avrdude: verifying lfuse memory against 0xf7: >> avrdude: load data lfuse data from input file 0xf7: >> avrdude: input file 0xf7 contains 1 bytes >> avrdude: reading on-chip lfuse data: >> >> Reading | ################################################## | 100% 0.00s >> >> avrdude: verifying ... >> avrdude: 1 bytes of lfuse verified >> avrdude: reading input file "0xd1" >> avrdude: writing hfuse (1 bytes): >> >> Writing | ################################################## | 100% 0.09s >> >> avrdude: 1 bytes of hfuse written >> avrdude: verifying hfuse memory against 0xd1: >> avrdude: load data hfuse data from input file 0xd1: >> avrdude: input file 0xd1 contains 1 bytes >> avrdude: reading on-chip hfuse data: >> >> Reading | ################################################## | 100% 0.00s >> >> avrdude: verifying ... >> avrdude: 1 bytes of hfuse verified >> avrdude: reading input file "0xfe" >> avrdude: writing efuse (1 bytes): >> >> Writing | ################################################## | 100% 0.09s >> >> avrdude: 1 bytes of efuse written >> avrdude: verifying efuse memory against 0xfe: >> avrdude: load data efuse data from input file 0xfe: >> avrdude: input file 0xfe contains 1 bytes >> avrdude: reading on-chip efuse data: >> >> Reading | ################################################## | 100% 0.00s >> >> avrdude: verifying ... >> avrdude: verification error, first mismatch at byte 0x0000 >> 0xf6 != 0xfe >> avrdude: verification error; content mismatch >> >> avrdude: safemode: efuse changed! Was fe, and is now f6 >> Would you like this fuse to be changed back? [y/n] n >> avrdude: safemode: Fuses OK (E:FE, H:D1, L:F7) >> >> avrdude done. Thank you. >> >> >> -- >> >> Armin Oonk, MSc >> >> *Berkelaar Meet- en RegelTechniek* >> *Mijnbouwstraat 120* >> *2628 RX Delft* >> *The Netherlands* >> >> *T* +31(0)6 14 65 84 39 >> *E* ar...@berkelaarmrt.com >> *BTW* NL1677.88.395.B01 / *KvK* 27299619 >> [image: logo[1]] <http://www.berkelaarmrt.com> >> >> >> _______________________________________________ >> AVR-chat mailing list >> AVR-chat@nongnu.org >> https://lists.nongnu.org/mailman/listinfo/avr-chat >> >> > -- > > Armin Oonk, MSc > > *Berkelaar Meet- en RegelTechniek* > *Mijnbouwstraat 120* > *2628 RX Delft* > *The Netherlands* > > *T* +31(0)6 14 65 84 39 > *E* ar...@berkelaarmrt.com > *BTW* NL1677.88.395.B01 / *KvK* 27299619 > [image: logo[1]] <http://www.berkelaarmrt.com> > > > _______________________________________________ > AVR-chat mailing list > AVR-chat@nongnu.org > https://lists.nongnu.org/mailman/listinfo/avr-chat > >
_______________________________________________ AVR-chat mailing list AVR-chat@nongnu.org https://lists.nongnu.org/mailman/listinfo/avr-chat