[SOLVED] "wrong microcontroller found." error

i tried to upload a sketch to my new clone nano (atmega 168 ch340g) via a usbasp programmer. when i first got this nano, i tried to upload an example blink sketch (with the same programmer) and worked. can anyone tell me how to fix this?

this is the full error message

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.
Wrong microcontroller found.  Did you select the right board from the Tools > Board menu?

Wiring. It's always wiring.

Unless you changed the fuses. Then it's the fuses. It's always the fuses.

i dont think it's the wiring or the fuses. the arduino is still new, i dont think it's damaged.

Newness and lack of damage are irrelevant.

Tools -> Preferences, "show verbose output during", check "upload"

Attempt to upload again. What signature is it seeing instead of 1E 94 06?

000000 means a wiring problem (or fuses set to use external crystal but none present - but this seems unlikely on a new nano).

does it work with a usbasp or do i need a usb cable for this?

You can use the USBasp. You just need to use Sketch > Upload Using Programmer to do the upload.

the device signature is 0x1e940b

It looks like the silly Chinese sent you a Nano with an ATmega168P instead of the usual ATmega168 (actually an upgrade). The ATmega168P is supported by MiniCore:

As a bonus, this will allow you to use the full 16 kB of program memory on the Nano for your sketch, rather than wasting 2 kB for a boot section you're not even using (since you're uploading with the USBasp).

FINALLY worked. thanks @pert for the help!

You're welcome. I'm glad to hear it's working now. Enjoy!
Per