Axoloti release 1.0.12


#45

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


#46

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.


#47

8 posts were split to a new topic: Clds and Lmnts objects


#48

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

#49

@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


#62

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);


#64

I removed the axoloti folder and reinstalled axoloti again and now it's working.


#65

@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.


#66

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



#67

that log looks perfectly ok @krikor .. is something not working?


#68

ooops not at all, I thought the java message was giving an error sorry!


#69

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.


#70

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 :confused:
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


#71

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 :smiley:

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(?)


#72

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 ?!


#74

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.


#75

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! :slight_smile:


#76

yeah, its doesn't change much - that said, next release it will change again :wink:

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)


#77

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

#78

New to the group and just scratching the surface of this wonderful thing but... I recently updated the software and I can no longer upload any patches. When I click the 'Live' box I get the following message:

Axoloti version : 1.0.12-0-g80370d22 build time : 02/02/2017 20:05:55 GMT
Link to firmware CRC E95BAC96
Status: factory (1.0.12,anon) : OK ( 1.0.12,clean )
Status : home : OK
Status: community (1.0.12,anon) : OK ( 1.0.12,clean )
USB device found
connected
Authentic Axoloti Core
search path : /Users/cellust/Documents/axoloti/axoloti-factory/objects
Firmware version: 1.0.0.1, crc=0xE95BAC96, entrypoint=0x20011000
search path : /Users/cellust/Documents/axoloti/objects
search path : /Users/cellust/Documents/axoloti/axoloti-contrib/objects
finished loading objects
Generate code complete
Start compiling patch
Compiling patch... with /Applications/Axoloti.app/Contents/Java/firmware
BDIR = /Users/cellust/Documents/axoloti/build
FIRMWARE = .
RM
APP
! /Users/cellust/Documents/axoloti/build/xpatch.h.gch
/Users/cellust/Documents/axoloti/build/xpatch.cpp: In function 'void xpatch_init2(int)':
/Users/cellust/Documents/axoloti/build/xpatch.cpp:693:47: error: 'sdram_init' was not declared in this scope
sdram_init(&sdramdyn_start,&sdramdyn_end);
^
make: *** [/Users/cellust/Documents/axoloti/build/xpatch.bin] Error 1
shell task failed, exit value: 2
Compiling patch failed ( /Users/cellust/Documents/axoloti/axoloti-factory/patches/tutorials/01_sine_oscillator.axp )

I uninstalled the application and runtime and reinstalled both.
I am running them on a MacBookPro Late 2016 with OS 10.12.3

I should say that it was working great with the old software on this computer before I updated.
Please advise as to how I can get back to life with Axoloti. Thank you for your time.
Alex