i have bought the PRO MINI ATMEGA 168P. I have an USBASP Programmer which works great with an PRO MINI 328P. Because of not having the ATMEGA 168P in tools of the Arduino IDE i choose ATMEGA 168 (the same for the ATMEGA 328P i choose the ATMEGA 328 because there is only this choice).
But if i start upload with programmer i got this output:
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: Expected signature for ATmega168 is 1E 94 06
Double check chip, or use -F to override this check.
So i don't know which signature the Atmega gives back to the Arduino IDE but it must be another than 1E 94 06.
I have looked into Boards.txt but didn't found the signature entry (to eventually change it to the right which i for now didn't know).
Does someone have this problem and a solution how to program this ATMEGA 168P?
thx for help
So i don’t know which signature the Atmega gives back to the Arduino IDE but it must be another than 1E 94 06.
Please do this:
- (In the Arduino IDE) File > Preferences
- Uncheck the checkbox next to “Show verbose output during: compilation”
- Check the checkbox next to "Show verbose output during: upload
- Click “OK”
- Sketch > Upload Using Programmer
- After the upload fails, you’ll see a button on the right side of the orange bar “Copy error messages” (or the icon that looks like two pieces of paper at the top right corner of the black console window in the Arduino Web Editor). Click that button.
- In a forum reply here, click on the reply field.
- Click the </> button on the forum toolbar. This will add the forum’s code tags markup to your reply.
- Press “Ctrl + V”. This will paste the upload output between the code tags.
- Move the cursor outside of the code tags before you add any additional text to your reply.
The verbose output will show the signature that is being read from the chip. The board definition for the Pro Mini is for the ATmega168, which has a different signature from the ATmega168P (0x1e 0x94 0x06 vs 0x1e 0x94 0x0b). If that’s the problem, the easy solution is to use MiniCore, which has support for the ATmega168P:
but it’s nice to know exactly which signature is being read, so the verbose output is useful.
Arduino: 1.8.13 (Windows 10), Board: "Arduino Pro or Pro Mini, ATmega168 (5V, 16 MHz)" Der Sketch verwendet 926 Bytes (6%) des Programmspeicherplatzes. Das Maximum sind 14336 Bytes. Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 1015 Bytes für lokale Variablen verbleiben. Das Maximum sind 1024 Bytes. C:\Users\hape_\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/bin/avrdude -CC:\Users\hape_\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega168 -cusbasp -Pusb -Uflash:w:C:\Users\hape_\AppData\Local\Temp\arduino_build_132030/Blink.ino.hex:i avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch System wide configuration file is "C:\Users\hape_\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf" Using Port : usb Using Programmer : usbasp AVR Part : ATmega168 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 512 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 16384 128 128 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : usbasp Description : USBasp, http://www.fischl.de/usbasp/ avrdude: auto set sck period (because given equals null) avrdude: warning: cannot set sck period. please check for usbasp firmware update. avrdude: AVR device initialized and ready to accept instructions Beim Hochladen des Sketches ist ein Fehler aufgetreten Reading | ################################################## | 100% 0.00s avrdude: Device signature = 0x1e940b (probably m168p) avrdude: Expected signature for ATmega168 is 1E 94 06 Double check chip, or use -F to override this check. avrdude done. Thank you. Dieser Bericht wäre detaillierter, wenn die Option "Ausführliche Ausgabe während der Kompilierung" in Datei -> Voreinstellungen aktiviert wäre.
Sorry for the german output but i don't know how to change the Arduino IDE to speak english. The device output seems to be 1e940b so i should know how to change this signature.
So it seems that "If that's the problem, the easy solution is to use MiniCore, which has support for the ATmega168P:" i will try this (but if you think you have a better idea i will be happy to hear that :-).
also thx for the friendly reply.
could upload the program. Things can be so easy. Why is this not in the "normal" Arduino IDE? No one could upload programs to the ATMEGA168P but its such an old device.
Only a question i don't want to blame anybode here.
thx a lot to pert who helps me a lot with this detailed descreption!!!