I am trying to program an atmega with arduino sketch using ISP only (mac user). So I know how to burn a boot loader, and then to program the chip using the TX, RX. But I would like to program it directly using ISP, without a boot loader. So I am using the UNO as a ISP programmer, and trying without success to program a chip on a PCB:

  1. I upload to the UNO the ArduinoISP sketch
  2. Connect the lines to the target board (target board have atmega328, crystal, capacitors, LED)
  3. Choose the board "Arduino pro or pro mini" in the Arduino IDE.
  4. Choose the programmer- "Arduino as ISP"
  5. At the beginning I tried to upload a boot loader, to see if its going well, it DID boot loaded the chip,so I know the connections are good, and I am set to go.

Now, I am trying to just upload a sketch using the SAME ISP connection, I didn't touch anything(!) , so I opened the blinking example, hit the upload button, and it's just not working (not in sync).

Again, the goal is now to program a chip with ISP directly, without a boot loader. The reason I boot loaded it is to see it's all connected well.

I can't imagine how the exact same configuration can bootload the chip,and later can't upload a sketch directly using the ISP.

What am I missing here? Can't you use the Arduino IDE to upload a sketch directly as an ISP programmer?

  • 1
    Just buy something an like AVR ISP mk2. I think its silly to go tru the hassle of implementing your own ISP when you can buy one for 20€.
    – Golaž
    Jul 8, 2015 at 10:02
  • i have one , and have the same problem!
    – Curnelious
    Jul 8, 2015 at 10:19
  • Try this: forum.arduino.cc/index.php?topic=118089.0
    – Golaž
    Jul 8, 2015 at 10:23
  • 1
    Usually I would recommend using Atmel Studio for development on AVRs because it's so easy to use; but I don't think you can install it for Mac. However I did use the avr-gcc toolchain in command prompt for Linux machines once. Maybe it'll help: instructables.com/id/…
    – Nick Williams
    Jul 8, 2015 at 14:12
  • 2
    Uploading the bootloader probably changed the fuse settings. Try connecting a crystal to the chip. Jul 8, 2015 at 18:23

1 Answer 1


You probably used a direct upload button that uses default Arduino programming using RX TX, not the programmer you had selected.

All wirings are perfect that's why you were able to burn the bootloader.

Now you just need to go under Sketch -> Upload Using Programmer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.