[Known issue] MigthyCore project, bad vector defined?

Hi everyone,

I’m trying to update a project using the mightyCore firmware on an ATmega1284p.

I’ve already open an issue on the github project but I’m not sure where is the problem.

I’ve completed my platformio.ini as the developper’s example:

; PlatformIO Project Configuration File
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html

platform = atmelavr
framework = arduino

; PlatformIO requires the board parameter. Must match your actual hardware
board = mightycore1284
; Actual target
board_build.mcu = atmega1284p
; Clock frequency in [Hz]
board_build.f_cpu = 16000000L

; Current pinout
board_build.variant = mightycore_bobuino
; Comment out to enable LTO (this line unflags it)
build_unflags = -flto
; Extra build flags
build_flags =

; Upload serial port is automatically detected by default. Override by uncommenting the line below
;upload_port = /dev/cu.usbserial*
; Upload baud rate
board_upload.speed = 115200

; Upload using programmer
;upload_protocol = usbasp
; Aditional upload flags
;upload_flags = -Pusb

; Monitor and upload port is the same by default
;monitor_port =
; Serial monitor baud rate
monitor_speed = 9600

framework = arduino
lib_deps =

But now, when I try to compile, I can see the Wire1.h :

Dependency Graph

|-- <Rtc_Pcf8563> #b998b65 [git+https://gitlab.com/gilou_/Rtc_Pcf8563.git] (/home/gilou/Documents/PlatformIO/Projects/test_new_migthy/.piolibdeps/Rtc_
|   |-- <Wire> 1.0 (/home/gilou/.platformio/packages/framework-arduinoavr/libraries/__cores__/MightyCore/Wire)
|   |   |-- <Wire1> 1.0 (/home/gilou/.platformio/packages/framework-arduinoavr/libraries/__cores__/MightyCore/Wire1) 

But the atmega1284p as only one twi and I can’t found where is defined in my project :

But it’s wired because my mcu is defined as atmega1284p and the TWI_vect is normally availlable in iom328pb.h/io55702m322.h/iom324pb.h

as :

/home/gilou/.platformio/packages/framework-arduinoavr/libraries/__cores__/MightyCore/Wire/src/Wire.h:30:#if defined(TWI1_vect)
/home/gilou/.platformio/packages/toolchain-atmelavr/avr/include/avr/iom328pb.h:1093:#define TWI1_vect            _VECTOR(40)
/home/gilou/.platformio/packages/toolchain-atmelavr/avr/include/avr/ioa5702m322.h:2534:#define TWI1_vect            _VECTOR(48)
/home/gilou/.platformio/packages/toolchain-atmelavr/avr/include/avr/iom324pb.h:1183:#define TWI1_vect            _VECTOR(42)

Have you an idea?
I can’t find a way to track were is declared in my tree dependencies program


I’ve comment the 3 lines

#if defined(TWI1_vect)
   #include <Wire1.h>

in the Wire.h file from the MigthyCore Wire library, so the problem is really, why the TWI1_vect is define for this mcu and where?

Issue already know there : https://github.com/platformio/platform-atmelavr/issues/141

Thanks for the update! :slight_smile: