Mac Tutorial: How to compile and upload the firmware of MIs eurorack modules


#141

Ok it was usbasp, now I get this: /usr/local/CrossPack-AVR/bin/avrdude -V -p m88p -c usbasp -P usb \\
-B 1 -U flash:w:build/branches/branches.hex:i -U lock:w:0x2f:m

avrdude: set SCK frequency to 750000 Hz
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn’t answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude done. Thank you.

make: ***** [upload] Error 1

Will try to update firmware. Sorry for spazzing. :slight_smile:


#142

You need to set the fuses first.

And please ask these questions on muff, I don’t want to be bothered with questions regarding DIY modules.


#143

Sorry I thought this would be a general firmware upload problem for everyone. Will ask on muff.


#144

I’m having trouble compiling the ARM toolchain. I’m running OS X 10.10.3. I had Xcode 6 installed with the command line tools, but since Xcode 6 doesn’t support gcc, I reverted to Xcode 4.6.3. When I try to make install-cross I now get:

couldn’t understand kern.osversion `14.3.0’


#145

Hello

I’m trying to upload the firmware Clouds (by FTDI). To compile’ve followed these steps:

  • Make -f clouds / makefile
  • Make -f clouds / bootloader / makefile

In the “built” folder “clouds_bootloader” and “clouds” appear. Then, to upload the firmware:

  • I press and hold RESET. Simultaneously SYSBOOT Press, then a release RESET while still holding SYSBOOT.
  • make -f clouds/makefile upload_combo_serial

MacBook-Pro: eurorack User$ make -f clouds/makefile upload_combo_serial
python stmlib/programming/serial/stm32loader.py \\
-p /dev/cu.usbserial-A50285BI \\
-b 115200 \\
-e -v \\
-w build/clouds/clouds_bootloader_combo.bin
Can’t init. Ensure that BOOT0 is enabled and reset device
Traceback (most recent call last):
File “stmlib/programming/serial/stm32loader.py”, line 413, in
bootversion = cmd.cmdGet()
File “stmlib/programming/serial/stm32loader.py”, line 106, in cmdGet
if self.cmdGeneric(0x00):
File “stmlib/programming/serial/stm32loader.py”, line 103, in cmdGeneric
return self._wait_for_ack(hex(cmd))
File “stmlib/programming/serial/stm32loader.py”, line 69, in _wait_for_ack
raise CmdException(“No response to s” info)
main.CmdException: No response to 0x0
make: ***** [upload_combo_serial] Error 1

(Jumper wires connected Correctly: RX> TX, TX-> RX, GND-> GND, the FTDI is at 3.3V, and Clouds Eurorack powered up via the power cable).

I uploaded the firmware to Braids and everything has been correct. But I could not upload it to Clouds

Can you help me with this issue ?.

Thanks


#146

@pocajoke, please see the third post back before yours - the post by pichenettes, who is Olivier Gillet, the owner of Mutable Instruments.


#147

@pocajoke, i’ve gotten similar errors resulting from either loose/bad jumpers on the ftdi dongle or a poorly soldered micro controller on a diy module. if the module is a factory unit, it’s obviously not going to be the latter, while your success with the braids update likely rules out the former :wink:


#148

using ftdi, i am getting this error on “make -f /§ModuleName§/makefile upload_combo_serial”:

stmlib/makefile.inc:220: recipe for target ‘build/clouds/stft.o’ failed

any ideas?


#149

@funkyj, please see the second sentence of Olivier’s post above.


#150

Hi ,
this error means something wrong with the ggc-arm ??

stmlib/makefile.inc:311: build/braids_bootloader/depends.mk: No such file or directory
/Users/E_/Downloads/gcc-arm-none-eabi-4_8-2013q4/binbin/arm-none-eabi-g++ -MM -g -O2 -Wall -Werror -Wno-unused-local-typedefs -fasm -finline -finline-functions-called-once -fdata-sections -ffunction-sections -fshort-enums -fno-move-loop-invariants -I. -DGCC_ARMCM3 -DSTM32F10X_MD -DNO_APPLICATION -DF_CPU=72000000L -DF_CRYSTAL=8000000L -DUSE_STDPERIPH_DRIVER -DSYSCLK_FREQ_72MHz=72000000L -Istmlib/third_party/STM -Istmlib/third_party/STM/CMSIS/CM3_f10x -Istmlib/third_party/STM/CMSIS/CM3_f10x/startup/gcc -Istmlib/third_party/STM/STM32F10x_StdPeriph_Driver/inc -mcpu=cortex-m3 -mthumb -fno-unroll-loops -fno-exceptions -fno-rtti braids/bootloader/bootloader.cc -MF build/braids_bootloader/bootloader.d -MT build/braids_bootloader/bootloader.o
make: /Users/E_/Downloads/gcc-arm-none-eabi-4_8-2013q4/binbin/arm-none-eabi-g++: No such file or directory
make: ***** [build/braids_bootloader/bootloader.d] Error 1
E-s-Pro:eurorack E_$

i’m having problems with this step '‘export PATH=$HOME/arm-cs-tools/bin:$PATH’'
i copy this command and nothing happened

thanks


#151

You probably put the wrong path in makefile.inc.

Look at the path make is trying to generate:

" /Users/E_/Downloads/gcc-arm-none-eabi-4_8-2013q4/binbin"

binbin?


#152

mm i put like this in the makefile.inc

TOOLCHAIN_PATH = /Users/E_/arm-cs-tools/arm-none-eabi/bin

  1. Supported: arm-usb-ocd, arm-usb-ocd-h, arm-usb-tiny-h, stlink-v2
    PGM_INTERFACE = arm-usb-ocd-h
  2. hla for stlink-v2 ; jtag otherwise
    PGM_INTERFACE_TYPE = ftdi

PGM_SERIAL_PORT = /dev/cu.usbserial-AH02F0TK
PGM_SERIAL_BAUD_RATE = 115200
PGM_SERIAL_VERIFY = -v

but i manual copy the toolchain_path , should be ok ??


#153

Hi , i start everything from the scratch and the first steps work but running

make -f /Users/E_/eurorack/braids/makefile upload_combo_serial

i recibe this
E-s-Pro:eurorack E_$ make -f /Users/E_/eurorack/braids/makefile upload_combo_serial
stmlib/makefile.inc:311: build/braids/depends.mk: No such file or directory
make -f /Users/E_/eurorack/braids/makefile upload_combo_serialbin/arm-none-eabi-g++ -MM -g -O2 -Wall -Werror -Wno-unused-local-typedefs -fasm -finline -finline-functions-called-once -fdata-sections -ffunction-sections -fshort-enums -fno-move-loop-invariants -I. -DGCC_ARMCM3 -DSTM32F10X_MD -DAPPLICATION -DF_CPU=72000000L -DF_CRYSTAL=8000000L -DUSE_STDPERIPH_DRIVER -DSYSCLK_FREQ_72MHz=72000000L -Istmlib/third_party/STM -Istmlib/third_party/STM/CMSIS/CM3_f10x -Istmlib/third_party/STM/CMSIS/CM3_f10x/startup/gcc -Istmlib/third_party/STM/STM32F10x_StdPeriph_Driver/inc -mcpu=cortex-m3 -mthumb -fno-unroll-loops -fno-exceptions -fno-rtti braids/analog_oscillator.cc -MF build/braids/analog_oscillator.d -MT build/braids/analog_oscillator.o

any hint ??
thank


#154

what means this message
?
E-s-Pro:eurorack E_$ make -f /Users/E_/eurorack/braids/bootloader/makefile hex
make: Nothing to be done for `hex’.

then i do everything from the scratch and i receive this

E-s-Pro:eurorack E_$ make -f /Users/E_/eurorack/braids/bootloader/makefile hex
stmlib/makefile.inc:311: build/braids_bootloader/depends.mk: No such file or directory
mkdir -p build/braids_bootloader/


#155

I don’t know exactly about all these problems, but all this stuff has been deprecated by the vagrant environment


#156

also works for flash the bootloader? sorry for ask , i know that this trend is not for DIY modules

Thanks Olivier !


#157

Yes, works for firmware programming too.


#158

estebanse> I know that this trend [thread] is not for DIY modules

Then why are you asking these questions, which relate to bootstrapping your DIY module, here? Ask them on Muff Wigglers.

I agree, all firmware related questions which relate to the need to do things on MS-Windows, or which stem from a lack of even basic understanding of posix shells and makefiles can be answered by “use the vagrant environment, and follow the instructions for it”.


#159

Hi @BennelongBicyclist ! i have 3 original MI modules and i will get more soon , the idea of start a DIY module cames because i want to modify the firmware of those original modules , but for my lack of understanding i was quite scared about to touch the original and lose the warranty.
So like you has said, i know about this and DIY but you can considere that i’m learning for to this with original modules
Thanks


#160

Hi there,
I’m getting an error at the “make” step (i’m trying to flash a Clouds) :

MacBook-Pro-de-Dehu:eurorack onstage$ make -f clouds/makefile
stmlib/makefile.inc:311: build/clouds/depends.mk: No such file or directory
/Users/onstage/Documents/DIY/arm-eabi-toolchain-masterbin/arm-none-eabi-g++ -MM -g -O2 -Wall -Werror -Wno-unused-local-typedefs -fasm -finline -finline-functions-called-once -fdata-sections -ffunction-sections -fshort-enums -fno-move-loop-invariants -I. -DGCC_ARMCM4 -DSTM32F40_41xxx -DSTM32F4XX -DARM_MATH_CM4 -D__FPU_PRESENT -DAPPLICATION -DF_CPU=168000000L -DF_CRYSTAL=8000000L -DUSE_STDPERIPH_DRIVER -DSYSCLK_FREQ_168MHz=168000000L -Istmlib/third_party/STM -Istmlib/third_party/STM/CMSIS/CM3_f4xx -Istmlib/third_party/STM/CMSIS/CM3_f4xx/startup/gcc -Istmlib/third_party/STM/STM32F4xx_StdPeriph_Driver/inc -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb-interwork -funroll-loops -fno-exceptions -fno-rtti clouds/clouds.cc -MF build/clouds/clouds.d -MT build/clouds/clouds.o
make: /Users/onstage/Documents/DIY/arm-eabi-toolchain-masterbin/arm-none-eabi-g++: No such file or directory
make: ***** [build/clouds/clouds.d] Error 1

Any clue ? maybe i got the arm path wrong…