fome-fw/firmware/config/boards/microrusefi/mapping.yaml

125 lines
3.0 KiB
YAML
Raw Normal View History

2020-02-29 20:22:39 -08:00
#
# microRusEfi board
# https://github.com/rusefi/rusefi/wiki/Hardware_microRusEfi_wiring
2020-02-29 20:22:39 -08:00
#
2019-05-29 21:18:41 -07:00
outputs:
# TLE8888 injector channels
Tle8888 big update 1 (#1892) * smart gpio: fix tle8888 direct pin mapping for MRE * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 * TLE8888: cleanup * TLE8888: do not reset driver private data on WD/undervoltage reset * TLE8888: diagnostic updates * TLE8888 driver: BIG driver rework * TLE8888: check SPI answers for abnormal states Reply with other than requested register can be a sign of: -Power-On-Reset, then OpStat0 will be replyed -WatchDog reset, then FWDStat1 will be replyed -Invalid communication frame, then Diag0 will be replyed Keep tracking last accessed register and check with the next reply. * TLE8888: debug clean-up * TLE8888: implement spi array write This reduce CS inactive state time between two consequent accesses from 8.8 uS to 1.4 uS * TLE8888: fix PP outputs in OD mode * TLE8888: cleanup register definitions * TLE8888: run separate driver thread for each chip instance Calculating poll interval for few chips become more complex, avoid this running thread for each device. * TLE8888: fix cypress and kinetic compilation Both platforms define its own MAX and cause redifination error if common.h is included in driver. * MRE: update mapping.yaml and fix direct pin mapping for TLE8888 * TLE8888: diagnnostic: disable switch off in case of overcurrent For all output, use current limiting instead * TLE8888: check for overvoltage on OUT8..OUT13 * TLE8888: add TODO note about how to recover from failure condition Currently TLE8888 automaticly recovers only from overcurrent and (may be) overtemperature conditions. Short to bat cause output disable (bit in OECONFIG is reset) and needs driver/host intervention. * TLE8888: save few bytes of RAM * TLE8888: Lada Kalina is test mule for IDLE stepper on TLE8888 Don't forget to enable PP mode for TLE8888 outputs 21..24: uncomment line 1087 in tle8888.c * TLE8888: reorder code, cleanup * TLE8888: mode all debug/statisctic to per-chip struct * TLE8888: rework poll interval calculation * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 #2
2020-10-23 09:25:30 -07:00
TLE8888_PIN_1: "37 - Injector 1"
TLE8888_PIN_2: "38 - Injector 2"
TLE8888_PIN_3: "41 - Injector 3"
TLE8888_PIN_4: "42 - Injector 4"
# TC4427 ignition outputs (5v)
GPIOD_4: "9 - Ignition 1"
GPIOD_3: "10 - Ignition 2"
GPIOD_2: "11 - Ignition 3"
GPIOD_1: "12 - Ignition 4"
# TC4427 general purpose output (selectable 5v/12v)
GPIOD_7: "14 - GP Out 5"
GPIOD_6: "13 - GP Out 6"
Tle8888 big update 1 (#1892) * smart gpio: fix tle8888 direct pin mapping for MRE * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 * TLE8888: cleanup * TLE8888: do not reset driver private data on WD/undervoltage reset * TLE8888: diagnostic updates * TLE8888 driver: BIG driver rework * TLE8888: check SPI answers for abnormal states Reply with other than requested register can be a sign of: -Power-On-Reset, then OpStat0 will be replyed -WatchDog reset, then FWDStat1 will be replyed -Invalid communication frame, then Diag0 will be replyed Keep tracking last accessed register and check with the next reply. * TLE8888: debug clean-up * TLE8888: implement spi array write This reduce CS inactive state time between two consequent accesses from 8.8 uS to 1.4 uS * TLE8888: fix PP outputs in OD mode * TLE8888: cleanup register definitions * TLE8888: run separate driver thread for each chip instance Calculating poll interval for few chips become more complex, avoid this running thread for each device. * TLE8888: fix cypress and kinetic compilation Both platforms define its own MAX and cause redifination error if common.h is included in driver. * MRE: update mapping.yaml and fix direct pin mapping for TLE8888 * TLE8888: diagnnostic: disable switch off in case of overcurrent For all output, use current limiting instead * TLE8888: check for overvoltage on OUT8..OUT13 * TLE8888: add TODO note about how to recover from failure condition Currently TLE8888 automaticly recovers only from overcurrent and (may be) overtemperature conditions. Short to bat cause output disable (bit in OECONFIG is reset) and needs driver/host intervention. * TLE8888: save few bytes of RAM * TLE8888: Lada Kalina is test mule for IDLE stepper on TLE8888 Don't forget to enable PP mode for TLE8888 outputs 21..24: uncomment line 1087 in tle8888.c * TLE8888: reorder code, cleanup * TLE8888: mode all debug/statisctic to per-chip struct * TLE8888: rework poll interval calculation * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 #2
2020-10-23 09:25:30 -07:00
# default VVT TLE8888 high current low side: VVT1 TLE8888_OUT6
TLE8888_PIN_6: "7 - Lowside 1"
# default Idle Air Control TLE8888 high current low side: VVT2 TLE8888_OUT5
TLE8888_PIN_5: "3 - Lowside 2"
Tle8888 big update 1 (#1892) * smart gpio: fix tle8888 direct pin mapping for MRE * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 * TLE8888: cleanup * TLE8888: do not reset driver private data on WD/undervoltage reset * TLE8888: diagnostic updates * TLE8888 driver: BIG driver rework * TLE8888: check SPI answers for abnormal states Reply with other than requested register can be a sign of: -Power-On-Reset, then OpStat0 will be replyed -WatchDog reset, then FWDStat1 will be replyed -Invalid communication frame, then Diag0 will be replyed Keep tracking last accessed register and check with the next reply. * TLE8888: debug clean-up * TLE8888: implement spi array write This reduce CS inactive state time between two consequent accesses from 8.8 uS to 1.4 uS * TLE8888: fix PP outputs in OD mode * TLE8888: cleanup register definitions * TLE8888: run separate driver thread for each chip instance Calculating poll interval for few chips become more complex, avoid this running thread for each device. * TLE8888: fix cypress and kinetic compilation Both platforms define its own MAX and cause redifination error if common.h is included in driver. * MRE: update mapping.yaml and fix direct pin mapping for TLE8888 * TLE8888: diagnnostic: disable switch off in case of overcurrent For all output, use current limiting instead * TLE8888: check for overvoltage on OUT8..OUT13 * TLE8888: add TODO note about how to recover from failure condition Currently TLE8888 automaticly recovers only from overcurrent and (may be) overtemperature conditions. Short to bat cause output disable (bit in OECONFIG is reset) and needs driver/host intervention. * TLE8888: save few bytes of RAM * TLE8888: Lada Kalina is test mule for IDLE stepper on TLE8888 Don't forget to enable PP mode for TLE8888 outputs 21..24: uncomment line 1087 in tle8888.c * TLE8888: reorder code, cleanup * TLE8888: mode all debug/statisctic to per-chip struct * TLE8888: rework poll interval calculation * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 #2
2020-10-23 09:25:30 -07:00
# TLE8888 half bridges (pushpull, lowside, or high-low) TLE8888_OUT21#91
TLE8888_PIN_21: "35 - GP Out 1"
# TLE8888 half bridges (pushpull, lowside, or high-low) TLE8888_OUT22#89
TLE8888_PIN_22: "34 - GP Out 2"
Tle8888 big update 1 (#1892) * smart gpio: fix tle8888 direct pin mapping for MRE * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 * TLE8888: cleanup * TLE8888: do not reset driver private data on WD/undervoltage reset * TLE8888: diagnostic updates * TLE8888 driver: BIG driver rework * TLE8888: check SPI answers for abnormal states Reply with other than requested register can be a sign of: -Power-On-Reset, then OpStat0 will be replyed -WatchDog reset, then FWDStat1 will be replyed -Invalid communication frame, then Diag0 will be replyed Keep tracking last accessed register and check with the next reply. * TLE8888: debug clean-up * TLE8888: implement spi array write This reduce CS inactive state time between two consequent accesses from 8.8 uS to 1.4 uS * TLE8888: fix PP outputs in OD mode * TLE8888: cleanup register definitions * TLE8888: run separate driver thread for each chip instance Calculating poll interval for few chips become more complex, avoid this running thread for each device. * TLE8888: fix cypress and kinetic compilation Both platforms define its own MAX and cause redifination error if common.h is included in driver. * MRE: update mapping.yaml and fix direct pin mapping for TLE8888 * TLE8888: diagnnostic: disable switch off in case of overcurrent For all output, use current limiting instead * TLE8888: check for overvoltage on OUT8..OUT13 * TLE8888: add TODO note about how to recover from failure condition Currently TLE8888 automaticly recovers only from overcurrent and (may be) overtemperature conditions. Short to bat cause output disable (bit in OECONFIG is reset) and needs driver/host intervention. * TLE8888: save few bytes of RAM * TLE8888: Lada Kalina is test mule for IDLE stepper on TLE8888 Don't forget to enable PP mode for TLE8888 outputs 21..24: uncomment line 1087 in tle8888.c * TLE8888: reorder code, cleanup * TLE8888: mode all debug/statisctic to per-chip struct * TLE8888: rework poll interval calculation * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 #2
2020-10-23 09:25:30 -07:00
# TLE8888 half bridges (pushpull, lowside, or high-low) TLE8888_OUT23
TLE8888_PIN_23: "33 - GP Out 3"
Tle8888 big update 1 (#1892) * smart gpio: fix tle8888 direct pin mapping for MRE * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 * TLE8888: cleanup * TLE8888: do not reset driver private data on WD/undervoltage reset * TLE8888: diagnostic updates * TLE8888 driver: BIG driver rework * TLE8888: check SPI answers for abnormal states Reply with other than requested register can be a sign of: -Power-On-Reset, then OpStat0 will be replyed -WatchDog reset, then FWDStat1 will be replyed -Invalid communication frame, then Diag0 will be replyed Keep tracking last accessed register and check with the next reply. * TLE8888: debug clean-up * TLE8888: implement spi array write This reduce CS inactive state time between two consequent accesses from 8.8 uS to 1.4 uS * TLE8888: fix PP outputs in OD mode * TLE8888: cleanup register definitions * TLE8888: run separate driver thread for each chip instance Calculating poll interval for few chips become more complex, avoid this running thread for each device. * TLE8888: fix cypress and kinetic compilation Both platforms define its own MAX and cause redifination error if common.h is included in driver. * MRE: update mapping.yaml and fix direct pin mapping for TLE8888 * TLE8888: diagnnostic: disable switch off in case of overcurrent For all output, use current limiting instead * TLE8888: check for overvoltage on OUT8..OUT13 * TLE8888: add TODO note about how to recover from failure condition Currently TLE8888 automaticly recovers only from overcurrent and (may be) overtemperature conditions. Short to bat cause output disable (bit in OECONFIG is reset) and needs driver/host intervention. * TLE8888: save few bytes of RAM * TLE8888: Lada Kalina is test mule for IDLE stepper on TLE8888 Don't forget to enable PP mode for TLE8888 outputs 21..24: uncomment line 1087 in tle8888.c * TLE8888: reorder code, cleanup * TLE8888: mode all debug/statisctic to per-chip struct * TLE8888: rework poll interval calculation * MRE: use TLE8888 pins instead of MCU gpios that drives TLE8888 #2
2020-10-23 09:25:30 -07:00
# TLE8888 half bridges (pushpull, lowside, or high-low) TLE8888_OUT24
TLE8888_PIN_24: "43 - GP Out 4"
2020-05-20 20:53:25 -07:00
# J2
GPIOA_15: "AUX J2 PA15"
GPIOB_8: "AUX J2 PB8"
2020-05-20 20:53:25 -07:00
GPIOB_9: "AUX J2 PB9"
GPIOC_12: "AUX J2 PC12"
2020-11-15 14:16:58 -08:00
GPIOE_0: "AUX J6 PE0"
GPIOE_6: "AUX J10 PE6"
GPIOE_5: "AUX J11 PE5"
GPIOB_7: "AUX J18 PB7"
2020-07-03 21:02:44 -07:00
GPIOB_0: "AUX AV8 reuse"
GPIOB_1: "AUX AV9 reuse"
GPIOA_4: "AUX AV10 reuse"
GPIOC_4: "AUX AV6 reuse"
2020-05-20 20:53:25 -07:00
2020-05-22 14:52:48 -07:00
# Dual purpose input/output
# TLE8888_PIN_12: "AV6 outmode"
# TLE8888_PIN_11: "AV8 outmode"
# TLE8888_PIN_10: "AV9 outmode"
# TLE8888_PIN_13: "AV10 outmode"
2020-05-20 20:53:25 -07:00
2019-06-07 14:38:12 -07:00
event_inputs:
# RC filter input for hall
GPIOA_5: "25 - Hall Cam"
# TLE8888 VR/hall conditioner
GPIOC_6: "45 - VR/Hall Crank"
2019-06-07 14:38:12 -07:00
switch_inputs:
2020-10-25 16:26:04 -07:00
GPIOA_0: "18 - AN temp 1"
GPIOA_1: "23 - AN temp 2"
GPIOA_2: "24 - AN temp 3"
GPIOA_3: "22 - AN temp 4"
GPIOA_4: "28 - AN volt 10"
# RC filter input for hall
GPIOA_5: "25 - Hall Cam"
GPIOA_6: "26 - AN volt 2"
GPIOA_7: "31 - AN volt 3"
GPIOB_0: "36 - AN volt 8"
GPIOB_1: "40 - AN volt 9"
GPIOC_0: "27 - AN volt 1"
# GPIOC_1: Skipped - battery sense
GPIOC_2: "19 - AN volt 4"
GPIOC_3: "20 - AN volt 5"
GPIOC_4: "32 - AN volt 6"
GPIOC_5: "30 - AN volt 7"
2019-05-30 15:19:27 -07:00
analog_inputs:
2020-05-03 12:54:17 -07:00
# PA0 CLT
EFI_ADC_0: "18 - AN temp 1"
2020-05-03 12:54:17 -07:00
# PA1 IAT
EFI_ADC_1: "23 - AN temp 2"
2020-05-03 12:54:17 -07:00
2020-02-23 21:12:26 -08:00
# PA2
EFI_ADC_2: "24 - AN temp 3"
2020-02-23 21:12:26 -08:00
# PA3
EFI_ADC_3: "22 - AN temp 4"
# PA4 - also AUX REUSE
2019-08-05 19:05:33 -07:00
EFI_ADC_4: "28 - AN volt 10"
2020-05-03 12:54:17 -07:00
2020-03-17 21:12:31 -07:00
# PA6 pull-down R31
2019-08-05 19:05:33 -07:00
EFI_ADC_6: "26 - AN volt 2"
2020-05-03 12:54:17 -07:00
2020-10-17 11:53:56 -07:00
# PA7 - usually PPS Pedal Position Sensor
EFI_ADC_7: "31 - AN volt 3"
# PB0 - also AUX REUSE
EFI_ADC_8: "36 - AN volt 8"
# PB1 - also AUX REUSE
EFI_ADC_9: "40 - AN volt 9"
2020-05-03 12:54:17 -07:00
# PC0 MAP
2019-08-05 19:00:07 -07:00
EFI_ADC_10: "27 - AN volt 1"
2020-02-23 21:12:26 -08:00
# PC1
EFI_ADC_11: "Battery Sense"
2020-03-17 21:12:31 -07:00
# PC2 pull-down R131
EFI_ADC_12: "19 - AN volt 4"
2020-05-03 12:54:17 -07:00
2020-03-17 21:12:31 -07:00
# PC3 TPS pull-down R41
EFI_ADC_13: "20 - AN volt 5"
2020-05-03 12:54:17 -07:00
# PC4 - also AUX REUSE
EFI_ADC_14: "32 - AN volt 6"
2020-02-23 21:12:26 -08:00
# PC5
EFI_ADC_15: "30 - AN volt 7"