Any general discussion around the firmware, what is does, how it does it etc.
User avatar
By jonbill
#67790
I believe those errors are because the SPI API got refactored in the STM platform. Speeduino was updated to the new API for 202402.
To build prior speeduino versions, you have to specify the previous version of the platform package.
one of these two: (I don't know which, and can't remember what the other was for :))

platform_packages = framework-arduinoststm32@~4.20600.0, framework-cmsis@~2.50700.0
User avatar
By moussie369
#67791
(Tell me if I should upload errors within a text file instead of pasting them directly)

It looks like I missed part of the error for 202202, here's the full version :

.pio\libdeps\black_F407VE\STM32duino RTC\src\STM32RTC.cpp:160:2: warning: #warning "only BCD mode is supported" [-Wcpp]
160 | #warning "only BCD mode is supported"
| ^~~~~~~
Compiling .pio\build\black_F407VE\lib790\Wire\Wire.cpp.o
speeduino\comms.cpp: In function 'void sendPageASCII()':
speeduino\comms.cpp:927:40: warning: taking address of packed member of 'config2' may result in an unaligned pointer value [-Waddress-of-packed-member]
927 | serial_println_range(configPage2.injAng, configPage2.injAng + _countof(configPage2.injAng));
| ~~~~~~~~~~~~^~~~~~
speeduino\src\FRAM\Fram.cpp: In member function 'void FramClass::setClock(uint32_t)':
speeduino\src\FRAM\Fram.cpp:118:24: error: no matching function for call to 'SPIClass::beginTransaction(uint8_t&, SPISettings&)'
118 | spi->beginTransaction(csPin, FRAMSettings);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from speeduino\src\FRAM\Fram.h:25,
from speeduino\src\FRAM\Fram.cpp:25:
C:\Users\titou\.platformio\packages\framework-arduinoststm32\libraries\SPI\src/SPI.h:131:10: note: candidate: 'void SPIClass::beginTransaction(SPISettings)'
131 | void beginTransaction(SPISettings settings);
| ^~~~~~~~~~~~~~~~
C:\Users\titou\.platformio\packages\framework-arduinoststm32\libraries\SPI\src/SPI.h:131:10: note: candidate expects 1 argument, 2 provided
Compiling .pio\build\black_F407VE\lib790\Wire\utility\twi.c.o
speeduino\src\FRAM\Fram.cpp: In member function 'uint8_t FramClass::spiSend(uint8_t)':
speeduino\src\FRAM\Fram.cpp:324:45: error: 'SPI_CONTINUE' was not declared in this scope
324 | else { reply = spi->transfer(csPin, data, SPI_CONTINUE); }
| ^~~~~~~~~~~~
speeduino\src\FRAM\Fram.cpp: In member function 'uint16_t FramClass::spiSend16(uint16_t)':
speeduino\src\FRAM\Fram.cpp:349:47: error: 'SPI_CONTINUE' was not declared in this scope
349 | else { reply = spi->transfer16(csPin, data, SPI_CONTINUE); }
| ^~~~~~~~~~~~
*** [.pio\build\black_F407VE\src\src\FRAM\Fram.cpp.o] Error 1
C:/Users/titou/Desktop/205/elec/ECU/code/speeduino-202202/speeduino/auxiliaries.ino:15:102: warning: taking address of packed member of 'config10' may result in an unaligned pointer value [-Waddress-of-packed-member]
15 | integerPID_ideal boostPID(&currentStatus.MAP, &currentStatus.boostDuty , &currentStatus.boostTarget, &configPage10.boostSens, &configPage10.boostIntv, configPage6.boostKP, configPage6.boostKI, configPage6.boostKD, DIRECT); //This is the PID object if that algorithm is used. Needs to be global as it maintains state outside of each function call
| ^~~~~~~~~~~~~~~~~~~~~~~

In any case framework-cmsis@~2.50700.0 gives the same result and the other one fails too, here's the error (sorry I didn't remove the "working" part) :

.pio\libdeps\black_F407VE\STM32duino RTC\src\STM32RTC.cpp:160:2: warning: #warning "only BCD mode is supported" [-Wcpp]
160 | #warning "only BCD mode is supported"
| ^~~~~~~
Compiling .pio\build\black_F407VE\libafd\SPI\SPI.cpp.o
speeduino\comms.cpp: In function 'void sendPageASCII()':
speeduino\comms.cpp:927:40: warning: taking address of packed member of 'config2' may result in an unaligned pointer value [-Waddress-of-packed-member]
927 | serial_println_range(configPage2.injAng, configPage2.injAng + _countof(configPage2.injAng));
| ~~~~~~~~~~~~^~~~~~
Compiling .pio\build\black_F407VE\libafd\SPI\utility\spi_com.c.o
Compiling .pio\build\black_F407VE\lib1d6\Wire\Wire.cpp.o
Compiling .pio\build\black_F407VE\lib1d6\Wire\utility\twi.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\HardwareSerial.cpp.o
C:/Users/titou/Desktop/205/elec/ECU/code/speeduino-202202/speeduino/auxiliaries.ino:15:102: warning: taking address of packed member of 'config10' may result in an unaligned pointer value [-Waddress-of-packed-member]
15 | integerPID_ideal boostPID(&currentStatus.MAP, &currentStatus.boostDuty , &currentStatus.boostTarget, &configPage10.boostSens, &configPage10.boostIntv, configPage6.boostKP, configPage6.boostKI, configPage6.boostKD, DIRECT); //This is the PID object if that algorithm is used. Needs to be global as it maintains state outside of each function call
| ^~~~~~~~~~~~~~~~~~~~~~~
Compiling .pio\build\black_F407VE\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\Print.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\RingBuffer.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\Stream.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\Tone.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\USBSerial.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\VirtIOSerial.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WInterrupts.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WMath.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WSerial.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WString.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\abi.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\avr\dtostrf.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\board.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\core_debug.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\hooks.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\itoa.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\main.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\pins_arduino.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\device.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\condition.c.o
Archiving .pio\build\black_F407VE\libc02\libSTM32duino RTC.a
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\cortexm\sys.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_device.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_init.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_io.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_shmem.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\time.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\init.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\io.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\log.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\shmem.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\mbox_ipcc.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\open-amp\remoteproc\remoteproc_virtio.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg.c.o
Archiving .pio\build\black_F407VE\libafd\libSPI.a
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg_virtio.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\openamp.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\rsc_table.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virt_uart.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio\virtio.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio\virtqueue.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio_buffer.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio_log.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\startup_stm32yyxx.S.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\cdc\cdc_queue.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\cdc\usbd_cdc.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\cdc\usbd_cdc_if.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\hid\usbd_hid_composite.c.o
Archiving .pio\build\black_F407VE\lib1d6\libWire.a
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\hid\usbd_hid_composite_if.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usb_device_core.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usb_device_ctlreq.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usb_device_ioreq.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_conf.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_desc.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_ep_conf.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_if.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_analog.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_digital.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_pulse.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_shift.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_time.c.o
Archiving .pio\build\black_F407VE\libFrameworkArduino.a
Linking .pio\build\black_F407VE\firmware.elf
c:/users/titou/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/bin/ld.exe: cannot find -larm_cortexM4lf_math: No such file or directory
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\black_F407VE\firmware.elf] Error 1
By GustavoRinaldi
#68043
moussie369 wrote: Tue Apr 02, 2024 6:00 pm (Tell me if I should upload errors within a text file instead of pasting them directly)

It looks like I missed part of the error for 202202, here's the full version :

.pio\libdeps\black_F407VE\STM32duino RTC\src\STM32RTC.cpp:160:2: warning: #warning "only BCD mode is supported" [-Wcpp]
160 | #warning "only BCD mode is supported"
| ^~~~~~~
Compiling .pio\build\black_F407VE\lib790\Wire\Wire.cpp.o
speeduino\comms.cpp: In function 'void sendPageASCII()':
speeduino\comms.cpp:927:40: warning: taking address of packed member of 'config2' may result in an unaligned pointer value [-Waddress-of-packed-member]
927 | serial_println_range(configPage2.injAng, configPage2.injAng + _countof(configPage2.injAng));
| ~~~~~~~~~~~~^~~~~~
speeduino\src\FRAM\Fram.cpp: In member function 'void FramClass::setClock(uint32_t)':
speeduino\src\FRAM\Fram.cpp:118:24: error: no matching function for call to 'SPIClass::beginTransaction(uint8_t&, SPISettings&)'
118 | spi->beginTransaction(csPin, FRAMSettings);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from speeduino\src\FRAM\Fram.h:25,
from speeduino\src\FRAM\Fram.cpp:25:
C:\Users\titou\.platformio\packages\framework-arduinoststm32\libraries\SPI\src/SPI.h:131:10: note: candidate: 'void SPIClass::beginTransaction(SPISettings)'
131 | void beginTransaction(SPISettings settings);
| ^~~~~~~~~~~~~~~~
C:\Users\titou\.platformio\packages\framework-arduinoststm32\libraries\SPI\src/SPI.h:131:10: note: candidate expects 1 argument, 2 provided
Compiling .pio\build\black_F407VE\lib790\Wire\utility\twi.c.o
speeduino\src\FRAM\Fram.cpp: In member function 'uint8_t FramClass::spiSend(uint8_t)':
speeduino\src\FRAM\Fram.cpp:324:45: error: 'SPI_CONTINUE' was not declared in this scope
324 | else { reply = spi->transfer(csPin, data, SPI_CONTINUE); }
| ^~~~~~~~~~~~
speeduino\src\FRAM\Fram.cpp: In member function 'uint16_t FramClass::spiSend16(uint16_t)':
speeduino\src\FRAM\Fram.cpp:349:47: error: 'SPI_CONTINUE' was not declared in this scope
349 | else { reply = spi->transfer16(csPin, data, SPI_CONTINUE); }
| ^~~~~~~~~~~~
*** [.pio\build\black_F407VE\src\src\FRAM\Fram.cpp.o] Error 1
C:/Users/titou/Desktop/205/elec/ECU/code/speeduino-202202/speeduino/auxiliaries.ino:15:102: warning: taking address of packed member of 'config10' may result in an unaligned pointer value [-Waddress-of-packed-member]
15 | integerPID_ideal boostPID(&currentStatus.MAP, &currentStatus.boostDuty , &currentStatus.boostTarget, &configPage10.boostSens, &configPage10.boostIntv, configPage6.boostKP, configPage6.boostKI, configPage6.boostKD, DIRECT); //This is the PID object if that algorithm is used. Needs to be global as it maintains state outside of each function call
| ^~~~~~~~~~~~~~~~~~~~~~~

In any case framework-cmsis@~2.50700.0 gives the same result and the other one fails too, here's the error (sorry I didn't remove the "working" part) :

.pio\libdeps\black_F407VE\STM32duino RTC\src\STM32RTC.cpp:160:2: warning: #warning "only BCD mode is supported" [-Wcpp]
160 | #warning "only BCD mode is supported"
| ^~~~~~~
Compiling .pio\build\black_F407VE\libafd\SPI\SPI.cpp.o
speeduino\comms.cpp: In function 'void sendPageASCII()':
speeduino\comms.cpp:927:40: warning: taking address of packed member of 'config2' may result in an unaligned pointer value [-Waddress-of-packed-member]
927 | serial_println_range(configPage2.injAng, configPage2.injAng + _countof(configPage2.injAng));
| ~~~~~~~~~~~~^~~~~~
Compiling .pio\build\black_F407VE\libafd\SPI\utility\spi_com.c.o
Compiling .pio\build\black_F407VE\lib1d6\Wire\Wire.cpp.o
Compiling .pio\build\black_F407VE\lib1d6\Wire\utility\twi.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\HardwareSerial.cpp.o
C:/Users/titou/Desktop/205/elec/ECU/code/speeduino-202202/speeduino/auxiliaries.ino:15:102: warning: taking address of packed member of 'config10' may result in an unaligned pointer value [-Waddress-of-packed-member]
15 | integerPID_ideal boostPID(&currentStatus.MAP, &currentStatus.boostDuty , &currentStatus.boostTarget, &configPage10.boostSens, &configPage10.boostIntv, configPage6.boostKP, configPage6.boostKI, configPage6.boostKD, DIRECT); //This is the PID object if that algorithm is used. Needs to be global as it maintains state outside of each function call
| ^~~~~~~~~~~~~~~~~~~~~~~
Compiling .pio\build\black_F407VE\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\Print.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\RingBuffer.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\Stream.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\Tone.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\USBSerial.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\VirtIOSerial.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WInterrupts.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WMath.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WSerial.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\WString.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\abi.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\avr\dtostrf.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\board.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\core_debug.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\hooks.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\itoa.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\main.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\pins_arduino.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\device.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\condition.c.o
Archiving .pio\build\black_F407VE\libc02\libSTM32duino RTC.a
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\cortexm\sys.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_device.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_init.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_io.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_shmem.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\generic\time.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\init.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\io.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\log.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\libmetal\shmem.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\mbox_ipcc.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\open-amp\remoteproc\remoteproc_virtio.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg.c.o
Archiving .pio\build\black_F407VE\libafd\libSPI.a
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg_virtio.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\openamp.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\rsc_table.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virt_uart.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio\virtio.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio\virtqueue.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio_buffer.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\OpenAMP\virtio_log.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\startup_stm32yyxx.S.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\cdc\cdc_queue.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\cdc\usbd_cdc.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\cdc\usbd_cdc_if.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\hid\usbd_hid_composite.c.o
Archiving .pio\build\black_F407VE\lib1d6\libWire.a
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\hid\usbd_hid_composite_if.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usb_device_core.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usb_device_ctlreq.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usb_device_ioreq.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_conf.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_desc.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_ep_conf.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\stm32\usb\usbd_if.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_analog.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_digital.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_pulse.cpp.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_shift.c.o
Compiling .pio\build\black_F407VE\FrameworkArduino\wiring_time.c.o
Archiving .pio\build\black_F407VE\libFrameworkArduino.a
Linking .pio\build\black_F407VE\firmware.elf
c:/users/titou/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/bin/ld.exe: cannot find -larm_cortexM4lf_math: No such file or directory
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\black_F407VE\firmware.elf] Error 1
Did you ever get to fix it?
User avatar
By moussie369
#68046
Not yet, I have been too busy to look into it but I might work on it this weekend if I have enough time.
I also got the supplies to make a new gasket so I'll try on the "real" board, if I can dump what's currently on it (maybe I can do it via stm32cube), so that'll be one less variable for my problems with the latest release
User avatar
By moussie369
#68071
So here's a little update on the subject of my past few messages.
I didn't change anything and I don't know why but now the newer releases are working, I can build them no problem and they run just fine on both the VET6 and the ZGT6, my best guess is that the whole problem was caused by something within VScode or Platformio.
I won't even try to build the older releases because the very idea that it might work just fine without me changing anything after spending time on it would just give me the urge to commit war crimes and unthinkable things to my computer and to the boards.
At least my main board is up to date now, so I'll be able to confirm that my ignition gremlins aren't software related (it is drifting and loosing sync at ~5400rpm but I'm fairly sure it is hardware related).
By ruckusman
#68195
I'm very interested in your Spectre board - I've been going through various user designed boards and the Spectre board suits my needs.

Where did you obtain yours, did you get it made directly or purchase it from elsewhere.
User avatar
By moussie369
#68196
I downloaded the project's files from Tjeerdie's github and ordered a batch of PCBs via PCB Way (or maybe another service provider I don't remember), I got the components from various sources (Mouser, RS Components, etc) and assembled it myself (I have a small hot air station, it would be quite a pain to assemble it with a soldering iron).
By ruckusman
#68209
Thanks, I'd already cloned the github repository.

I'm fumbling my way through with this, not a NOOB with electronics but it's my first go at ordering a PCB.
Fortunately I do have a hot air pencil, I wouldn't contemplate populating this board with the SMD components otherwise.

So I'm working towards being less clueless..

I did find the gerber files for for version 0.5.3 and an online gerber viewer.

Did you order an SMD solder paste application screen also?
User avatar
By moussie369
#68212
I did it without a screen and applied it manually (the soldering paste is dispensed in some kind of "syringe" so it's easy to control the amount you apply) but I think if given the choice I'd use one, because you can make sure you use only the right amount and therefore make a cleaner job (I don't think it's that expensive to get them made when you order the raw boards), but keep in mind you may want to solder everything at the same time if using a screen so organize everything in advance
By ruckusman
#68214
That's a mammoth effort - well done.

Out of interest, which version of the PCB did you order?

Just looking at the file(s) in the repository I cannot discern the differences between them.

I'm updating my very old Mac to be able to install Kicad to open the project files and get it uploaded onto PCBWay.

It's a very well optioned board for 4 cylinder dual injector builds - surprised more of the motorbike guys aren't onto it.
  • 1
  • 28
  • 29
  • 30
  • 31
  • 32
1-Wire temp sensor

The max31855 supports thermocouples in 1-wire co[…]

BMW E23 M30B28

I think I already tuned the idle at warm engine pr[…]

I didn't watch all of it, there were far too many […]

Hello everyone. Im currently waiting for my spee[…]

Still can't find what you're looking for?