ATMega1284P @ 20MHz bootloader?

Hello --

I got up and going with a 1284P @ 16MHz on a breadboard very recently. Successfully.

However, I am thinking I may want to go up to 20MHz, in order to keep up with some expanded abilities I am designing into a little robot. From browsing this forum, my impression is that a canned bootloader is not available, or that creating one is not as simple as just creating a new entry in the boards.txt file, a la the 16MHz Optiboot bootloader.

Is my thinking on this about right? There are vendors that have 1284P@20MHz robot controllers, but are a bit pricey. I seem to learn better if I can build something myself.

Thank you, Mark

You ca build it yourself. Optiboot is available just make your version. In this thread http://forum.arduino.cc/index.php?topic=300377.0 see reponse #21. You need not any changes except of frequency specifying or other parameters in make command eventually. AVR tools have to be accessible from the folder where the optiboot is on your comp and run make command.

Budvar --

Thank you for your reply.

My level of experience is thus far restricted to working in the Arduino IDE. However, I can read and try to digest what is discussed in the link you posted. I found that you made available for download your variant on the 324, so I grabbed it. Can I make use of that as a sort of template? I see that the 324 is in the same family of ATMegas as the 1284P-PU I have, and the pins are mapped the same.

Posting earlier, I continued browsing the forums and found a .hex titled "optiboot-1284P-20MHz.hex", uploaded by retrolefty about a year ago, bottom of page, in this post. Other than looking at it in a text editor (it looks hexy), that's about the level of my understanding in this.

Was AVR tools and the means to run a make command as you describe contained within the Aruino IDE software I installed? I see there is a folder labeled avr in c:...\Arduino\harware\tools...

OK, less typing, more reading. Budvar, might you be willing to take a look at retrolefty's hex file and let me know if that is something I should be interested in?

Sincerely, Mark

Can I make use of that as a sort of template? I see that the 324 is in the same family of ATMegas as the 1284P-PU I have, and the pins are mapped the same.

No, it's different.

Posting earlier, I continued browsing the forums and found a .hex titled "optiboot-1284P-20MHz.hex", uploaded by retrolefty about a year ago, bottom of page, in this post. Other than looking at it in a text editor (it looks hexy), that's about the level of my understanding in this.

This should work except of LED if you haven't it on the same port...

Was AVR tools and the means to run a make command as you describe contained within the Aruino IDE software I installed? I see there is a folder labeled avr in c:...\Arduino\harware\tools...

Yes. Add it to the PATH as needed.

Budvar --

So, I found a program on my laptop called WinAVR-20100110. Seriously. Maybe I was feeling a little adventurous some time back. I opened 'MFile[AVR], a window opened, alt+M for Makefile -> MCU type -> 1284P, and the window re-populated with author info, instructions, an then "#MCU name" and "MCU = atmega1284p", followed by ... well, you are probably familiar with this.

Oh, I am getting excited here.

So, am I headed down the right road? There seems to be good documentation that came with this program, and can probably take it from here.

But, will I require any additional hardware to program the chip? I feel comfortable burning bootloaders by the method described at Nick Gammon's infotorial weblog. AtTinys, 328p, and this 1284p, I've done that with an Arduino UNO. I have an FTDI breakout board. Possible with these tools alone?

Budvar, thank you so much for assisting me.

Mark

In the Arduino folder …\tools\avr\bin there is make.exe and other tools. You need these tools to be accessible from the optiboot folder. Add its path to PATH system variable if it is not added yet. (We are discussing Windows).
You need not do any changes in makefile. Just go to CMD, set it to the optiboot folder and write the command:

make OS=Windows ENV=Arduino ATmega1284p AVR_FREQ=20000000 UART=your_uart LED=your_led BAUD_RATE=upload_speed

You have to specify params behind AVR_FREQ if needed, otherwise can be omitted. UART=0 by default and can be omitted if not 1, LED you have to specify pin on ATmega according your setup (LED=B7 e.g. it is mine http://forum.arduino.cc/index.php?topic=277260.0) and baud rate if differs from 115200.

You need not any additional HW except which you have. Just use same method as usually and that’s it. If you was able to burn bootloader once it must work next time also. You are familiar with bootloading then.