Closed evyd13 closed 6 years ago
You probably need a newer version of the AVR compiler. If the package manager of your operating system doesn't provide you one, you can install it from here http://www.microchip.com/avr-support/avr-and-arm-toolchains-(c-compilers)
Was this still an issue, @Maartenwut ?
I'll have another go at it tonight.
Still an issue unfortunately, same error. Even updated avr-gcc to 5.4.
What OS is this?
Debian Sid on a virtual machine. Are you able to build successfully?
yeah, it's erroring out for me, as well, same locations. So it's not a compiler error, I think. But rather a config issue.
I think that the 328p isn't supported by the bootloader_jump function properly, and that's why it's having issues.
These errors are occurring because the symbols UDCON
, USBCON
, FRZCLK
and UCSR1B
don't exist in the 328P-specific io.h
(32U4 for comparison). And it is not that surprising - the 328P does not have any inbuilt USB functionality like the 32U4 does, so those registers don't physically exist.
Try changing this line to:
#ifndef __AVR_ATmega328P__
The 32A also does not have USB, so the block is ignored if we're compiling for that chip.
@fauxpark If that works for them, wouldn't it be a good idea to change that line to:
#if !defined(__AVR_ATmega32A__ ) && !defined(__AVR_ATmega328P__)
Assuming my syntax isn't completely wrong
It would, I just didn't recall OTOH exactly how to chain multiple ifndef
s - that looks about right.
Works like a charm! Thanks guys 👍 Who's gonna do a pull request to edit this line?
ooo ooo, you are!
:)
Nah, I'll do it
if anyone finds this, for atmega328p you need to use usbaspoader bootloader
I have a board with an atmega328p which I'm trying to port to QMK, but I'm getting errors when building. You can find my code here: https://github.com/Maartenwut/ydpm40-qmk.
The error I'm getting is: