Arduino Severino with ATMega328p and prolific usb2serial

Hi there

I just build diy arduino severano (single side) board but replace the RS232 converter section on board with prolific generic usb2serial cable adapter and also using ATMega328p instead of ATMega8 or ATMega168.

Burning bootloader to the chip as Arduino Duemilanove w/ ATMega328 board via usbasp downloader seems successfull, indicated with blinking LED on pin 13 after reset. Then I try to upload “SerialEvent” sketch from Arduino IDE examples.

The problem comes while uploading sketch :

  • Most uploading sketch failed with sync error (i tried several times)
  • Bootloader erased if uploading sketch successfull, indicated with LED on pin 13 stop blinking.

Does anyone have the solution for this?

PS: I’m using Arduino IDE 1.0.4, and the prolific generic usb2serial cable adapter working perfectly when i upload “SerialEvent” sketch via usbasp downloader.

Thanks

Hello, I also realized that card arduino, the problem is just FUSEBIT configuration, there several methods to program but the simplest is to use ICSP interface (6 pins next to the reset button ) with a usbasp programmer found on Ebay.

Flashing described only works on Severino card if you want to flash only the ATmega, it must be 16MHz quartz with two 22pF capacitors as on the severino card

the output of the usbasp is done on a 10-pin ISP Header (NC = not connected)

MOSI 1 o- -o 2 VCC NC 3 o- -o 4 GND RESET 5 o- -o 6 GND SCK 7 o- -o 8 GND MISO 9 o- -o 10 GND

it is connected to the Severino map by ISP Header 6 pin

MISO 1 o- -o 2 VCC SCK 3 o- -o 4 MOSI RESET 5 o- -o 6 GND

Then you have to program the flash the bootloader and FUSESBIT I used 3 ATmega Severino on my card that Work: ATmega8 ATmega168 ATme328

For the ATmega8: Lock bits before programming the flash lock_bits = 0x3F (to allow writing the bootloader) program the Low and High Fuses low_fuses = 0xDF high_fuses = 0xCA flash the bootloader with atmega8.bootloader.file = ATmegaBOOT.hex then program the Lock Bits lock_bits = 0x0F (the bootloader to protect against deletion)

For ATmega168: lock_bits = 0x3F low_fuses = 0xFF high_fuses = 0xDD extended_fuses = 0x00 atmega168.bootloader.file = ATmegaBOOT_168_ng.hex lock_bits = 0x0F

For ATmega328: lock_bits = 0x3F low_fuses = 0xFF high_fuses = 0xDA extended_fuses = 0x05 atmega328.bootloader.file = ATmegaBOOT_168_atmega328.hex lock_bits = 0x0F