Coder Social home page Coder Social logo

mcudude / minicore Goto Github PK

View Code? Open in Web Editor NEW
970.0 61.0 240.0 17.02 MB

Arduino hardware package for ATmega8, ATmega48, ATmega88, ATmega168, ATmega328 and ATmega328PB

License: Other

C 34.55% Makefile 6.00% C++ 35.45% Batchfile 0.01% Shell 23.35% Assembly 0.64%
arduino avr atmel microcontroller atmega168 atmega88 atmega48 atmega8 atmega328 atmega328pb

minicore's People

Contributors

asukiaaa avatar bigjosh avatar cvasqxz avatar dewhisna avatar faithhunja avatar hayden-t avatar jetstreamc avatar kevinlutzer avatar mcudude avatar mistepien avatar nhatuan87 avatar per1234 avatar pfeerick avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

minicore's Issues

Voltage readings not correct?

Hi there,

I'm trying to make a barebone ATmega328 voltage meter, but the reading are not correct.

Using a voltage divider resistors 100k and 10k, power supply is 4.96v and I got this readings:

4.59
4.64
4.59
4.64

Tried all variations of settings, 16MHz external, internal, 8MHz external, internal, burned the bootloader too.

Also pins VCC and AVCC has 100nF capacitors placed close to pins.

But, if I upload the same code to the Arduino UNO board, it's showing me the exact source voltage readings from it:

4.96
4.96
4.96
4.96

and my code for voltage readings is:

#define V0_IN_PIN A0
#define V_REF_INT 5.0
int vIn = 0.00;
float vOut = 0.00;
float vResult = 0.00;
float R1 = 99700.0; //100000.0; // resistance of R1 (100K)
float R2 = 9930.0; //10000.0; // resistance of R2 (10K)

void setup()
{
  Serial.begin(9600);
  delay(1);
  pinMode(V0_IN_PIN, INPUT);
  Serial.println(F("Starting..."));
  delay(1000);
}

void loop()
{
  Serial.println(ReadVoltage(V0_IN_PIN));
  delay(500);
}

float ReadVoltage(int aInpX) {
  vIn = analogRead(aInpX);
  vOut = (vIn * V_REF_INT) / 1023.0;
  vResult = vOut / (R2 / (R1 + R2));
  if (vResult <= 0.09) {
    vResult = 0.0; // Statement to quash undesired reading! 0.09v (Error correction)
  }
  return vResult;
}

Can you tell me what I'm doing wrong? Or any help, please? ๐Ÿ˜ž

Kind regards,
Viktor

Can't upload to ATmega328PB

I'm using the following setup:

Arduino IDE V1.8.5
Arduino AVR Boards (board manager) v1.6.207
MiniCore v2.0.1

Using AVR pocket programmer from SparkFun

to program a ATmega328PB mounted on a ATmega328PB Xplained development board

Compiling code in Arduino IDE works fine.

When I go to "burn bootloader", I get the following message:

Arduino: 1.8.5 (Windows 10), Board: "ATmega328, No, 328PB, 2.7v, Disabled (default), 8 MHz internal"

C:\Users\Boompy\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino14/bin/avrdude -CC:\Users\Boompy\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.1/avrdude.conf -v -patmega328pb -cusbtiny -e -Ulock:w:0x3f:m -Uefuse:w:0xfd:m -Uhfuse:w:0xd7:m -Ulfuse:w:0xe2:m 

avrdude: Version 6.3-20171130
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Users\Boompy\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.1/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : usbtiny
avrdude: usbdev_open(): Found USBtinyISP, bus:device: bus-0:\\.\libusb0-0001--0x1781-0x0c9f
         AVR Part                      : ATmega328PB
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : USBtiny
         Description     : USBtiny simple USB programmer, http://www.ladyada.net/make/usbtinyisp/
avrdude: programmer operation not supported

avrdude: Using SCK period of 10 usec
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000 (retrying)

Error while burning bootloader.
Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

If I open a terminal and type avrdude -c usbtiny -p m328p

I get the following:

C:\Users\Boompy>avrdude -c usbtiny -p m328p

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e9516
avrdude: Expected signature for ATMEGA328P is 1E 95 0F
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.

What am I doing wrong? How can I use this setup to successfully work with the ATmega328PB?

i2c blocks indefinitely if SDA line is shorted to ground on ATmega328

I'm using the Wire library on my ATmega328 (board version 328) as a master. Configuration is shown in following picture:

image

I accidentally had the SDA line shorted to ground. The ensuing behaviour of the ATmega328 seems strange, and I think it may be a bug. Not sure if its a bug from the MiniCore project or from the Arduino Wire library in general.

Basically what happens in this case is that the ATmega328 just keeps sending clock pulses out indefinitely.

screenshot

The expected behaviour should be that the ATmega328 sees the SDA line is low when it goes to use the i2c bus as a master, and concludes that another master has control of the line and returns immediately with an error code 4 - other error

It seems that there is no "bus is busy" error described in the Arduino Wire.endTransmission() return codes defined here https://www.arduino.cc/en/Reference/WireEndTransmission

This makes me think that the Arduino Wire library is not compatible with the i2c hardware spec, which says that any master attempting to take control of the bus should check to make sure that the bus is not already busy, as described here: https://www.i2c-bus.org/multimaster/

Optiboot bootloader not responding

Hello,

I'm trying to write an app that will turn an Arduino into a stand-alone STK500 programmer that will flash decode a .hex file stored on a connected SD card, and then flash that hex file to a ATmega328PB that is connected to the Arduino via UART using STK500 protocol (communicating directly with Optiboot bootloader). See below image:

image

Here are the steps I am following:

  1. Connect USBTiny ISP to my PC and to my ATmega328PB board via ISP header
  2. Select "burn bootloader" command from within Arduino IDE: Tools-> Burn Bootloader
  3. Verify bootloader was successfully flashed to ATmega328PB using the status window in Arduino IDE
  4. Disconnect ISP header from my ATmega328PB board
  5. Connect my Particle Electron to the ATmega328PB board (only signals are UART_TX, UART_RX... and common ground)
  6. Run app on Particle Electron that resets the ATmega328PB using an external watchdog-based reset circuit connected to UART_TX signal (hold UART_TX low for >0.8seconds will pull ATmega328PB reset line LOW), and then immediately attempts to read the signature bytes from the ATmega328PB using the STK500 READ_SIGN command (sends 0x75, 0x20 bytes --> STK_READ_SIGN, CRC_EOP)

Nothing happens (I get no response from the ATmega328PB).

Here is a logic analyzer connected to UART signals as well as the reset signal of the ATmega328PB.

Am I doing something wrong?

image
image

Here is the same process I just described, except instead of sending STK500_READ_SIGN immediately, there is a 200 ms delay inserted to allow the ATmega some breathing room after reset:

image
image

As you can see, there is no difference.

One strange thing that I note however is that the TX line of the ATmega (i.e. HOST_RX signal in logic analyzer screenshots) gets pulled low for about 2.5ยตs before the ATmega RST line gets released. This phenomenon is present no matter how long I hold the ATmega reset line LOW... it always appears about 10-15 ยตs before the reset line gets released.... like it knows that its about to be released or something...

4MHz external oscilator - OneWire problem

Hello.
I want to use ATmega328P with a super capacitor (voltage range 1.8V - 4.7V). I know that internal oscillator can be a bit unstable, so I want to use external one (4MHz due to min voltage).

I've fixed makeall file, added:

make atmega328p AVR_FREQ=4000000L BAUD_RATE=9600 LED=B5 LED_START_FLASHES=2 
make atmega328 AVR_FREQ=4000000L BAUD_RATE=9600 LED=B5 LED_START_FLASHES=2

And added 4MHz option to menu.
Then all bootloaders were rebuilt, 4MHz bootloaders were copied do the appropriate directory.

As a result I'm able to burn new 4MHz bootloader and it works, except OneWire communication (i2c - ok).
To test OneWire I've used DS18B20 and oneWireSearch sketch from DallasTemperature library.

Maybe I've missed something that have to be changed?
Thank you.

7.372800 and 14.745600 MHz clock

Will there be available bootloaders for quartzes of 7.372800 and 14.745600 MHz?
This would be a great help to reduce communication errors.
Thank you for your answer.
(sorry for my bad English knowledge)

Watchdog

Watchdog not work!
Atmega328p. If Watchdog is triggered then the microcontroller restarts and freeze (or enters the reboot cycle?!). It does not depend whether there is a bootloader or not.

#include <avr/wdt.h>

void setup() {
wdt_reset();
wdt_enable(WDTO_8S);
wdt_reset();
//my prog
}
void loop() {
wdt_reset();
//my prog
}

Without Watchdog, everything works fine!

Consider Travis CI testing for MiniCore?

MiniCore is slowly getting more and more popular, and with the recent changes with MCUdude_corefiles, I think adding Travis CI to MiniCore should be considered?

Would you like to help me out with this one too @per1234 ? ๐Ÿ™‚

memset seems to not work?

Hi there,

I'm trying a char cleaning like in standard Arduino environment on the ATmega8, but I got error saying:

invalid conversion from 'char' to 'void*' [-fpermissive]

Code follows:

char pKey;
memset(pKey, 0, sizeof(pKey));

Any suggestions?

Regards

Enhancement request: Add option to not use bootloader

I often field inquiries into using an Atmega microcontroller with the Arduino IDE without using an ISP programmer. I would like to suggest a menu option to choose whether a bootloader is to be used. This would eliminate the issues around the BOOTRST fuse and allow use of the full flash space for user application. It would be great to be able to point these people to your core instead of having to instruct them how to modify boards.txt, and would make MiniCore appropriate for a production environment where a serial bootloader may not be appropriate

Cannot compile bootloader

The documentation says:
"You need to install make, avr-libc, avr-binutils and avr-gcc"

I have
avr-libc (2.0.0)
binutils-avr (2.26)
gcc-avr (5.4.0)

When executing:
/usr/bin/avr-gcc -g -Wall -Os -fno-split-wide-types -mrelax -mmcu=atmega328pb -DF_CPU=16000000L -DBAUD_RATE=115200 -DLED_START_FLASHES=2 -DLED=B5 -DUART=0 -c -o optiboot_flash.o optiboot_flash.c

I get numerous errors... (see below)
but when I select mmcu=atmega328p then the compilation works...

In file included from optiboot_flash.c:250:0:
/usr/lib/avr/include/avr/io.h:623:6: warning: #warning "device type not defined" [-Wcpp]

warning "device type not defined"

  ^

In file included from optiboot_flash.c:252:0:
/usr/lib/avr/include/avr/eeprom.h:41:3: warning: #warning "Device does not have EEPROM available." [-Wcpp]

warning "Device does not have EEPROM available."

^
In file included from optiboot_flash.c:259:0:
boot.h:127:4: error: #error AVR processor does not provide bootloader support!

error AVR processor does not provide bootloader support!

^

boot.h:138:4: error: #error Cannot find SPM Enable bit definition!

error Cannot find SPM Enable bit definition!

^

optiboot_flash.c:311:2: warning: #warning BAUD_RATE error greater than 2% [-Wcpp]
#warning BAUD_RATE error greater than 2%
^
optiboot_flash.c: In function โ€˜mainโ€™:
optiboot_flash.c:506:8: error: โ€˜MCUSRโ€™ undeclared (first use in this function)
ch = MCUSR;
^
optiboot_flash.c:506:8: note: each undeclared identifier is reported only once for each function it appears in
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:521:20: error: โ€˜WDRFโ€™ undeclared (first use in this function)
if ((ch & (_BV(WDRF) | _BV(EXTRF))) != _BV(EXTRF)) {
^
optiboot_flash.c:521:32: error: โ€˜EXTRFโ€™ undeclared (first use in this function)
if ((ch & (_BV(WDRF) | _BV(EXTRF))) != _BV(EXTRF)) {
^
optiboot_flash.c:545:3: error: โ€˜TCCR1Bโ€™ undeclared (first use in this function)
TCCR1B = _BV(CS12) | _BV(CS10); // div 1024
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:545:16: error: โ€˜CS12โ€™ undeclared (first use in this function)
TCCR1B = _BV(CS12) | _BV(CS10); // div 1024
^
optiboot_flash.c:545:28: error: โ€˜CS10โ€™ undeclared (first use in this function)
TCCR1B = _BV(CS12) | _BV(CS10); // div 1024
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:231:18: error: โ€˜UCSR0Aโ€™ undeclared (first use in this function)
#define UART_SRA UCSR0A
^
optiboot_flash.c:557:3: note: in expansion of macro โ€˜UART_SRAโ€™
UART_SRA = _BV(U2X0); //Double speed mode USART0
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:557:18: error: โ€˜U2X0โ€™ undeclared (first use in this function)
UART_SRA = _BV(U2X0); //Double speed mode USART0
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:232:18: error: โ€˜UCSR0Bโ€™ undeclared (first use in this function)
#define UART_SRB UCSR0B
^
optiboot_flash.c:558:3: note: in expansion of macro โ€˜UART_SRBโ€™
UART_SRB = _BV(RXEN0) | _BV(TXEN0);
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:558:18: error: โ€˜RXEN0โ€™ undeclared (first use in this function)
UART_SRB = _BV(RXEN0) | _BV(TXEN0);
^
optiboot_flash.c:558:31: error: โ€˜TXEN0โ€™ undeclared (first use in this function)
UART_SRB = _BV(RXEN0) | _BV(TXEN0);
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:233:18: error: โ€˜UCSR0Cโ€™ undeclared (first use in this function)
#define UART_SRC UCSR0C
^
optiboot_flash.c:559:3: note: in expansion of macro โ€˜UART_SRCโ€™
UART_SRC = _BV(UCSZ00) | _BV(UCSZ01);
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:559:18: error: โ€˜UCSZ00โ€™ undeclared (first use in this function)
UART_SRC = _BV(UCSZ00) | _BV(UCSZ01);
^
optiboot_flash.c:559:32: error: โ€˜UCSZ01โ€™ undeclared (first use in this function)
UART_SRC = _BV(UCSZ00) | _BV(UCSZ01);
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:234:18: error: โ€˜UBRR0Lโ€™ undeclared (first use in this function)
#define UART_SRL UBRR0L
^
optiboot_flash.c:560:3: note: in expansion of macro โ€˜UART_SRLโ€™
UART_SRL = (uint8_t)( (F_CPU + BAUD_RATE * 4L) / (BAUD_RATE * 8L) - 1 );
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:332:30: error: โ€˜WDP2โ€™ undeclared (first use in this function)
#define WATCHDOG_1S (_BV(WDP2) | _BV(WDP1) | _BV(WDE))
^
optiboot_flash.c:565:18: note: in expansion of macro โ€˜WATCHDOG_1Sโ€™
watchdogConfig(WATCHDOG_1S);
^
optiboot_flash.c:332:42: error: โ€˜WDP1โ€™ undeclared (first use in this function)
#define WATCHDOG_1S (_BV(WDP2) | _BV(WDP1) | _BV(WDE))
^
optiboot_flash.c:565:18: note: in expansion of macro โ€˜WATCHDOG_1Sโ€™
watchdogConfig(WATCHDOG_1S);
^
optiboot_flash.c:332:54: error: โ€˜WDEโ€™ undeclared (first use in this function)
#define WATCHDOG_1S (_BV(WDP2) | _BV(WDP1) | _BV(WDE))
^
optiboot_flash.c:565:18: note: in expansion of macro โ€˜WATCHDOG_1Sโ€™
watchdogConfig(WATCHDOG_1S);
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:406:21: error: โ€˜DDRBโ€™ undeclared (first use in this function)
#define LED_DDR DDRB
^
optiboot_flash.c:569:3: note: in expansion of macro โ€˜LED_DDRโ€™
LED_DDR |= _BV(LED);
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
pin_defs.h:409:17: error: โ€˜PINB5โ€™ undeclared (first use in this function)
#define LED PINB5
^
optiboot_flash.c:569:18: note: in expansion of macro โ€˜LEDโ€™
LED_DDR |= _BV(LED);
^
optiboot_flash.c:748:13: error: โ€˜SIGNATURE_0โ€™ undeclared (first use in this function)
putch(SIGNATURE_0);
^
optiboot_flash.c:749:13: error: โ€˜SIGNATURE_1โ€™ undeclared (first use in this function)
putch(SIGNATURE_1);
^
optiboot_flash.c:750:13: error: โ€˜SIGNATURE_2โ€™ undeclared (first use in this function)
putch(SIGNATURE_2);
^
In file included from optiboot_flash.c:269:0:
optiboot_flash.c: In function โ€˜putchโ€™:
pin_defs.h:231:18: error: โ€˜UCSR0Aโ€™ undeclared (first use in this function)
#define UART_SRA UCSR0A
^
optiboot_flash.c:767:12: note: in expansion of macro โ€˜UART_SRAโ€™
while (!(UART_SRA & _BV(UDRE0)));
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:767:27: error: โ€˜UDRE0โ€™ undeclared (first use in this function)
while (!(UART_SRA & _BV(UDRE0)));
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:235:18: error: โ€˜UDR0โ€™ undeclared (first use in this function)
#define UART_UDR UDR0
^
optiboot_flash.c:768:3: note: in expansion of macro โ€˜UART_UDRโ€™
UART_UDR = ch;
^
optiboot_flash.c: In function โ€˜getchโ€™:
pin_defs.h:231:18: error: โ€˜UCSR0Aโ€™ undeclared (first use in this function)
#define UART_SRA UCSR0A
^
optiboot_flash.c:834:11: note: in expansion of macro โ€˜UART_SRAโ€™
while(!(UART_SRA & _BV(RXC0)))
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:834:26: error: โ€˜RXC0โ€™ undeclared (first use in this function)
while(!(UART_SRA & _BV(RXC0)))
^
optiboot_flash.c:836:24: error: โ€˜FE0โ€™ undeclared (first use in this function)
if (!(UART_SRA & _BV(FE0))) {
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:235:18: error: โ€˜UDR0โ€™ undeclared (first use in this function)
#define UART_UDR UDR0
^
optiboot_flash.c:848:8: note: in expansion of macro โ€˜UART_UDRโ€™
ch = UART_UDR;
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c: In function โ€˜verifySpaceโ€™:
optiboot_flash.c:326:30: error: โ€˜WDEโ€™ undeclared (first use in this function)
#define WATCHDOG_16MS (_BV(WDE))
^
optiboot_flash.c:890:20: note: in expansion of macro โ€˜WATCHDOG_16MSโ€™
watchdogConfig(WATCHDOG_16MS); // shorten WD timeout
^
optiboot_flash.c: In function โ€˜flash_ledโ€™:
optiboot_flash.c:900:5: error: โ€˜TCNT1โ€™ undeclared (first use in this function)
TCNT1 = -(F_CPU/(102416));
^
optiboot_flash.c:901:5: error: โ€˜TIFR1โ€™ undeclared (first use in this function)
TIFR1 = _BV(TOV1);
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:901:17: error: โ€˜TOV1โ€™ undeclared (first use in this function)
TIFR1 = _BV(TOV1);
^
In file included from optiboot_flash.c:269:0:
pin_defs.h:408:21: error: โ€˜PINBโ€™ undeclared (first use in this function)
#define LED_PIN PINB
^
optiboot_flash.c:908:5: note: in expansion of macro โ€˜LED_PINโ€™
LED_PIN |= _BV(LED);
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
pin_defs.h:409:17: error: โ€˜PINB5โ€™ undeclared (first use in this function)
#define LED PINB5
^
optiboot_flash.c:908:20: note: in expansion of macro โ€˜LEDโ€™
LED_PIN |= _BV(LED);
^
optiboot_flash.c: In function โ€˜watchdogConfigโ€™:
optiboot_flash.c:923:3: error: โ€˜WDTCSRโ€™ undeclared (first use in this function)
WDTCSR = _BV(WDCE) | _BV(WDE);
^
In file included from /usr/lib/avr/include/avr/io.h:99:0,
from optiboot_flash.c:250:
optiboot_flash.c:923:16: error: โ€˜WDCEโ€™ undeclared (first use in this function)
WDTCSR = _BV(WDCE) | _BV(WDE);
^
optiboot_flash.c:923:28: error: โ€˜WDEโ€™ undeclared (first use in this function)
WDTCSR = _BV(WDCE) | _BV(WDE);
^
optiboot_flash.c: In function โ€˜writebufferโ€™:
boot.h:207:40: error: โ€˜__SPM_ENABLEโ€™ undeclared (first use in this function)
#define __BOOT_PAGE_ERASE (_BV(__SPM_ENABLE) | _BV(PGERS))
^
optiboot_flash.c:983:38: note: in expansion of macro โ€˜__BOOT_PAGE_ERASEโ€™
do_spm((uint16_t)(void
)address,__BOOT_PAGE_ERASE,0);
^
boot.h:207:60: error: โ€˜PGERSโ€™ undeclared (first use in this function)
#define __BOOT_PAGE_ERASE (_BV(__SPM_ENABLE) | _BV(PGERS))
^
optiboot_flash.c:983:38: note: in expansion of macro โ€˜__BOOT_PAGE_ERASEโ€™
do_spm((uint16_t)(void*)address,__BOOT_PAGE_ERASE,0);
^
boot.h:208:60: error: โ€˜PGWRTโ€™ undeclared (first use in this function)
#define __BOOT_PAGE_WRITE (_BV(__SPM_ENABLE) | _BV(PGWRT))
^
optiboot_flash.c:999:38: note: in expansion of macro โ€˜__BOOT_PAGE_WRITEโ€™
do_spm((uint16_t)(void*)address,__BOOT_PAGE_WRITE,0);
^
optiboot_flash.c: In function โ€˜do_spmโ€™:
optiboot_flash.c:1084:25: error: โ€˜__SPM_REGโ€™ undeclared (first use in this function)
: "i" (_SFR_IO_ADDR(__SPM_REG)),
^
boot.h:199:65: error: โ€˜__SPM_ENABLEโ€™ undeclared (first use in this function)
#define boot_spm_busy() (__SPM_REG & (uint8_t)_BV(__SPM_ENABLE))
^
boot.h:205:49: note: in expansion of macro โ€˜boot_spm_busyโ€™
#define boot_spm_busy_wait() do{}while(boot_spm_busy())
^
optiboot_flash.c:1095:5: note: in expansion of macro โ€˜boot_spm_busy_waitโ€™
boot_spm_busy_wait();
^

Problem importing MiniCore Arduino project into Atmel Studio 7

Atmel Studio 7 supports directly importing Arduino sketches. It automatically creates the makefiles, and imports the core files associated with the board you are using.

Unfortunately, it appears that it fails to import for that MiniCore targets. For example, here is what happens when I try to import an Arduino sketch targeted at the ATmega328 (see below video).

Trying to import ATmega328PB MiniCore Arduino project into Atmel Studio

As you can see, in the import dialogue titled Creat C++ project from Arduino Sketch , after selecting the ATmega328 MiniCore board option, the Device dropdown lists a single cryptic entry: Arduino.IDE.Board.Service.McuVariant

I think this is probably a big clue as to why this is failing.

Is there a workaround for this? I have already tried copying/replacing files from MiniCore master to the Atmel Studio project, however this doesn't seem to work well with the toolchain settings, and won't compile. See video here for that attempt:

Trying to replace Arduino core files after importing wrong device type to Atmel Studio

avrdude fails programming of 328P with USBasp

When selecting low clock frequencies avrdude needs the parameter '-B 5' appended to slow down the flashing.

  1. Is this uncommon? I found the solution thanks to a post by randy at stackexchange.
  2. Is it possible to add '-B 5' permanently so I don't have to fail a programming and then copy the text and paste it into the cmd-window and add -B 5 at the end?

Thanks!

ATmega328pb efuse bit 3 can be added to avrdude config

The bit is for clock failure detection. Unfortunately one of the parts I got from Digikey had the fuse set so I had to figure out how to get avrdude to input it during writing so it could be cleared.

part parent "m328"
    id			= "m328pb";
    desc		= "ATmega328PB";
    signature		= 0x1e 0x95 0x16;

    ocdrev              = 1;
    
    memory "efuse"
        size = 1;
        min_write_delay = 4500;
        max_write_delay = 4500;
        read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
               "x x x x x x x x o o o o o o o o";

        write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
                "x x x x x x x x x x x x i i i i";
    ;
;

New minimal setup shematics should be added

New minimal setup shematics should be added to match both DIP-28 and TQFP-32 packages. The new shematics should also have the same format as the ones found in MightyCore and MegaCore.

use shiftIn from MicroCore

Since it is smaller and faster.
With a few changes, shiftOut could be used as well. For MicroCore I used direct PORTB access in the optimized shiftOut because I didn't want to take the time to figure out the digitalPinToPort function or whatever it is called.

Link time optimization doesn't work

After Arduino IDE 1.6.10 was released, the GCC link time optimization (-flto) is enabled by default. This reduces the sketch size dramatically, while not making the code smaller. I'm planning to add a separate GCC flags menu to MightyCore, MegaCore and MiniCore, and so far this is a success on MegaCore and MightyCore. When adding the GCC flags menu with the option -Os -flto I get this error. The error does not occur in IDE 1.6.9, but does with 1.6.12. How can I get this working? The current boards.txt file is attached for testing purposes.

boards.txt

/Users/Hans/Downloads/Arduino-1.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware -hardware /Users/Hans/Library/Arduino15/packages -hardware /Users/Hans/Documents/Arduino/hardware -tools /Users/Hans/Downloads/Arduino-1.app/Contents/Java/tools-builder -tools /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr -tools /Users/Hans/Library/Arduino15/packages -built-in-libraries /Users/Hans/Downloads/Arduino-1.app/Contents/Java/libraries -libraries /Users/Hans/Documents/Arduino/libraries -fqbn=MiniCore:avr:8:flags=Os_flto,clock=16MHz_external -ide-version=10612 -build-path /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388 -warnings=all -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr -prefs=runtime.tools.avrdude.path=/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr -verbose /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/untitled1487042331.tmp/sketch_oct04a/sketch_oct04a.ino
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/arduino-builder -compile -logger=machine -hardware /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware -hardware /Users/Hans/Library/Arduino15/packages -hardware /Users/Hans/Documents/Arduino/hardware -tools /Users/Hans/Downloads/Arduino-1.app/Contents/Java/tools-builder -tools /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr -tools /Users/Hans/Library/Arduino15/packages -built-in-libraries /Users/Hans/Downloads/Arduino-1.app/Contents/Java/libraries -libraries /Users/Hans/Documents/Arduino/libraries -fqbn=MiniCore:avr:8:flags=Os_flto,clock=16MHz_external -ide-version=10612 -build-path /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388 -warnings=all -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr -prefs=runtime.tools.avrdude.path=/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr -verbose /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/untitled1487042331.tmp/sketch_oct04a/sketch_oct04a.ino
Using board '8' from platform in folder: /Users/Hans/Documents/Arduino/hardware/MiniCore/avr
Using core 'arduino' from platform in folder: /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr
Detecting libraries used...
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/sketch/sketch_oct04a.ino.cpp" -o "/dev/null"
Generating function prototypes...
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/sketch/sketch_oct04a.ino.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/preproc/ctags_target_for_gcc_minus_e.cpp"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/tools-builder/ctags/5.8-arduino10/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/preproc/ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/sketch/sketch_oct04a.ino.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/sketch/sketch_oct04a.ino.cpp.o"
Compiling libraries...
Compiling core...
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -x assembler-with-cpp -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR   "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_pulse.S" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_pulse.S.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/WInterrupts.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WInterrupts.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/hooks.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/hooks.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_analog.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_analog.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_digital.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_digital.c.o"
In file included from /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_private.h:31:0,
                 from /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_digital.c:26:
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/Arduino.h:195:0: warning: "PE" redefined
 #define PE 5
 ^
In file included from /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/avr/include/avr/io.h:350:0,
                 from /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_private.h:26,
                 from /Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_digital.c:26:
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/avr/include/avr/iom8.h:534:0: note: this is the location of the previous definition
 #define PE 2

 ^
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_pulse.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_pulse.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/wiring_shift.c" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_shift.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/CDC.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/CDC.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial0.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial0.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial1.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial1.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial2.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial2.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial3.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial3.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/IPAddress.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/IPAddress.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/PluggableUSB.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/PluggableUSB.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/Print.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Print.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/Stream.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Stream.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/Tone.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Tone.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/USBCore.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/USBCore.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/WMath.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WMath.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/WString.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WString.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/abi.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/abi.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/main.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/main.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega8 -DF_CPU=16000000L -DARDUINO=10612 -DARDUINO_AVR_ATmega8 -DARDUINO_ARCH_AVR -Wextra -flto  "-I/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/Hans/Documents/Arduino/hardware/MiniCore/avr/variants/standard" "/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/arduino/avr/cores/arduino/new.cpp" -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/new.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_pulse.S.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WInterrupts.c.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WInterrupts.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/hooks.c.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/hooks.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring.c.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_analog.c.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_digital.c.o"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object

/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_digital.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_pulse.c.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_pulse.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_shift.c.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/wiring_shift.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/CDC.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/CDC.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial0.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial1.cpp.o"

/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial2.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial3.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/IPAddress.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/PluggableUSB.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Print.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Stream.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Tone.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/USBCore.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WMath.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/USBCore.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: USBCore.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WMath.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WString.cpp.o"
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/abi.cpp.o"

/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: USBCore.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WMath.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/WString.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/main.cpp.o"
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar" rcs  "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/new.cpp.o"
Linking everything together...
"/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -Wall -Wextra -Os -Wl,--gc-sections -mmcu=atmega8 -w -flto -o "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/sketch_oct04a.ino.elf" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/sketch/sketch_oct04a.ino.cpp.o" "/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/core.a" "-L/var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388" -lm
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: USBCore.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WMath.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WString.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/abi.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: USBCore.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WMath.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WString.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: abi.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/main.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WInterrupts.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: hooks.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_analog.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_digital.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_pulse.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: wiring_shift.c.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: CDC.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial0.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial1.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial2.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: HardwareSerial3.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: IPAddress.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: PluggableUSB.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Print.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Stream.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: Tone.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: USBCore.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WMath.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: WString.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: abi.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: main.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/avr-ar: /var/folders/_p/s3kykxss20bbhfmqcg0ctrp80000gn/T/arduino_build_109388/core/new.cpp.o: plugin needed to handle lto object
/Users/Hans/Downloads/Arduino-1.app/Contents/Java/hardware/tools/avr/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr4/crtatmega8.o:(.init9+0x0): undefined reference to `main'
collect2: error: ld returned 1 exit status
exit status 1
Error compiling for board ATmega8.

Travis is failing due to library changes

I thought it may be a good idea to re-structure the libraries so the user never actually has to include SPI1.h or Wire1.h. This means there does not exist any examples for Wire1 and SPI1 anymore.

Would you like to help me out on this one @per1234 ?

Error with sleep when using 328pb variant only

[code]Arduino: 1.8.4 (Windows 10), Board: "ATmega328, No, 328PB, 2.7v, Disabled (default), 8 MHz internal"

Warning: Board breadboard:avr:atmega328bb doesn't define a 'build.board' preference. Auto-set to: AVR_ATMEGA328BB
In file included from C:\Users\Lion.O\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.1\cores\MCUdude_corefiles/wiring_extras.h:14:0,

             from C:\Users\Lion.O\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.1\cores\MCUdude_corefiles/Arduino.h:290,

             from sketch\Genesis_Intellivision.ino.cpp:1:

c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\sleep.h:224:6: error: #error "No SLEEP mode defined for this device."

 #error "No SLEEP mode defined for this device."

  ^

exit status 1
Error compiling for board ATmega328.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.[/code]

I am using this minicore since Arduino IDE does not directly support the newer ATMega168pb and 328pb (they were released just a couple years ago). 2 extra IO pins, better handling of A6 and A7 pins (they were multiplexed on older ATMega x8's and can only be used as analog input), and the minicore also lets me set internal clock which frees up XTAL pins for 2 more digital IO pins.

I am not using sleep anywhere in my code and when I change the variant to 328 or 328p the code compiles fine but when I use 328pb I get error about sleep. Oddly enough if I used variant 168, 168p, and 168pb (and all 3 88's as well, program too large for 48's and 8's) they compile fine as well. Why won't 328pb work? I tried 328pb with external and internal clock, both the same result. It's as if there's a bad line in 328pb that handles sleep?

Totally not an issue

Was trying to find a way to contact you directly but...could not.

I am wanting to modify the pins_arudino.h file to make the pin outs correspond with the physical pin numbers of the chip. (explanation: I was teaching a class with chips on board and the most common issue was students using the wrong pin numbers in their code. Since, I have very limited time in my class I thought "Why not just make the pin numbers correspond to the physical pin numbers since it is all abstracted anyway?"

I took a look and tried to modify your pins_arduino.h file but could not get a working version.

I tired to modify the terniery equations of analogInputToDigitalPin(p) & analogPinToChannel(p) and digitalPinHasPWM(p) as well as the digital #defines. I also resorted the digital_pin_to_port_PGM and digital_pin_to_bit_mask_PGM but I was very uncertain if those were the correct things to be modifying.

if you could please point me in the right direction I would sincerely appreciate it.

#error "No SLEEP mode defined for this device."

I am compining for ATmega328PB using MiniCore 2.0.0, Arduino 1.8.6, and Arduino toolchain 1.6.21. The problem I am experiencing also happened on my older copy of Arduino 1.8.5 before I updated, with an unknown version of the toolchain.

When I compile any program, even just a simple "void setup(){} void loop(){}", it complains about this. The observed error of "#error "No SLEEP mode defined for this device."" only occurs with the build target set to the PB variation. Both the 328(A) and 328P(A) targets compile fine.

The header files that are linked to the error are as follows:
hardware\tools\avr\avr\include\avr\sleep.h:224:6,
which is called by MiniCore\hardware\avr\2.0.0\cores\MCUdude_corefiles/wiring_extras.h:14:0,
which in turn is called by MiniCore\hardware\avr\2.0.0\cores\MCUdude_corefiles/Arduino.h:290

I imagine there is probably a typo in one of the #DEFINE lines somewhere in the core, but I don't myself know where to look.

digitalPinToInterrupt(21) returns 255 with ATmega328PB

I'm using Visual Micro along with Atmel Studio, using mEDBG debugger on an Xplained Mini 328PB (using internal 8MHz oscillator)

I'm trying to get the following sketch to work:

const byte ledPin = 13;
const byte interruptPin = 21;
volatile byte state = LOW;

void setup() {
	pinMode(ledPin, OUTPUT);
	pinMode(interruptPin, INPUT_PULLUP);
	attachInterrupt(digitalPinToInterrupt(interruptPin), blink, CHANGE);
}

void loop() {
	digitalWrite(ledPin, state);
}

void blink() {
	state = !state;
}

If I build a debugging version of this sketch, and step through it, it appears that the call to digitalPinToInterrupt(21) returns 255, which makes the attachInterrupt() call silently fail.

See video for step-debugging:

https://youtu.be/QOlM6OYCwww

I think ultimately this is a problem with the digitalPinToInterrupt() function in pins_arduino.h which uses the following implementation of digitalPinToInterrupt():

#elif defined(__AVR_ATmega328PB__)
#define digitalPinToPCICR(p)     (((p) >= 0 && (p) <= 26) ? (&PCICR) : ((uint8_t *)0))
#define digitalPinToPCICRbit(p)  (((p) <= 7) ? 2 : (((p) <= 13 || (p) == 20 || (p) == 21) ? 0 : (((p) <= 22) ? 1 : 2)))
#define digitalPinToPCMSK(p)     (((p) <= 7) ? (&PCMSK2) : (((p) <= 13 || (p) == 20 || (p) == 21) ? (&PCMSK0) : (((p) <= 22) ? (&PCMSK1) : (((p) <= 26) ? (&PCMSK3) : ((uint8_t *)0)))))
#define digitalPinToPCMSKbit(p)  (((p) <= 7) ? (p) : (((p) <= 13) ? ((p) - 8) : ((p) <= 21) ? ((p) - 14) : ((p) == 22) ? ((p) - 16) : ((p) - 23)))
#define digitalPinToInterrupt(p) ((p) == 2 ? 0 : ((p) == 3 ? 1 : NOT_AN_INTERRUPT))
#endif

cannot reburn bootloader of an Atmega328

Dear MCUdude,

Your board library was recommended to me by users on the Arduino Forum:, related to this issue:
http://forum.arduino.cc/index.php?topic=422239.msg2908127#msg2908127

However I cannot make it work for an Atmega328. Background: usually I use for my boards the 328P, but at the early stage of my project I ordered some 328 which came pre-burned with bootloader (Mini). Because my project needs more code space and the Mini has ~2kB less than the Nano and even lesser as the Uno, I wanted to re-burn the 328 with a new bootloader. Easier I though than exchanging the boards, which would be quite a pain. But it does not want to work...

Difference between reset and power on?

Precondition: A 16 MHz Arduino ProMini-clone with bootloader settings as below and running the example Blink.
bild

  1. When I start by attaching 5V the sketch runs immediately, skipping the bootloader.
  2. When I start by releasing the reset button, the led blinks twice and the sketch runs after a second or so.
  3. When I start by having the ProMini attached to my CP2102 serial adapter and attach this 'kit' to usb, the bootloader runs exactly seven times and then the sketch starts.

Number 3 is an odd situation, but I would like to know why bootloader is skipped when attaching power.
Attached a film to show what happens. film_promini_123.zip

Atmega328pb bootloader not working

Hi,

I have tried all of this week to burn a bootloader over my atmega328PB.... but i have failed 8 times ....in a row...

The problem is that i have now 8 "bricks" because after i tried to burn this...the chip is no longer responsiv to my commands ....

i will attach here the log/error from Arduino ide ...

I have only 2 atmega328pb left...please i don't want to brick this too...

THANK YOU IN ADVANCE...
George.
err.txt

Blink_using_Timer0 does not work with Atmega8: OCR0 not available

Observation:
Compilation of Blink_using_Timer0.ino fails for Atmega8.

Error message:

/home/cappel/.arduino15/packages/MiniCore/hardware/avr/2.0.1/libraries/AVR_examples/examples/Blink_using_Timer0/Blink_using_Timer0.ino: In function 'int main()':
Blink_using_Timer0:29: error: 'OCR0' was not declared in this scope
     OCR0 = 0x00;  // Output compare
     ^
exit status 1
'OCR0' was not declared in this scope

Possible reason:
OCR0 ist not available in Atmega8(L), according to Atmel data sheet.

Software environment:
Arduino 1.8.5
MiniCore 2.0.1
BSP: Arduino AVR core 1.6.207
Xubuntu 18.04, Windows 10

Caveat about micros() does not match reality

In the documentation, users are warned about clock speeds by which 64 is not evenly divisible, and told that at 18.whatever mhz, micros() is slower. But looking at wiring.c, this does not appear to be the case. That version of micros() is the same as in the official core, which just uses integer division - so the result is fast regardless of clock speed, but wrong (sometimes very wrong) if 64 is not divisible by clock cycles per microsecond.

It looks like you're referencing a micros() implementation like in my core, where I use a combination of bitshifts and addition/subtraction to get micros() within a few percent of reality, at a modest cost in execution speed (since doing floating point division to get the actual value takes forever). You're welcome to take my implementation if you want to go that route.

A6 & A7 fiix breaks digital 6&7

I just got the update to get A6&7 working but it seems it has prevented digital 6 & 7 from working correctly. I have had a look but its a bit past my undertsading to work out.

not able to code atmega88PB in arduino ide

I have burn the bootloader for atmega88pb and that is sucessfully done. But i am not able to code it using the keyword provided in the data on github. I am pasting my simple test code for led blink.
#define led PB1
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH);
delay(100);
digitalWrite(led, LOW);
delay(100);
}
This is compiling properly, but after uploading the led is not blinking...
Please Help!!

convert String to Char not work correctly

I have program to sending data to server.
1) use clasic bootloader - the server receives a correct data
log: 192.168.0.106 - - [12/Dec/2018:09:31:53 +0100] "GET /arduino/elektromer.php?ID=AR06&t1=12&spotreba=12558&tarif=1" 200 2 "-" "-"
2) use minicore bootloader - the server NOT receives a correct data
log: 192.168.0.106 - - [12/Dec/2018:09:30:45 +0100] "GET /arduino/elektromer.php?ID=AR06&t\x06\xa8\b\xdc\xa5\x03\x122\x04\xa6\xbe\xca\x0f\x10\xdd\b'\x04l\x03\xba\b\xa5\x03K\x04\x98\x01 HTTP/1.0" 400 981 "-" "-"

`void sendPacket(String dataString){

char dataChar[50];
dataString.toCharArray(dataChar, 50);
ether.browseUrl(PSTR("/arduino/elektromer.php?"), dataChar, server, callback);

}`

Thank you for your advice.

Firmware is much bigger with MiniCore comparing to std Arduino 1.8.5

Hello.
I understand that original goals of the project are a bit different, however I couldn't notice, that in case I use MiniCore I'm getting much less free memory.

Here are two of my projects I just tried to compile. Is this normal? Please advise.
Thank you.

https://github.com/latonita/arduino-canbus-monitor

Board Program size Diff Variables Diff
Arduino Pro Mini 168 9784 bytes (68%) . 526 bytes (51%) .
MicroCore 168 11716 bytes (73%) ๐Ÿ‘Ž -1932 bytes 538 bytes (52%) ๐Ÿ‘Ž -12 bytes

https://github.com/latonita/jeep-canbus -> /jeep-aux-and-extra-features/

Board Program size Diff Variables Diff
Arduino Pro Mini 168 6072 bytes (42%) . 634 bytes (61%) .
MicroCore 168 8268 bytes (52%) ๐Ÿ‘Ž -2196 bytes 646 bytes (63%) ๐Ÿ‘Ž -12 bytes

SoftwareSerial on ATmega8?

Hi,

Can you please implement somehow the "SoftwareSerial" support for the ATmega8 MCU?

Is it possible?

Kind regards,
Viktor

Command Line Build issues

The command-line arduino is throwing several errors.

$ /Applications/Arduino.app/Contents/MacOS/Arduino --verify --board MiniCore:avr:168:variant=modelP --verbose --preserve-temp-files src/src.ino
Already up to date.
Loading configuration...
Initializing packages...
Preparing boards...
Verifying...
/Applications/Arduino.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -hardware /Users/steven/Library/Arduino15/packages -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -tools /Users/steven/Library/Arduino15/packages -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/steven/Documents/Arduino/libraries -fqbn=MiniCore:avr:168:variant=modelP -ide-version=10805 -build-path /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745 -warnings=none -build-cache /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_cache_614830 -prefs=build.warn_data_percentage=75 -verbose /Users/steven/Outdoor-Lighting-Controller/Arduino_Nano/src/src.ino
/Applications/Arduino.app/Contents/Java/arduino-builder -compile -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -hardware /Users/steven/Library/Arduino15/packages -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -tools /Users/steven/Library/Arduino15/packages -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/steven/Documents/Arduino/libraries -fqbn=MiniCore:avr:168:variant=modelP -ide-version=10805 -build-path /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745 -warnings=none -build-cache /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_cache_614830 -prefs=build.warn_data_percentage=75 -verbose /Users/steven/Outdoor-Lighting-Controller/Arduino_Nano/src/src.ino
Using board '168' from platform in folder: /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0
Using core 'MCUdude_corefiles' from platform in folder: /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0
Detecting libraries used...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega168p -DF_CPU= -DARDUINO=10805 -DARDUINO_AVR_ATmega168 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/variants/standard" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/sketch/src.ino.cpp" -o "/dev/null"
Generating function prototypes...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega168p -DF_CPU= -DARDUINO=10805 -DARDUINO_AVR_ATmega168 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/variants/standard" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/sketch/src.ino.cpp" -o "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/preproc/ctags_target_for_gcc_minus_e.cpp"
"/Applications/Arduino.app/Contents/Java/tools-builder/ctags/5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/preproc/ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega168p -DF_CPU={build.f_cpu} -DARDUINO=10805 -DARDUINO_AVR_ATmega168 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/variants/standard" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/sketch/src.ino.cpp" -o "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/sketch/src.ino.cpp.o"
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h: In function 'void _delay_ms(double)':
<command-line>:0:8: error: 'build' was not declared in this scope
In file included from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/USBAPI.h:27:0,
                 from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/Arduino.h:289,
                 from /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/sketch/src.ino.cpp:1:
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h:174:21: error: invalid operands of types 'void' and 'double' to binary 'operator/'
  __tmp = ((F_CPU) / 1e3) * __ms;
                     ^
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h: In function 'void _delay_us(double)':
<command-line>:0:8: error: 'build' was not declared in this scope
In file included from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/USBAPI.h:27:0,
                 from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/Arduino.h:289,
                 from /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_544745/sketch/src.ino.cpp:1:
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h:263:21: error: invalid operands of types 'void' and 'double' to binary 'operator/'
  __tmp = ((F_CPU) / 1e6) * __us;
                     ^
exit status 1

$ /Applications/Arduino.app/Contents/MacOS/Arduino --verify --board MiniCore:avr:328 --verbose --preserve-temp-files src/src.ino
Already up to date.
Loading configuration...
Initializing packages...
Preparing boards...
Verifying...
/Applications/Arduino.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -hardware /Users/steven/Library/Arduino15/packages -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -tools /Users/steven/Library/Arduino15/packages -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/steven/Documents/Arduino/libraries -fqbn=MiniCore:avr:168 -ide-version=10805 -build-path /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_155433 -warnings=none -build-cache /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_cache_842587 -prefs=build.warn_data_percentage=75 -verbose /Users/steven/Outdoor-Lighting-Controller/Arduino_Nano/src/src.ino
/Applications/Arduino.app/Contents/Java/arduino-builder -compile -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -hardware /Users/steven/Library/Arduino15/packages -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -tools /Users/steven/Library/Arduino15/packages -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/steven/Documents/Arduino/libraries -fqbn=MiniCore:avr:168 -ide-version=10805 -build-path /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_155433 -warnings=none -build-cache /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_cache_842587 -prefs=build.warn_data_percentage=75 -verbose /Users/steven/Outdoor-Lighting-Controller/Arduino_Nano/src/src.ino
Using board '168' from platform in folder: /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0
Using core 'MCUdude_corefiles' from platform in folder: /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0
Detecting libraries used...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu= -DF_CPU= -DARDUINO=10805 -DARDUINO_AVR_ATmega168 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_155433/sketch/src.ino.cpp" -o "/dev/null"
Generating function prototypes...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu= -DF_CPU= -DARDUINO=10805 -DARDUINO_AVR_ATmega168 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_155433/sketch/src.ino.cpp" -o "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_155433/preproc/ctags_target_for_gcc_minus_e.cpp"
avr-g++: error: missing device or architecture after '-mmcu='
exit status 1

$ /Applications/Arduino.app/Contents/MacOS/Arduino --verify --board MiniCore:avr:328:variant=modelP --verbose --preserve-temp-files src/src.ino
Already up to date.
Loading configuration...
Initializing packages...
Preparing boards...
Verifying...
/Applications/Arduino.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -hardware /Users/steven/Library/Arduino15/packages -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -tools /Users/steven/Library/Arduino15/packages -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/steven/Documents/Arduino/libraries -fqbn=MiniCore:avr:328:variant=modelP -ide-version=10805 -build-path /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022 -warnings=none -build-cache /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_cache_155658 -prefs=build.warn_data_percentage=75 -verbose /Users/steven/Outdoor-Lighting-Controller/Arduino_Nano/src/src.ino
/Applications/Arduino.app/Contents/Java/arduino-builder -compile -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -hardware /Users/steven/Library/Arduino15/packages -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -tools /Users/steven/Library/Arduino15/packages -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/steven/Documents/Arduino/libraries -fqbn=MiniCore:avr:328:variant=modelP -ide-version=10805 -build-path /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022 -warnings=none -build-cache /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_cache_155658 -prefs=build.warn_data_percentage=75 -verbose /Users/steven/Outdoor-Lighting-Controller/Arduino_Nano/src/src.ino
Using board '328' from platform in folder: /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0
Using core 'MCUdude_corefiles' from platform in folder: /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0
Detecting libraries used...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU= -DARDUINO=10805 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/variants/standard" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/sketch/src.ino.cpp" -o "/dev/null"
Generating function prototypes...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU= -DARDUINO=10805 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/variants/standard" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/sketch/src.ino.cpp" -o "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/preproc/ctags_target_for_gcc_minus_e.cpp"
"/Applications/Arduino.app/Contents/Java/tools-builder/ctags/5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/preproc/ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU={build.f_cpu} -DARDUINO=10805 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR   "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles" "-I/Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/variants/standard" "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/sketch/src.ino.cpp" -o "/var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/sketch/src.ino.cpp.o"
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h: In function 'void _delay_ms(double)':
<command-line>:0:8: error: 'build' was not declared in this scope
In file included from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/USBAPI.h:27:0,
                 from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/Arduino.h:289,
                 from /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/sketch/src.ino.cpp:1:
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h:174:21: error: invalid operands of types 'void' and 'double' to binary 'operator/'
  __tmp = ((F_CPU) / 1e3) * __ms;
                     ^
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h: In function 'void _delay_us(double)':
<command-line>:0:8: error: 'build' was not declared in this scope
In file included from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/USBAPI.h:27:0,
                 from /Users/steven/Library/Arduino15/packages/MiniCore/hardware/avr/2.0.0/cores/MCUdude_corefiles/Arduino.h:289,
                 from /var/folders/ry/9vqr33vj43n6yv55nzr7plkr0000gn/T/arduino_build_433022/sketch/src.ino.cpp:1:
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/avr/include/util/delay.h:263:21: error: invalid operands of types 'void' and 'double' to binary 'operator/'
  __tmp = ((F_CPU) / 1e6) * __us;
                     ^
exit status 1

How to use space from not burning bootloader?

Hello. I am trying to compile a hefty program for a Atmega 8. It is larger that its memory and I get

ld.exe: region `text' overflowed by 90 bytes message.

Then I try compile it with bootloader disabled (by selecting respective option from IDE menu) but get the same
ld.exe: region `text' overflowed by 90 bytes error.

How can I make use of space left from not burning a bootloader?

BTW, if I compile for attiny85 (using https://github.com/SpenceKonde/ATTinyCore), the firmware fits totally fine and I get Sketch uses 6318 bytes (77%) of program storage space. Maximum is 8192 message. Is there a way to tweak options for minicore to get similar result?

Add upload to 250 KBPS version for 8 and 16MHz ?

Man,
you saved my life with your working optiboot for Arduino Mini at 8MHz at 3V3 ;-)
Thanks because the original one in optiboot repo does not seems to works, I was unable to upload anything.
By the way would you mind adding a version working at 250000 KBPS at 8Mhz ?
You'll find why my request on the post I wrote 3 years ago here https://hallard.me/ulpnode-bootloader-1/

I'm asking this because compiling optiboot on windows/macOS in really a mess I just tried withiut success

Thanks for your help

A6/A7 mapping issue

Analog reading "A6" and "A7" on the ATMEGA328P TQFP returns results from the wrong analog ports. Inspection shows these are mapped to 23 and 24, but I get the results I'm expecting from 20 and 21.

arduinoisp.org Programmer not Working

Hi,

I tried to upload an Arduino pro Mini Bootloader with my Arduino.org-ISP. I get this error message:

avrdude: Can't find programmer id "arduinoisporg"

Trying to programm it via the original Arduino-Boards it works. But not with the MiniCore.

What am I doing wrong?

Thanks in advance.

Christoph

Serial and Wire not working together

Hi,

Serial.begin(9600); and Wire.begin(0x27); using ATmega8 with simple Arduino code are not working together, but if I disable the Serial protocol the the Wire protocol works as intended.

Any toughs?

Regards

Killed a bunch of Arduino Pro Mini with the 1Mhz option

Hi, just found this nice bootloader, and its just what i am needind in my ultra low power sensor application. After using a USBAsp to program a Arduino Pro Mini with the 8Mhz internal clock option, everything worked as expected... the LED (PIN13) did a heart beat kinda blinking.
But i was after the 1Mhz clock option since it, makes sense to get as low clock as posibile, sadly after burinng the bootloader again using this option the board died, tried on a few other ones the same issue... Working fine on 8Mhz but dying after the 1Mhz flash.
Any hints on what i am doing wrong?

Thanks.

PinChange interrupts don't work on D20/D21 (PB6/PB7)

minicore supports using PB6/PB7 (normally the XTAL pins) as normal digital IO, and the various digitalPinToPCxxx() macros have been updated to include those, except I don't think they've been fully updated...
I don't see any logic to force them back into PORTB (PCMSK0):

#define digitalPinToPCICR(p)    (((p) >= 0 && (p) <= 21) ? (&PCICR) : ((uint8_t *)0))
#define digitalPinToPCICRbit(p) (((p) <= 7) ? 2 : (((p) <= 13) ? 0 : 1))
#define digitalPinToPCMSK(p)    (((p) <= 7) ? (&PCMSK2) : (((p) <= 13) ? (&PCMSK0) : (((p) <= 21) ? (&PCMSK1) : ((uint8_t *)0))))
#define digitalPinToPCMSKbit(p) (((p) <= 7) ? (p) : (((p) <= 13) ? ((p) - 8) : ((p) - 14)))

Cannot compile

Perhaps similar to #47. I can't compile using MiniCore for a 328PB.

Targeting Arduino Pro - compiles, no errors.

This is using SPIMemory library to interface with WinBond flash chips.

MiniCore:

In function 'void loop()':

IRSniffer:117: error: invalid conversion from 'volatile byte* {aka volatile unsigned char*}' to 'uint8_t* {aka unsigned char*}' [-fpermissive]

       flash.readByteArray(dumpy, packet, 8);

\Arduino\libraries\SPIMemory\src/SPIFlash.h:63:12: note:   initializing argument 2 of 'bool SPIFlash::readByteArray(uint32_t, uint8_t*, size_t, bool)'

   bool     readByteArray(uint32_t _addr, uint8_t *data_buffer, size_t bufferSize, bool fastRead = false);

error: invalid conversion from 'volatile byte* {aka volatile unsigned char*}' to 'uint8_t* {aka unsigned char*}' [-fpermissive]

         flash.readByteArray(dumpy, packet, 8);

Documents\Arduino\libraries\SPIMemory\src/SPIFlash.h:63:12: note:   initializing argument 2 of 'bool SPIFlash::readByteArray(uint32_t, uint8_t*, size_t, bool)'

   bool     readByteArray(uint32_t _addr, uint8_t *data_buffer, size_t bufferSize, bool fastRead = false);

exit status 1
invalid conversion from 'volatile byte* {aka volatile unsigned char*}' to 'uint8_t* {aka unsigned char*}' [-fpermissive]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.