Bootstrap Loader: Difference between revisions

From OpenGK
m (Changed pin 2 to pin 3, dont want people shorting ground.)
 
(One intermediate revision by the same user not shown)
Line 9: Line 9:
[https://github.com/dante383/gkflasher GKFlasher] supports BSL mode.
[https://github.com/dante383/gkflasher GKFlasher] supports BSL mode.


== Entering the BSL mode ==
== Entering BSL mode (2.0L) ==
[[File:Boot pin ziome3eg.png|thumb|BOOT pin]]
[[File:Boot pin ziome3eg.png|thumb|BOOT pin]]


Line 16: Line 16:
# Connect ECU pins 3, 14, 21 and 22 to +12V.
# Connect ECU pins 3, 14, 21 and 22 to +12V.
# Connect [[K-Line]] per [[Siemens 5WY 2 Connector Pinout|ECU pinout.]]
# Connect [[K-Line]] per [[Siemens 5WY 2 Connector Pinout|ECU pinout.]]
# Pull down the BOOT pin to Ground through a 10kΩ resistor.
# Pull down the BOOT pin to Ground through a 10kΩ resistor. (Most V6 ECU's have the resistor onboard).  
# Connect power and ground to the ECU.
# Connect power and ground to the ECU.
# ECU is now ready for BSL input - you can press any button in the BSL tab in GKFlasher.
# ECU is now ready for BSL input - you can press any button in the BSL tab in GKFlasher.

Latest revision as of 08:52, 6 July 2026

This article is a stub. You can help by contributing your knowledge of the Tiburon platform

Bootstrap Loader (BSL) on the C166 MCUs allows to execute code in memory, bypassing code stored on the EEPROM.

This is often used to flash regions of memory inaccessible through OBD2, such as the bootloader. Most notable case would be removing the immobiliser, or performing a ca663056->ca663057 upgrade, which requires changing the bootloader.

To enter BSL mode, you must ground the BOOT pin and then feed power to the ECU, which will make the CPU wait for input over serial port instead of executing code stored on the flash memory. Then, typically a small loader is uploaded which later facilitates upload and execution of the proper BSL program, which will offer ways to manipulate memory.

GKFlasher supports BSL mode.

Entering BSL mode (2.0L)

BOOT pin

Non-immo ECUs

  1. Connect ECU pins 3, 14, 21 and 22 to +12V.
  2. Connect K-Line per ECU pinout.
  3. Pull down the BOOT pin to Ground through a 10kΩ resistor. (Most V6 ECU's have the resistor onboard).
  4. Connect power and ground to the ECU.
  5. ECU is now ready for BSL input - you can press any button in the BSL tab in GKFlasher.

Immo ECUs

  1. Connect ECU pins 3, 14, 21 and 22 to +12V.
  2. Connect K-Line (pin 77) per ECU pinout.
  3. Attach a 470Ω resistor on the W-Line(? citation needed).
  4. Splice K-Line into K-Line on the ECU header - if you're using a Y-split OBD2 cable, that'd be pin 9.
  5. Pull down the BOOT pin to Ground through a 10kΩ resistor.
  6. Connect power and ground to the ECU.
  7. ECU is now ready for BSL input - you can press any button in the BSL tab in GKFlasher.

If the method above does not work, try the following:

  1. Connect ECU pins 3, 14, 21 and 22 to +12V.
  2. Connect K-line (OBD pin 7) to W-Line on the ECU header (pin 47).
  3. Pull down the BOOT pin (pin 28 of the flash chip) to Ground through a 10kΩ resistor.
  4. Connect power and ground to the ECU.
  5. ECU is now ready for BSL input - you can press any button in the BSL tab in GKFlasher.