huge update! congrats on new objects and fixes! Really enjoying the release!
Axoloti release 1.0.12
Is patch bank upload or controller object functionality broken somehow?
I'm trying to upload patch bank with controller object in 1.0.12
When I restart Axoloti Board nothing happens.
Axoloti says:
file error: FR_NO_FILE, filename:"/START.BIN"
While uploading patch bank Axoloti says:
Uploading patch bank file Compiling and uploading : 8ap-loop-plus2MIDI.axp Using controller object: controller/buttsnpngnchng Unable to created controller for : controller/buttsnpngnchng Generate code complete sdcard filename:/8ap-loop-plus2MIDI/patch.bin Compiling and uploading : LushFDNMIDI.axp Using controller object: controller/buttsnpngnchng Unable to created controller for : controller/buttsnpngnchng Generate code complete sdcard filename:/LushFDNMIDI/patch.bin Compiling and uploading : 4layergranulator-extMIDI.axp Using controller object: controller/buttsnpngnchng Unable to created controller for : controller/buttsnpngnchng Generate code complete sdcard filename:/4layergranulator-extMIDI/patch.bin Compiling and uploading : GrainverbMIDI.axp Using controller object: controller/buttsnpngnchng Unable to created controller for : controller/buttsnpngnchng Generate code complete sdcard filename:/GrainverbMIDI/patch.bin Compiling and uploading : BodeBBD-MIDI.axp Using controller object: controller/buttsnpngnchng Unable to created controller for : controller/buttsnpngnchng Generate code complete sdcard filename:/BodeBBD-MIDI/patch.bin Compiling and uploading : GrainFreezeMIDI.axp Using controller object: controller/buttsnpngnchng Unable to created controller for : controller/buttsnpngnchng Generate code complete sdcard filename:/GrainFreezeMIDI/patch.bin Patch bank uploaded Start uploading file to sdcard : /index.axb uploading: /index.axb uploading : 100% Done uploading file Start compiling patch BDIR = C:\Users\palkin\DOCUME~1\axoloti/build FIRMWARE = . RM APP ! C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.h.gch LINK BIN Done compiling patch Creating directory on sdcard : /8ap-loop-plus2MIDI Done creating directory Start uploading file to sdcard : /8ap-loop-plus2MIDI/patch.bin uploading: /8ap-loop-plus2MIDI/patch.bin uploading : 100% Done uploading file Start compiling patch BDIR = C:\Users\palkin\DOCUME~1\axoloti/build FIRMWARE = . RM APP ! C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.h.gch C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap1::instanceallpass__1::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:2880:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap1::instanceallpass__3::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:2917:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap1::instanceallpass__4::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:2954:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap1::instanceallpass__2::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:2991:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap2::instanceallpass__1::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:3898:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap2::instanceallpass__3::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:3935:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap2::instanceallpass__4::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:3972:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap2::instanceallpass__2::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:4009:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap3::instanceallpass__1::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:4916:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap3::instanceallpass__3::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:4953:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap3::instanceallpass__4::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:4990:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap3::instanceallpass__2::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:5027:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap4::instanceallpass__1::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:5934:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap4::instanceallpass__3::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:5971:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap4::instanceallpass__4::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:6008:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancefdn_dash_container::instanceap4::instanceallpass__2::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:6045:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ LINK BIN Done compiling patch Creating directory on sdcard : /LushFDNMIDI Done creating directory Start uploading file to sdcard : /LushFDNMIDI/patch.bin uploading: /LushFDNMIDI/patch.bin uploading : 77% uploading : 100% Done uploading file Start compiling patch BDIR = C:\Users\palkin\DOCUME~1\axoloti/build FIRMWARE = . RM APP ! C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.h.gch LINK BIN Done compiling patch Creating directory on sdcard : /4layergranulator-extMIDI Done creating directory Start uploading file to sdcard : /4layergranulator-extMIDI/patch.bin uploading: /4layergranulator-extMIDI/patch.bin uploading : 100% Done uploading file Start compiling patch BDIR = C:\Users\palkin\DOCUME~1\axoloti/build FIRMWARE = . RM APP ! C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.h.gch C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancepatcher__1::instanceallpass__1::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:647:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancepatcher__1::instanceallpass__2::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:684:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp: In member function 'void rootc::instancepatcher__1::instanceallpass__3::dsp(const int32_t*, int32_t (&)[16], int)': C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.cpp:721:23: warning: integer overflow in expression [-Woverflow] int32_t g2c = ((1<<31)-1)-g2; ^ LINK BIN Done compiling patch Creating directory on sdcard : /GrainverbMIDI Done creating directory Start uploading file to sdcard : /GrainverbMIDI/patch.bin uploading: /GrainverbMIDI/patch.bin uploading : 100% Done uploading file Start compiling patch BDIR = C:\Users\palkin\DOCUME~1\axoloti/build FIRMWARE = . RM APP ! C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.h.gch LINK BIN Done compiling patch Creating directory on sdcard : /BodeBBD-MIDI Done creating directory Start uploading file to sdcard : /BodeBBD-MIDI/patch.bin uploading: /BodeBBD-MIDI/patch.bin uploading : 100% Done uploading file Start compiling patch BDIR = C:\Users\palkin\DOCUME~1\axoloti/build FIRMWARE = . RM APP ! C:\Users\palkin\DOCUME~1\axoloti/build/xpatch.h.gch LINK BIN Done compiling patch Creating directory on sdcard : /GrainFreezeMIDI Done creating directory Start uploading file to sdcard : /GrainFreezeMIDI/patch.bin uploading: /GrainFreezeMIDI/patch.bin uploading : 100% Done uploading file Start uploading file to sdcard : /index.axb uploading: /index.axb uploading : 100% Done uploading file
Controller object worked fine in 1.0.11
After some unobvious manipulations Axo started using controller object
...Compiling and uploading : LushFDNMIDI.axp
Using controller object: controller/buttsnpgnchng...
But it doesn't start with working patch from patch bank in live mode.
i'm getting this on a regular base with 1.0.12
the patch loads, and i can play my synth by usb-midi, but the patcher disconnects from the axo core each time...
Starting patch...
patch start taking too long, disconnecting
Disconnect request
Done starting patch
@xoanxil Ive moved your posts regarding controllers objects to a new post, since its not really an issue with 1.0.12,
you can click on the link below to find it.
17 posts were split to a new topic: Using controller object to switch patches
Getting this error (when going live with combfilter demo):
C:\Users.....\DOCUME~1\axoloti/build/xpatch.cpp:819:47: error: 'sdram_init' was not declared in this scope
sdram_init(&sdramdyn_start,&sdramdyn_end);
@DragonSF Id suspect it was an inconsistency with the precompiled header vs firmware , if it happens again less us know... hard to say why, without more details.
if it happens again, you should find reinstallation is unnecessary, instead simply delete documents/axoloti/build.
I was also getting the same error on one of my computer.
I erased the user folder, error is gone bur I get this
Generate code complete
Creating directory on sdcard : /drsampl5
Done creating directory
Changing working directory on sdcard : /drsampl5
Done changing working directory
Start compiling patch
Compiling patch... with /Applications/Axoloti.app/Contents/Java/firmware
BDIR = /Users/krikor/Documents/axoloti/build
FIRMWARE = .
Build precompiled header
arm-none-eabi-g++ -nostdlib -fno-exceptions -fno-rtti -mcpu=cortex-m4 -O3 -fomit-frame-pointer -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wunused-parameter -DCORTEX_USE_FPU=TRUE -DTHUMB_PRESENT -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB -std=c++11 -DARM_MATH_CM4 -D__FPU_PRESENT -fno-math-errno -fno-threadsafe-statics -fno-use-cxa-atexit -Wno-unused-parameter -I/Applications/Axoloti.app/Contents/Java/CMSIS/Include -I/Applications/Axoloti.app/Contents/Java/CMSIS/DSP_Lib/Include -I/Applications/Axoloti.app/Contents/Java/chibios/os/ports/common/ARMCMx/CMSIS/include -I/Applications/Axoloti.app/Contents/Java/chibios/os/ports/common/ARMCMx -I/Applications/Axoloti.app/Contents/Java/chibios/os/ports/GCC/ARMCMx -I/Applications/Axoloti.app/Contents/Java/chibios/os/ports/GCC/ARMCMx/STM32F4xx -I/Applications/Axoloti.app/Contents/Java/chibios/os/kernel/include -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/include -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32F4xx -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/GPIOv2 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/I2Cv1 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/OTGv1 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/RTCv2 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/SPIv1 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/TIMv1 -I/Applications/Axoloti.app/Contents/Java/chibios/os/hal/platforms/STM32/USARTv1 -I/Applications/Axoloti.app/Contents/Java/chibios/boards/ST_STM32F4_DISCOVERY -I/Applications/Axoloti.app/Contents/Java/chibios/ext/fatfs/src -I. -I/Applications/Axoloti.app/Contents/Java/chibios -I./mutable_instruments -Winvalid-pch -MD -MP -c ./xpatch.h -o /Users/krikor/Documents/axoloti/build/xpatch.h.gch
RM
APP
! /Users/krikor/Documents/axoloti/build/xpatch.h.gch
. /Applications/Axoloti.app/Contents/Java/firmware/../chibios/ext/fatfs/src/ff.h
. /Users/krikor/Documents/axoloti/axoloti-factory/objects/fx/rngs/rings_fx.h
Multiple include guards may be useful for:
/Users/krikor/Documents/axoloti/axoloti-factory/objects/fx/rngs/rings_fx.h
LINK
BIN
Done compiling patch
Start uploading patch
bin path: /Users/krikor/Documents/axoloti/build/xpatch.bin
block uploaded @ 0x20011000 length 8908
Done uploading patch
Starting patch...
Done starting patch
Start locking
Done locking
I just installed 1.0.12 using the windows msi installer. I have also upgraded the firmware and synced the libraries. When trying to go live, even with an empty patch, the compilation fails on a missing header:
Using controller object: C:\Users\Are\Documents\axoloti\drj\patches\controller_1.axp
Unable to created controller for : C:\Users\Are\Documents\axoloti\drj\patches\controller_1.axp
Generate code complete
Creating directory on sdcard : /untitled
Done creating directory
Changing working directory on sdcard : /untitled
Done changing working directory
Start compiling patch
BDIR = C:\Users\Are\DOCUME~1\axoloti/build
FIRMWARE = .
"Build precompiled header"
arm-none-eabi-g++ -nostdlib -fno-exceptions -fno-rtti -mcpu=cortex-m4 -O3 -fomit-frame-pointer -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -Wunused-parameter -DCORTEX_USE_FPU=TRUE -DTHUMB_PRESENT -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB -std=c++11 -DARM_MATH_CM4 -D__FPU_PRESENT -fno-math-errno -fno-threadsafe-statics -IC:\PROGRA~2\Axoloti\app/CMSIS/Include -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/common/ARMCMx/CMSIS/include -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/common/ARMCMx -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/GCC/ARMCMx -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/GCC/ARMCMx/STM32F4xx -IC:\PROGRA~2\Axoloti\app/chibios/os/kernel/include -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/include -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32F4xx -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/GPIOv2 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/I2Cv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/OTGv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/RTCv2 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/SPIv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/TIMv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/USARTv1 -IC:\PROGRA~2\Axoloti\app/chibios/boards/ST_STM32F4_DISCOVERY -IC:\PROGRA~2\Axoloti\app/chibios/ext/fatfs/src -I. -IC:\PROGRA~2\Axoloti\app/chibios -Winvalid-pch -MD -MP -c ./xpatch.h -o C:\Users\Are\DOCUME~1\axoloti/build/xpatch.h.gch
./xpatch.h:10:44: fatal error: braids/parameter_interpolation.h: No such file or directory
#include "braids/parameter_interpolation.h"
^
compilation terminated.
make: *** [C:\Users\Are\DOCUME~1\axoloti/build/xpatch.h.gch] Error 1
shell task failed, exit value: 1
Compiling patch failed ( untitled )
There exists a header by that name in the install:
C:\Program Files (x86)\Axoloti\app\firmware\mutable_instruments\braids\parameter_interpolation.h
I'm reporting this straight away - I haven't attempted to diagnose it properly and find a fix yet. This happens on Windows 10 64 bit.
hmm, a couple of possible reasons:
i) did you change the firmware directory?
check its correct in preferences (i.e. pointing to where you have installed axoloti)
(you could also delete your axoloti.prefs file, to reset it, if your unsure)
ii) precompiled header
delete the build directory, and try again....
though it appears it was trying to build the precompiled header when it failed, so id guess (i)
(precompiled header is needed for even an empty patch, hence the failure)
edit:
bizarrely, I think your g++ line looks incorrect.. as its not got the firmware on the include path.
I say bizarrely, as others are using 1.0.12 on windows, so I cant see how it would be just you if there was an issue in the makefile, and the makefile is common to all platforms
edit2: actually the above probably confirms you have the firmware directory pointing to the wrong place, as the makefile lives in the firmware directory, and has been updated in 1.0.12
Nothing has been changed here since 1.0.11, which worked fine.
i) The firmware directory seems to be correct in prefs, I deleted prefs and let it be remade - no difference.
Edit to add: since there's Mutable Instruments stuff there, and xpatch.h references those, things can't be that far off. Of course, as you already know, I have a black belt in hitting obscure issues
ii) I tried deleting the build directory - no difference
I've also tried to prefix the braids etc. includes in xpatch.h with "mutable_instruments/", that moved the error:
In file included from ./xpatch.h:11:0:
./mutable_instruments/braids/resources.h:37:27: fatal error: stmlib/stmlib.h: No such file or directory
#include "stmlib/stmlib.h"
An uninstall/install cycle is probably worth trying, but I'll wait a bit since it might be good to know how this can happen(?)
hmm odd...
can you check firmware/Makefile.patch
you should see the following:
INCDIR = $(CMSIS)/Include $(CMSIS)/DSP_Lib/Include \
$(PORTINC) $(KERNINC) $(TESTINC) \
$(HALINC) $(PLATFORMINC) $(BOARDINC) $(FATFSINC) \
${FIRMWARE} $(CHIBIOS) ${FIRMWARE}/mutable_instruments
the issue is, if you look at your compile line, your missing the last bit...
I'll have to go check a windows machine to see if some how the windows build of 1.0.12 was incorrect, but if that was the case every windows users trying to use 1.0.12 would have had the issue ?!
ok, just tried on win10/64bit, using the release 1.0.12 build
"Build precompiled header"
arm-none-eabi-g++ -nostdlib -fno-exceptions -fno-rtti -mcpu=cortex-m4 -O3 -fomit-frame-pointer -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wunused-parameter -DCORTEX_USE_FPU=TRUE -DTHUMB_PRESENT -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB -std=c++11 -DARM_MATH_CM4 -D__FPU_PRESENT -fno-math-errno -fno-threadsafe-statics -fno-use-cxa-atexit -Wno-unused-parameter -IC:\PROGRA~2\Axoloti\app/CMSIS/Include -IC:\PROGRA~2\Axoloti\app/CMSIS/DSP_Lib/Include -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/common/ARMCMx/CMSIS/include -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/common/ARMCMx -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/GCC/ARMCMx -IC:\PROGRA~2\Axoloti\app/chibios/os/ports/GCC/ARMCMx/STM32F4xx -IC:\PROGRA~2\Axoloti\app/chibios/os/kernel/include -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/include -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32F4xx -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/GPIOv2 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/I2Cv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/OTGv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/RTCv2 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/SPIv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/TIMv1 -IC:\PROGRA~2\Axoloti\app/chibios/os/hal/platforms/STM32/USARTv1 -IC:\PROGRA~2\Axoloti\app/chibios/boards/ST_STM32F4_DISCOVERY -IC:\PROGRA~2\Axoloti\app/chibios/ext/fatfs/src -I. -IC:\PROGRA~2\Axoloti\app/chibios -I./mutable_instruments -Winvalid-pch -MD -MP -c ./xpatch.h -o C:\Users\mharr\DOCUME~1\axoloti/build/xpatch.h.gch
as you can see, perfectly correct... (and compiles ok)
it looks like somehow you are using an old Makefile.patch
whats odd, is that you must be using the right/updated xpatch.h, which is in the same firmware directory...
its almost like for some reason, Makefile.patch was not updated when you installed...!?
but why only this file?
anyway, have a look at Makefile.patch and check the INCDIR as I suggested above... this should at least confirm that part of the issue... even if we dont know how you got there.
Aha! It's makefile.patch. The one I had was an old version where i have added assembly output. Deleting it and letting the installer do a repair resulted in the new one being copied into place. Doing the 1.0.12 install and a subsequent repair with the old makefile.patch still there resulted in the installer skipping the new makefile.patch. This has not been a problem with previous versions IIRC.
Thank you for your detective work!
yeah, its doesn't change much - that said, next release it will change again
id recommend (for next time) if you want to alter anything in the firmware dir, to copy the entire dir somewhere else, and then update the firmware directory in prefs. it won't stop the 'upgrade' issue, but is a little less confusing then it happens.
(actually, we could put a warning in place, when we upgrade, if the fwdir is not the default)
Right, that's reasonable enough. I was prepared for having the makefile overwritten when newer versions are installed by having a backup of the assembly output bit.
BTW, if anyone else want too see the assembly output in the build directory, just add this to makefile.patch under the "${BDIR}/xpatch.bin: ${BDIR}/xpatch.cpp ${BDIR}/xpatch.h.gch" section (the complete makefile.patch with assembly output is included below):
@echo "ASM"
@$(CPP) $(CCFLAGS) -H $(IINCDIR) -Winvalid-pch -MD -MP --include ${BDIR}/xpatch.h -S -c ${BDIR}/xpatch.cpp -o ${BDIR}/xpatch.asm
This is the complete makefile-pacth with assembly output:
CCFLAGS = -nostdlib -fno-exceptions -fno-rtti -mcpu=cortex-m4 -O3 -fomit-frame-pointer -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wunused-parameter -DCORTEX_USE_FPU=TRUE -DTHUMB_PRESENT -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB -std=c++11 -DARM_MATH_CM4 -D__FPU_PRESENT -fno-math-errno -fno-threadsafe-statics -fno-use-cxa-atexit -Wno-unused-parameter
LDFLAGS = -nostartfiles -Tramlink.ld -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb -mno-thumb-interwork
#-mcpu=cortex-m4
#-mno-thumb-interwork
#-mthumb
#-Wl,-Map=build/ch.map,--cref,--no-warn-mismatch,--gc-sections
CC=arm-none-eabi-gcc
CPP=arm-none-eabi-g++
LD=arm-none-eabi-gcc
CP=arm-none-eabi-objcopy
DMP=arm-none-eabi-objdump
axoloti_runtime ?= ..
axoloti_release ?= ..
axoloti_home ?= ..
axoloti_firmware ?= ../firmware
CHIBIOS = ${axoloti_release}/chibios
CMSIS = ${axoloti_release}/CMSIS
SPACE :=
SPACE +=
BDIR=$(subst $(SPACE),\ ,${axoloti_home}/build)
# theoretically should be this...., but CSRC expansion cannot cope with escape spaces
#FIRMWARE=$(subst $(SPACE),\ ,${axoloti_firmware})
FIRMWARE=.
$(info BDIR = ${BDIR})
$(info FIRMWARE = ${FIRMWARE})
include $(CHIBIOS)/boards/ST_STM32F4_DISCOVERY/board.mk
include $(CHIBIOS)/os/hal/platforms/STM32F4xx/platform.mk
include $(CHIBIOS)/os/hal/hal.mk
include $(CHIBIOS)/os/ports/GCC/ARMCMx/STM32F4xx/port.mk
include $(CHIBIOS)/os/kernel/kernel.mk
include $(CHIBIOS)/os/various/fatfs_bindings/fatfs.mk
INCDIR = $(CMSIS)/Include $(CMSIS)/DSP_Lib/Include \
$(PORTINC) $(KERNINC) $(TESTINC) \
$(HALINC) $(PLATFORMINC) $(BOARDINC) $(FATFSINC) \
${FIRMWARE} $(CHIBIOS) ${FIRMWARE}/mutable_instruments
# Paths
IINCDIR = $(patsubst %,-I%,$(INCDIR) $(DINCDIR) $(UINCDIR))
LLIBDIR = $(patsubst %,-L%,$(DLIBDIR) $(ULIBDIR))
all: ${BDIR}/xpatch.bin
${BDIR}/xpatch.h.gch: ${FIRMWARE}/xpatch.h ${FIRMWARE}/patch.h ${FIRMWARE}/axoloti.h ${FIRMWARE}/parameter_functions.h ${FIRMWARE}/axoloti_math.h ${FIRMWARE}/axoloti_filters.h
@echo "Build precompiled header"
$(CPP) $(CCFLAGS) $(IINCDIR) -Winvalid-pch -MD -MP -c ${FIRMWARE}/xpatch.h -o ${BDIR}/xpatch.h.gch
${BDIR}/xpatch.bin: ${BDIR}/xpatch.cpp ${BDIR}/xpatch.h.gch
@echo RM
@rm -f ${BDIR}/xpatch.o ${BDIR}/xpatch.elf ${BDIR}/xpatch.bin ${BDIR}/xpatch.d ${BDIR}/xpatch.map ${BDIR}/xpatch.lst
@echo "ASM"
@$(CPP) $(CCFLAGS) -H $(IINCDIR) -Winvalid-pch -MD -MP --include ${BDIR}/xpatch.h -S -c ${BDIR}/xpatch.cpp -o ${BDIR}/xpatch.asm
@echo APP
@$(CPP) $(CCFLAGS) -H $(IINCDIR) -Winvalid-pch -MD -MP --include ${BDIR}/xpatch.h -c ${BDIR}/xpatch.cpp -o ${BDIR}/xpatch.o
@echo LINK
@$(LD) $(LDFLAGS) ${BDIR}/xpatch.o -Wl,-Map=${BDIR}/xpatch.map,--cref,--just-symbols=${FIRMWARE}/build/axoloti.elf -o ${BDIR}/xpatch.elf
@echo BIN
# $(CP) -O binary -j .text -j .init_array -j .rodata -j .rodata\* xpatch.elf xpatch.bin
# -j .text.startup -j .text.memcpy
@$(CP) -O binary ${BDIR}/xpatch.elf ${BDIR}/xpatch.bin
clean:
@rm -f ${BDIR}/xpatch.o ${BDIR}/xpatch.elf ${BDIR}/xpatch.bin ${BDIR}/xpatch.d ${BDIR}/xpatch.map ${BDIR}/xpatch.lst ${BDIR}/xpatch.h.gch