8

Not a pure Arduino question really. I'm actually using a standalone ATmega168. So far I've been using AVR-ISP programmer (working from AVR Studio) to program the chip. After everything is done, the chip will be covered and I will only have access to the I2C pins. The MISO,MOSI, etc pins will be unreachable.

I was just wondering if there was a way to use the I2C pins to update the program that is burned on the chip. I won't need to burn the bootloader again, but just to update the program if it needs to be.

asked Sep 9, 2014 at 17:42

2 Answers 2

3

You need to write a I2C bootloader to the AVR. There seems to be a project that has already created such a bootloader.

Atmel has provided a TWI/I2C bootloader for their XMega processors (not the ATmega168).

Next problem is uploading the code via I2C. You'd need some hardware to convert USB to I2C. And some software to talk to this hardware. The last part is probably supported by AVR studio, as Atmel has provided an I2C bootloader. Though I'm not sure both of the above bootloaders are using a compatible protocol over the I2C.

answered Sep 9, 2014 at 19:07
0

Take a look at miniboot. I implemented it as a self-contained bootloader. Instructions about uploading from USB to I2C are also provided. Live long and prosper.

answered Feb 11, 2018 at 8:00
1
  • Elaborate the point. Link only answers die of link rot. Commented Feb 11, 2018 at 8:36

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

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

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.