rusEfi Electronic Fuel Injection — сборка в openSUSE Leap 42.1

Быстрый старт для быстрой сборки прошивки rusEfi

IMG_20160825_123548

Минимальный набор пакетов:
arm-none-eabi-binutils — Cross Compiling GNU Binutils targeted at arm-none-eabi
arm-none-eabi-gcc — Cross Compiling GNU GCC targeted at arm-none-eabi

Оба эти пакета есть в репозитории mnhauke

http://download.opensuse.org/repositories/home:/mnhauke:/osmocom/openSUSE_Leap_42.1/

Для прошивки платы необходимы:
stlink — STM32 discovery line linux programmer
stlink-gui — GUI for STM32 discovery line linux programmer

Если у вас нет ST-LINK/V2 (in-circuit debugger/programmer for STM8 and STM32), то хватит и stm32flash.
stm32flash — Flash Program for the STM32 Bootloader — нужен только UART переходник (3.3v)

Все эти утилиты в репозитории electronics

http://download.opensuse.org/repositories/electronics/openSUSE_Leap_42.1/

Подключаем перечисленные репозитории, ставим утилиты.

Сливаем исходный код

svn checkout svn://svn.code.sf.net/p/rusefi/code/trunk rusefi-code

cd rusefi-code/firmware

export PATH=/opt/arm-none-eabi-toolchain/bin/:/usr/bin/

make

в конце получим, что-то вроде:

Compiling rusefi.cpp
Compiling main.cpp
Linking build/rusefi.elf
Creating build/rusefi.hex
Creating build/rusefi.bin
Creating build/rusefi.dmp

text    data     bss     dec     hex filename
265072    2376  167140  434588   6a19c build/rusefi.elf

Для прошивки платы переводим пин BT0 в 1 как на фото. Подключаем UART переходник (я брал на pl2303). Появится последовательное устройство ttyUSB0 (к прим.). Нужно состоять в группе dialout, чтобы использовать его.

Прошиваем:

stm32flash -w rusefi.bin -v /dev/ttyUSB0
stm32flash 0.4

http://stm32flash.googlecode.com/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x31
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0413 (STM32F40/1)
— RAM        : 128KiB  (8192b reserved by bootloader)
— Flash      : 1024KiB (sector size: 4×16384)
— Option RAM : 16b
— System RAM : 29KiB
Write to memory
Erasing memory
Wrote and verified address 0x080414bc (100.00%) Done

Готово. отключаем переходник. Возвращаем перемычку на место. Готово.

Разумеется прошивка может быт не рабочей. Признак ее работы — наличие меандра на контакте PD15.

Выводы PC10 (Передающий) и PC11 (приемный) используются для общения с консолью. Скорость 38400. Стучаться с буквой `t`

Leave a Reply