platformio / platform-atmelavr

Atmel AVR: development platform for PlatformIO
https://registry.platformio.org/platforms/platformio/atmelavr
Apache License 2.0
136 stars 104 forks source link

Digistump digispark ATTiny85 compile time noise #233

Open anno73 opened 3 years ago

anno73 commented 3 years ago

Hi guys!

When compiling for a digispark, I get a lot of warning noise. I do not know how important this is but it makes me at least nervous every time I compile my code :-)

It boils down to

Any chance to get this fixed please?

Br, Alex.

github project: https://github.com/anno73/IoT-Universal-Socket-Strip/tree/master/software/relay

platformio.ini:

[platformio]
description = IoT Universal Socket Strip

[env:digispark-vusb]
platform = atmelavr
board = digispark-tiny
framework = arduino
debug_tool = simavr
lib_deps =
    ; nickcengel/TinyWireSio @ ^0.0.0-alpha+sha.722ada4382
    nickcengel/TinyWireSio 
    prosenb/EEPROMWearLevel @ ^2.0.0
lib_ldf_mode = chain+

Compile time output:

> Executing task in folder relay: C:\Users\alex\.platformio\penv\Scripts\pio.exe run <

Processing digispark-vusb (platform: atmelavr; board: digispark-tiny; framework: arduino)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/atmelavr/digispark-tiny.html
PLATFORM: Atmel AVR (3.1.0) > Digispark USB     
HARDWARE: ATTINY85 16MHz, 512B RAM, 5.87KB Flash
DEBUG: Current (simavr) On-board (simavr)       
PACKAGES:
 - framework-arduino-avr-digistump 1.6.7        
 - toolchain-atmelavr 1.50400.190710 (5.4.0)    
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain+, Compatibility ~ soft
Found 32 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <TinyWireSio> 0.0.0-alpha+sha.722ada4382
|-- <EEPROM> 2.0
|-- <EEPROMWearLevel> 2.0.0
|   |-- <EEPROM> 2.0
Building in release mode
Compiling .pio\build\digispark-vusb\src\main.cpp.o
Compiling .pio\build\digispark-vusb\lib639\TinyWireSio\TinyWireS.cpp.o
Compiling .pio\build\digispark-vusb\lib639\TinyWireSio\usiTwiSlave.c.o
Archiving .pio\build\digispark-vusb\lib1ac\libEEPROM.a
Compiling .pio\build\digispark-vusb\lib69f\EEPROMWearLevel\EEPROMWearLevel.cpp.o
Compiling .pio\build\digispark-vusb\FrameworkArduinoVariant\pins_arduino.c.o
Compiling .pio\build\digispark-vusb\FrameworkArduino\HardwareSerial.cpp.o
Compiling .pio\build\digispark-vusb\FrameworkArduino\Print.cpp.o
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:18,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Arduino.h:4,
Compiling .pio\build\digispark-vusb\FrameworkArduino\TinyDebugSerial.cpp.o
Compiling .pio\build\digispark-vusb\FrameworkArduino\TinyDebugSerial115200.cpp.o
                 from .pio\libdeps\digispark-vusb\TinyWireSio\TinyWireS.cpp:23:
Compiling .pio\build\digispark-vusb\FrameworkArduino\TinyDebugSerial38400.cpp.o
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Print.h:37:0: warning: "BIN" redefined
Archiving .pio\build\digispark-vusb\lib639\libTinyWireSio.a
 #define BIN 2
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\interrupt.h:38,
                 from .pio\libdeps\digispark-vusb\TinyWireSio\TinyWireS.cpp:19:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
.pio\libdeps\digispark-vusb\TinyWireSio\usiTwiSlave.c: In function 'usiTwiTransmitByte':
.pio\libdeps\digispark-vusb\TinyWireSio\usiTwiSlave.c:403:11: warning: unused variable 'tmphead' [-Wunused-variable]
   uint8_t tmphead;
           ^
Archiving .pio\build\digispark-vusb\libFrameworkArduinoVariant.a
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Stream.h:24:0,
Compiling .pio\build\digispark-vusb\FrameworkArduino\TinyDebugSerial9600.cpp.o
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:18,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Arduino.h:4,
                 from src\main.cpp:1:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Print.h:37:0: warning: "BIN" redefined
Compiling .pio\build\digispark-vusb\FrameworkArduino\TinyDebugSerialErrors.cpp.o
Archiving .pio\build\digispark-vusb\lib69f\libEEPROMWearLevel.a
 #define BIN 2
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
Compiling .pio\build\digispark-vusb\FrameworkArduino\Tone.cpp.o
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\interrupt.h:38,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:8,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Arduino.h:4,
                 from src\main.cpp:1:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
src\main.cpp: In function 'void readConfigFromEeprom()':
src\main.cpp:537:15: warning: implicit dereference will not access object of type 'volatile unsigned char' in statement
     EEPROM.get(0, iicSlaveAddress);
Compiling .pio\build\digispark-vusb\FrameworkArduino\WInterrupts.c.o
               ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:18,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Arduino.h:4,
                 from .pio\libdeps\digispark-vusb\EEPROMWearLevel\EEPROMWearLevel.cpp:1:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
Compiling .pio\build\digispark-vusb\FrameworkArduino\WMath.cpp.o
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\interrupt.h:38,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:8,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Arduino.h:4,
                 from .pio\libdeps\digispark-vusb\EEPROMWearLevel\EEPROMWearLevel.cpp:1:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.cpp:28:0:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:38:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\HardwareSerial.cpp:30:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from .pio\libdeps\digispark-vusb\EEPROMWearLevel\EEPROMWearLevel.h:23:0,
                 from .pio\libdeps\digispark-vusb\EEPROMWearLevel\EEPROMWearLevel.cpp:2:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\libraries\EEPROM\src/EEPROM.h:145:20: warning: 'EEPROM' defined but not used [-Wunused-variable]
 static EEPROMClass EEPROM;
                    ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.cpp:27:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:274:2: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
  &DDRB,
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:274:2: note: (near initialization for 'port_to_mode_PGM[1]')
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:280:2: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
  &PORTB,
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:280:2: note: (near initialization for 'port_to_output_PGM[1]')
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:286:2: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
Compiling .pio\build\digispark-vusb\FrameworkArduino\WString.cpp.o
  &PINB,
Compiling .pio\build\digispark-vusb\FrameworkArduino\main.cpp.o
Compiling .pio\build\digispark-vusb\FrameworkArduino\new.cpp.o
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\variants\digispark\pins_arduino.c:286:2: note: (near initialization for 'port_to_input_PGM[1]')
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.cpp: In member function 'void Print::print(const String&)':
Compiling .pio\build\digispark-vusb\FrameworkArduino\pins_arduino.c.o
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.cpp:48:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for (int i = 0; i < s.length(); i++) {
                     ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial115200.cpp:24:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\pgmspace.h:90,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:30,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial115200.cpp:24:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.cpp:25:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial38400.cpp:24:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial9600.cpp:24:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
Compiling .pio\build\digispark-vusb\FrameworkArduino\wiring.c.o
 #define BIN 2
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\pgmspace.h:90,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:30,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.cpp:25:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\pgmspace.h:90,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:30,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial38400.cpp:24:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
Compiling .pio\build\digispark-vusb\FrameworkArduino\wiring_analog.c.o
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24:0,
Compiling .pio\build\digispark-vusb\FrameworkArduino\wiring_digital.c.o
Compiling .pio\build\digispark-vusb\FrameworkArduino\wiring_pulse.c.o
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
Compiling .pio\build\digispark-vusb\FrameworkArduino\wiring_shift.c.o
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerialErrors.cpp:24:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\WInterrupts.c:37:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Tone.cpp:41:0:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Tone.cpp: In function 'void tone(uint8_t, unsigned int, long unsigned int)':
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:80:95: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) )
                                                                                               ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Tone.cpp:232:33: note: in expansion of macro 'portOutputRegister'
       tone_timer_pin_register = portOutputRegister( digitalPinToPort( _pin ) );
                                 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\pgmspace.h:90,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:30,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial9600.cpp:24:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\pgmspace.h:90,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:30,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerialErrors.cpp:24:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\WProgram.h:18,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\WString.cpp:21:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\interrupt.h:38,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\WProgram.h:8,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\WString.cpp:21:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:38:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Stream.h:24:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/TinyDebugSerial.h:31,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:18,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\main.cpp:1:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/Print.h:37:0: warning: "BIN" redefined
 #define BIN 2
 ^
In file included from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotn85.h:38:0,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\io.h:428,
                 from c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\interrupt.h:38,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny/WProgram.h:8,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\main.cpp:1:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\iotnx5.h:55:0: note: this is the location of the previous definition
 #define BIN     7
 ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_analog.c:29:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring.c:32:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:274:2: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
  &DDRB,
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:274:2: note: (near initialization for 'port_to_mode_PGM[1]')
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:280:2: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
  &PORTB,
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:280:2: note: (near initialization for 'port_to_output_PGM[1]')
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:286:2: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
  &PINB,
  ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.c:286:2: note: (near initialization for 'port_to_input_PGM[1]')
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_pulse.c:25:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c:28:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_private.h:32:0,
                 from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_shift.c:25:
c:\users\alex\.platformio\packages\toolchain-atmelavr\avr\include\avr\delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>." [-Wcpp]
 #warning "This file has been moved to <util/delay.h>."
  ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_pulse.c:26:0:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_pulse.c: In function 'pulseIn':
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:81:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) )
                                ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_pulse.c:48:11: note: in expansion of macro 'portInputRegister'
  while ((*portInputRegister(port) & bit) == stateMask)
           ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:81:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
Archiving .pio\build\digispark-vusb\libFrameworkArduino.a
 #define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) )
                                ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_pulse.c:53:11: note: in expansion of macro 'portInputRegister'
  while ((*portInputRegister(port) & bit) != stateMask)
           ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:81:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) )
                                ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_pulse.c:58:11: note: in expansion of macro 'portInputRegister'
  while ((*portInputRegister(port) & bit) == stateMask) {
           ^
In file included from C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c:29:0:
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c: In function 'pinMode':
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:82:31: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_mode_PGM + (P))) )
                               ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c:43:8: note: in expansion of macro 'portModeRegister'
  reg = portModeRegister(port);
        ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:80:33: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) )
                                 ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c:44:8: note: in expansion of macro 'portOutputRegister'
  out = portOutputRegister(port);
        ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c: In function 'digitalWrite':
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:80:33: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) )
                                 ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c:127:8: note: in expansion of macro 'portOutputRegister'
  out = portOutputRegister(port);
Linking .pio\build\digispark-vusb\firmware.elf
        ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c: In function 'digitalRead':
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\pins_arduino.h:81:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 #define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) )
                                ^
C:\users\alex\.platformio\packages\framework-arduino-avr-digistump\cores\dtiny\wiring_digital.c:153:7: note: in expansion of macro 'portInputRegister'
  if (*portInputRegister(port) & bit) return HIGH;
       ^
Building .pio\build\digispark-vusb\firmware.hex
Checking size .pio\build\digispark-vusb\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [=         ]  12.1% (used 62 bytes from 512 bytes)
Flash: [===       ]  31.0% (used 1864 bytes from 6012 bytes)
============================================================================================================================================ [SUCCESS] Took 4.77 seconds ============================================================================================================================================
Terminal will be reused by tasks, press any key to close it.
maxgerhardt commented 3 years ago

PlatformIO uses the core versions that are available for the board, they've not written that themselves.

To my knowledge the core is at https://github.com/digistump/DigistumpArduino/. You would need to ask them to fix the errors in their code.

Given that the last update was 4 years ago I don't think they'll respond though. Seems pretty abondend.

But I did stumble upon a forked & improved version of the core: https://github.com/ArminJo/DigistumpArduino.

You can install that in your Arduino IDE and see if the code there works and doesn't have the warnings. Then you can raise a feature request to use that new core.

But after all, these are warnings that can be ignored I think.

anno73 commented 3 years ago

Thanks for the reply and thanks for the link. To be honest, I mistrust code that leaves warnings during compile time. Even if they can be safely ignored - possibly a bad habit of mine. I always fear to overlook something important. Therefore I tried different cores like the trinket and the generic tinyx5 one. In the end I decided to go with a mix:

platform = atmelavr
board = digispark-tiny

board_build.core = tiny
board_build.variant = tinyx5

This works very well for me now.

As of ArminJo's DigistumpArduino core, could you kindly point me to a location describing on how to install a custom core in VSCode/PlatformIO? I'll gladly give it a try then. I also pointed the maintainers to this project if they wanted to have their core added to platformio.

ArminJo commented 3 years ago

I also pointed the maintainers to this project if they wanted to have their core added to platformio.

@maxgerhardt Hi Max, there is a refurbished version of the digispark core, can you tell me the steps to get it integrated in pio for common usage?

maxgerhardt commented 3 years ago

Mainly work has to be done in this repository (platform-atmelavr) to add the board defnitions (in JSON format, boards/) that the core uses (if any new ones are in there), plus for the existing boards that should use this core, the core: attribute needs to be changed. Then a PlatformIO package has to be packaged and published (e.g., the current board defnitions with core:"digistump" use the package framework-arduino-avr-digistump, a new one would have to be created).

A nice-to-have in the repository would just be that it has a package.json file that contains some metainfo (name, version, ..) so that the PlatformIO package can be created without the PlatformIO devs creating that file themselves (see e.g. https://github.com/esp8266/Arduino/blob/master/package.json)

There's also a really hacky way to include a different core. Change what used core value and then inject the package that PlatformIO will be looking for on the fly.

board_build.core = digistump-new
platform_packages = 
   framework-arduino-avr-digistump-new@<repository link that just has the digistump-avr subfolder of new core and package.json>

I'll quickly see what changes need to be done here and check back then.

Edit: Oh I've actually seen that the core already has some packaged versions which seem to be in the PlatformIO format..

maxgerhardt commented 3 years ago

Okay so it's actually much easier than expected to test it. Just use a platform_packages directive (docs) to overwrite the framework-arduino-avr-digistump package from a zip package that already exists in the Platform.

Tested with

[env:digispark-tiny]
platform = atmelavr
board = digispark-tiny
framework = arduino
platform_packages = 
    framework-arduino-avr-digistump@https://github.com/ArminJo/DigistumpArduino/raw/master/framework-arduino-avr-digistump-1.7.0.zip

and it builds without warnings, uploads and runs on my Digispark USB device. Tested a simple Blinky.

Others should be able to test the core too that way.

@ArminJo can you create a framework-arduino-avr-digistump-1.7.1.zip just like you did with 1.7.0? Then the PlatformIO developers should be able to integrate that package pretty easily here.

anno73 commented 3 years ago

Tested it on my source too and compiles w/o any issues. Final code is even a bit smaller: tiny/tinyx5: 5628 ArminJo: 5482 Also ram usage is slightly smaller by some bytes. Deployed code does not show any issues on modules aswell.

ArminJo commented 3 years ago

@maxgerhardt Thanks for the advice. I created a new zip https://github.com/ArminJo/DigistumpArduino/blob/master/framework-arduino-avr-digistump-1.7.1.zip.

But what's about the new micronucleus binaries for the different OS? How are they upgraded?

maxgerhardt commented 3 years ago

But what's about the new micronucleus binaries for the different OS? How are they upgraded?

For that you would have to create a package (see above links with pio package pack, again needs a package.json) file that has has the right binaries in it.

PlatformIO sticks the Micronucleus upload tool in a tool-micronucleus package with content (for Windows)

grafik

(Linux has only a folder with just the micronucleus binary).

See https://bintray.com/platformio/tool-packages and search for "tool-micronucleus". A reference package.json for that would e.g. be

{
  "name": "tool-micronucleus",
  "version": "1.200.4",
  "description": "ATTiny usb bootloader with a strong emphasis on bootloader compactness",
  "keywords": [
    "tools",
    "uploader"
  ],
  "license": "GPL-2.0-or-later",
  "system": [
    "linux_x86_64"
  ],
  "repository": {
    "type": "git",
    "url": "https://github.com/micronucleus/micronucleus"
  }
}

Whereas the 200 encodes version 2.0.0 btw.

So the uploaded archives at https://github.com/ArminJo/DigistumpArduino/tree/master/tools are almost perfect, they're just missing the package.json in them with the meta-inofrmation for version and system updated. You can pull the package.json for every system / OS from the bintray above and update the version and stick it in your own archive files, e.g.

A created archive can then also be tested by again using platform_packages with like

[env:digispark-tiny]
platform = atmelavr
board = digispark-tiny
framework = arduino
platform_packages = 
    framework-arduino-avr-digistump@https://github.com/ArminJo/DigistumpArduino/raw/master/framework-arduino-avr-digistump-1.7.1.zip
    tool-micronucleus@https://github.com/ArminJo/DigistumpArduino/raw/master/tools/micronucleus-2.0a4-win.zip

(example).

ArminJo commented 3 years ago

OK Thanks, What is the exact semanics of the version field? micronucleus currently has version 2.5.

maxgerhardt commented 3 years ago

It's using semver / semantic versioning. Here's an example and explanation. For version 2.5 i'd encode it as 1.205.4 or 1.20500.4 (2.5.0). The last field is pretty much always used as a datecode though, e.g. 210207 encoding 2021-02 (Feb.)-07.

When you use the package in PlatformIO per example above and compile any project, PlatformIO will also tell you how it's decoded the inner version at the start of the output, e.g.

PACKAGES:
 - framework-arduino-avr-digistump 1.7.0        
 - tool-micronucleus 1.200.4 (2.0)
 - toolchain-atmelavr 1.50400.190710 (5.4.0)    
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
ArminJo commented 3 years ago

@maxgerhardt Ok I prepared the tools zip files. I am not quite sure if the windows USB driver installation files should be a part of the zip, since I have no idea how one would install the Digispark core for windows. Is there an autoexec for the old install.exe or so? Or is the user aware that there is an install.exe he must execute?

@anno73 what would you suggest?

As told, I use Eclipse and Sloeber, and have no experience with PIO.

maxgerhardt commented 3 years ago

Is there an autoexec for the old install.exe or so? Or is the user aware that there is an install.exe he must execute?

The drivers are not auto-installed, they are just referenced in documentation so that users can install it themselves.

ArminJo commented 3 years ago

Thanks! Then I will test it first on a fresh W10 system.

anno73 commented 3 years ago

@maxgerhardt

I created a new zip https://github.com/ArminJo/DigistumpArduino/blob/master/framework-arduino-avr-digistump-1.7.1.zip.

I updated to v1.7.1. Upon first compile I get following errors:

> Executing task in folder relay: C:\Users\alex\.platformio\penv\Scripts\pio.exe run <

Processing DigistumpArduino (platform: atmelavr; board: digispark-tiny; framework: arduino)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Tool Manager: Installing https://github.com/ArminJo/DigistumpArduino/raw/master/framework-arduino-avr-digistump-1.7.1.zip
Unpacking  [####################################]  100%
Tool Manager: framework-arduino-avr-digistump @ 1.7.1 has been installed!
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/atmelavr/digispark-tiny.html
PLATFORM: Atmel AVR (3.1.0) > Digispark USB
HARDWARE: ATTINY85 16MHz, 512B RAM, 5.87KB Flash
DEBUG: Current (simavr) On-board (simavr)
PACKAGES:
 - toolchain-atmelavr 1.50400.190710 (5.4.0)
TypeError: _isdir: path should be string, bytes or os.PathLike, not NoneType:
  File "C:\users\alex\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 177:
    env.SConscript("$BUILD_SCRIPT")
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Script\SConscript.py", line 591:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Script\SConscript.py", line 280:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "C:\users\alex\.platformio\platforms\atmelavr\builder\main.py", line 162:
    target_elf = env.BuildProgram()
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Util.py", line 658:
    return self.method(*nargs, **kwargs)
  File "C:\users\alex\.platformio\penv\lib\site-packages\platformio\builder\tools\platformio.py", line 61:
    env.ProcessProgramDeps()
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Util.py", line 658:
    return self.method(*nargs, **kwargs)
  File "C:\users\alex\.platformio\penv\lib\site-packages\platformio\builder\tools\platformio.py", line 127:
    env.BuildFrameworks(env.get("PIOFRAMEWORK"))
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Util.py", line 658:
    return self.method(*nargs, **kwargs)
  File "C:\users\alex\.platformio\penv\lib\site-packages\platformio\builder\tools\platformio.py", line 342:
    SConscript(env.GetFrameworkScript(f), exports="env")
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Script\SConscript.py", line 654:
    return method(*args, **kw)
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Script\SConscript.py", line 591:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\alex\.platformio\packages\tool-scons\scons-local-4.1.0\SCons\Script\SConscript.py", line 280:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "C:\users\alex\.platformio\platforms\atmelavr\builder\frameworks\arduino.py", line 43:
    assert isdir(FRAMEWORK_DIR)
============================================================================================================================================ [FAILED] Took 7.95 seconds ============================================================================================================================================ 
The terminal process "C:\Users\alex\.platformio\penv\Scripts\pio.exe 'run'" terminated with exit code: 1.

Terminal will be reused by tasks, press any key to close it.

Second compile then works nice again.

Is this an issue of PIO or the v1.7.1 package? I think I had the same issue with initially changing to v1.7.0.

anno73 commented 3 years ago

@anno73 what would you suggest?

As told, I use Eclipse and Sloeber, and have no experience with PIO.

@ArminJo I have no idea as I am not a DEV of PlatformIO but just a user ^.^ But I have seen you got an answer on this from maxgerhardt already :-)

bablokb commented 3 years ago

So I followed the instructions from @maxgerhardt :

Now I'm almost there, there is only one error left:

Configuring upload protocol...
AVAILABLE: micronucleus
CURRENT: upload_protocol = micronucleus
Uploading .pio/build/digispark-tiny/firmware.hex
Unrecognized option: -c
*** [upload] Error 1

If I manually call the now unpacked and updated micronucleus to upload the hex, everything works fine. So how do I convince pio that micronucleus now uses different commandline options?

maxgerhardt commented 3 years ago

Unrecognized option: -c

Ah, that doesn't work anymore with -c? The current code does

https://github.com/platformio/platform-atmelavr/blob/dec3edd5f16c79a62bcc91fed7d04618b04721fe/builder/main.py#L184-L192

So to fix that there are two options:

  1. Correct the code to use the correct parameters (C:\Users\<user>\.platformio\platforms\atmelavr\builder\main.py)
  2. Use a custom upload_cmd in the platformio.ini

In general you would add

upload_protocol = custom
upload_flags =
    -flag
    value1
    --flag-2
    value 2
upload_command = upload-executable $UPLOAD_FLAGS $SOURCE

the $SOURCE will automatically evaluate to teh uploaded firmware, and $UPLOAD_FLAGS will evaluate what you will have written in upload_flags. Each flag / value needs to be newline-separated and indented.

If I read docs correctly it should need a

upload_protocol = custom
upload_flags =
   --no-ansi
   --run
   --timeout
   60
upload_command = $PROJECT_PACKAGES_DIR/tool-micronucleus/micronucleus $UPLOAD_FLAGS $SOURCE

so that will call micronucleus --run <firmware.hex>.

Check that the installed micronucleos tool is in C:\Users\Max\.platformio\packages\ though, if you have an older and a newer version installed there might be tool-micronucleos@xyz folders too.

ArminJo commented 3 years ago

@maxgerhardt for the new versions, the correct commandline would be: --no-ansi --run --timeout 60 {build.path}/{build.project_name}.hex see https://github.com/ArminJo/DigistumpArduino/blob/c41f52111c7f3cd0b3f961be3f890955cae4ef8c/digistump-avr/platform.txt#L100 The old one of the so called "launcher" was : -cdigispark --timeout 60 -Uflash:w:{build.path}/{build.project_name}.hex:i How can we address this change? It is the same upload_protocol name.

maxgerhardt commented 3 years ago

I'll open a proper issue or PR for full-integration of the new core, then that will be directly addressed in the platform code.

bablokb commented 3 years ago

Works perfect. I'm looking forward to the integration into pio, but this is a usable workaround. Thank you all.

maxgerhardt commented 3 years ago

Feature request opened as linked above this comment.