Problem with CH340

I have same chinese version of Arduino Nano with CH340. Everything good with COM port, it see this board, but when I tried to upload some cod on this board, I had some errror messeges.


image

Also I downloaded new drivers for this board

Anything connected to pins 0 and 1?
Have you tried each of the 3 options under tools/processor?
Is this a new board or did it work in the past?
What is the main processor on your board? Check it, it might not be an Atmel chip but a LGT8F328P.

nothing
no
new
image

or when I tried to change processor, upload is infinity. Like all time upload without some changes

Please post a clear photo of the processor on the top. You might have to play a little with "the light" (e.g. tilt camera or board, use flash and/or macro or not).

OK, clearly an Atmel 328P.

Does the L-LED do the usual 1 second on / 1 second off?

When you press and release the reset button, do you get a single quick flash after releasing the reset button or a couple of quick flashes? A single flash indicates old bootloader, a couple indicates the newer (328P) bootloader. Note that I'm not referring to the above 1 second on/off blink.

Please enable verbose output during upload and disable verbose output during compilation in file/preferences in the IDE. Perform an upload and post the complete output here using code tags.

the LED blinks every second.
When I press the reset button, the LED just blinks once at the moment of pressing.

The sketch uses 444 bytes (1%) of the device memory. A total of 30720 bytes are available. Global variables use 9 bytes (0%) of the heap, leaving 2039 bytes for local variables. Maximum: 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xa5
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xa5
Failed uploading: uploading error: exit status 1

You did not enable verbose output during upload :wink: And you did not use code tags as requested.

Based on the single flash, you will have to use the "old bootloader" option under tools/processor.

sorry, I new in Arduino, if you can say how do verbose output during upload, I can do.
When I use old bootloader, next thing happened:

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0xfc

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0xfc
avrdude: stk500_initialize(): (b) protocol error, expect=0x10, resp=0xfc
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

Failed uploading: uploading error: exit status 1

Click on 'File', then select 'Preferences'.

File  Preferences

Then tick 'Show verbose output during uploading'.
Click on 'OK'.

Did you try rebooting the PC after downloading these new drivers?

sure

I did, but same thing happened

Hi @dedus32. I'm going to ask you to provide the full verbose output from an upload attempt.


:exclamation: This procedure is not intended to solve the problem. The purpose is to gather more information.


Please do this:

  1. Select File > Preferences... (or Arduino IDE > Settings... for macOS users) from the Arduino IDE menus.
    The "Preferences" dialog will open.
  2. Uncheck the box next to Show verbose output during: compile in the "Preferences" dialog.
  3. Check the box next to Show verbose output during: ☐ upload.
  4. Click the "OK" button.
    The "Preferences" dialog will close.
  5. Attempt an upload, as you did before.
  6. Wait for the upload to fail.
  7. You will see an "Upload error: ..." notification at the bottom right corner of the Arduino IDE window. Click the "COPY ERROR MESSAGES" button on that notification.
  8. Open a forum reply here by clicking the "Reply" button.
  9. Click the <CODE/> icon on the post composer toolbar.
    This will add the forum's code block markup (```) to your reply to make sure the error messages are correctly formatted.
    Code block icon on toolbar
  10. Press the Ctrl+V keyboard shortcut (Command+V for macOS users).
    This will paste the error output from the upload into the code block.
  11. Move the cursor outside of the code block markup before you add any additional text to your reply.
  12. Click the "Reply" button to post the output.