Page 1 of 1
m74.9 OEM ECU
Posted: Sat Feb 04, 2023 3:06 am
by AndreyB
Artery at32f435zmt7 + L9779
Artery has a couple of pin differences comparing with stm32.
8450086873 8450086874
Update: Granta uses 8450110707
https://github.com/rusefi/m74.9/
Uses Tle9201 uses L9779WD-SPI

Re: m74.9 OEM ECU
Posted: Sat Feb 04, 2023 3:26 am
by AndreyB
So many unpopulated components did they account for not having L9779 just in case?!
image.png
Re: m74.9 OEM ECU
Posted: Tue Feb 07, 2023 6:33 pm
by AndreyB
It was confirmed that the PCB is dual purpose stm32 and at32
image.png
Re: m74.9 OEM ECU
Posted: Fri Feb 10, 2023 10:53 am
by AndreyB
Re: m74.9 OEM ECU
Posted: Mon Feb 20, 2023 3:13 pm
by AndreyB
m74.9 259.3765 004-01 was spotted on
https://en.wikipedia.org/wiki/GAZelle_NEXT which is produced in higher volumes.
Re: m74.9 OEM ECU
Posted: Wed May 24, 2023 6:53 pm
by AndreyB
They now have brand new off the shelf ECU units for under $200
Just put a few hours into Artery at32f435 port of rusEFI in a separate repo
https://github.com/rusefi/fw-AT-START-F435
Makes little sense overall but to cool of an engineering challenge to pass by!
Re: m74.9 OEM ECU
Posted: Mon Oct 30, 2023 12:05 am
by AndreyB
Re: m74.9 OEM ECU
Posted: Sun Nov 05, 2023 2:35 pm
by Dron_Gus
Funny thing about stock FW. Chip has some amount of RAM that can be configured either as RAM either as flash cache to get zero-wait-state access to flash.
For chip used on M74.9 it can be configure in range from 512Kb RAM + 128Kb zero-wait flash to 128Kb of RAM + 512Kb of zero-wait flash.
By default chip is configured in 384 Kb of RAM + 256Kb of zero-wait flash.
Itelma configures chip for 128Kb RAM only.
This definitely is not enough to run RusEFI.
Fortunately this is re-configurable.
Re: m74.9 OEM ECU
Posted: Sat Nov 11, 2023 3:28 pm
by Dron_Gus
Ok. I was able to run some RusEFI code on M74.9. No L9779 driver, no communication interfaces. But it runs

Thanks Itelma for populating JTAG/SWD connector.
Re: m74.9 OEM ECU
Posted: Sun Nov 19, 2023 9:07 pm
by Dron_Gus
Some progress:
Code: Select all
2023-11-20_00_06_04_545: ConsoleUI: COMPOSITE_OFF_RPM=700
2023-11-20_00_06_06_112: EngineState: initHardware()
2023-11-20_00_06_06_113: EngineState: initRtc()
2023-11-20_00_06_06_114: EngineState: Current RTC time: 01 Jan 1980 00:03:40
2023-11-20_00_06_06_115: EngineState: *** rusEFI LLC (c) 2012-2023. All rights reserved.
2023-11-20_00_06_06_116: EngineState: *** rusEFI v20231119@65034
2023-11-20_00_06_06_117: EngineState: *** Chibios Kernel: 6.1.4
2023-11-20_00_06_06_118: EngineState: *** Compiled: Nov 19 2023 - 23:58:31
2023-11-20_00_06_06_119: EngineState: *** COMPILER=12.2.1 20221205
2023-11-20_00_06_06_130: EngineState: hellenBoardId=0
2023-11-20_00_06_06_131: EngineState: UID=A09D78 68354000 D448722
2023-11-20_00_06_06_132: EngineState: MCU IDCODE AT32F435ZMT7 in LQFP144 with 4032 KB flash
2023-11-20_00_06_06_134: EngineState: MCU SER_ID AT32F435 rev A
2023-11-20_00_06_06_142: EngineState: MCU F_SIZE 4032 KB
2023-11-20_00_06_06_144: EngineState: MCU RAM 384 KB
2023-11-20_00_06_06_146: EngineState: CH_CFG_ST_FREQUENCY=1000
2023-11-20_00_06_06_148: EngineState: CORTEX_MAX_KERNEL_PRIORITY=2
2023-11-20_00_06_06_149: EngineState: STM32_ADCCLK=36000000
2023-11-20_00_06_06_150: EngineState: STM32_TIMCLK1=288000000
2023-11-20_00_06_06_160: EngineState: STM32_TIMCLK2=288000000
2023-11-20_00_06_06_161: EngineState: STM32_PCLK1=144000000
2023-11-20_00_06_06_162: EngineState: STM32_PCLK2=144000000
2023-11-20_00_06_06_163: EngineState: PORT_IDLE_THREAD_STACK_SIZE=32
2023-11-20_00_06_06_171: EngineState: CH_DBG_ENABLE_ASSERTS=1
2023-11-20_00_06_06_172: EngineState: CH_DBG_SYSTEM_STATE_CHECK=1
2023-11-20_00_06_06_173: EngineState: CH_DBG_ENABLE_STACK_CHECK=1
2023-11-20_00_06_06_174: EngineState: EFI_LOGIC_ANALYZER=1
2023-11-20_00_06_06_181: EngineState: EFI_TUNER_STUDIO=1
2023-11-20_00_06_06_182: EngineState: EFI_SIGNAL_EXECUTOR_SLEEP=0
2023-11-20_00_06_06_183: EngineState: EFI_SIGNAL_EXECUTOR_HW_TIMER=0
2023-11-20_00_06_06_189: EngineState: EFI_SHAFT_POSITION_INPUT=1
2023-11-20_00_06_06_190: EngineState: EFI_INTERNAL_ADC=1
2023-11-20_00_06_06_191: EngineState: applyNonPersistentConfiguration()
2023-11-20_00_06_06_192: EngineState: initializeTriggerWaveform(TT_TOOTHED_WHEEL_60_2/8)
2023-11-20_00_06_06_198: EngineState: engine sniffer: No
2023-11-20_00_06_06_198: EngineState: engine sniffer size=300
2023-11-20_00_06_06_199: EngineState: initAdcInputs()
2023-11-20_00_06_06_200: EngineState: pin_markUsed: SPI clock on PE13
2023-11-20_00_06_06_203: EngineState: pin_markUsed: SPI master out on PE15
2023-11-20_00_06_06_204: EngineState: pin_markUsed: SPI master in on PE14
2023-11-20_00_06_06_204: EngineState: pin_markUsed: Injector 1 on ext:L9779.OUT1
2023-11-20_00_06_06_205: EngineState: pin_markUsed: Injector 2 on ext:L9779.OUT2
2023-11-20_00_06_06_209: EngineState: pin_markUsed: Injector 3 on ext:L9779.OUT3
2023-11-20_00_06_06_210: EngineState: pin_markUsed: Injector 4 on ext:L9779.OUT4
2023-11-20_00_06_06_210: EngineState: pin_markUsed: Coil 1 on ext:L9779.IGN1
2023-11-20_00_06_06_214: EngineState: pin_markUsed: Coil 2 on ext:L9779.IGN2
2023-11-20_00_06_06_215: EngineState: pin_markUsed: Coil 3 on ext:L9779.IGN3
2023-11-20_00_06_06_216: EngineState: pin_markUsed: Coil 4 on ext:L9779.IGN4
2023-11-20_00_06_06_216: EngineState: pin_markUsed: CAN TX on PG1
2023-11-20_00_06_06_226: EngineState: pin_markUsed: CAN RX on PG0
2023-11-20_00_06_06_227: EngineState: initHardware() OK!
Re: m74.9 OEM ECU
Posted: Tue Nov 28, 2023 11:42 pm
by AndreyB
Minimal wiring to get CAN response
https://github.com/rusefi/rusefi/blob/master/firmware/controllers/lua/examples/uds-prog.txt
Code: Select all
2023-11-28_18_22_25_410: EngineState: LUA: UDS 6 50 2 0 32 1 F4 CC
2023-11-28_18_22_25_410: EngineState: LUA: Programming ACK
2023-11-28_18_22_25_520: EngineState: LUA: UDS 6 67 1 5D 8A 24 72 CC
2023-11-28_18_22_25_521: EngineState: LUA: Got seed [72248A8D]
WhatsApp Image 2023-11-28 at 18.32.52_2a631b5b.jpg
Re: m74.9 OEM ECU
Posted: Sun Jan 14, 2024 12:11 am
by AndreyB
Still a ton of work but it's definitely lots of fun!
image.png