Research and development takes time and money. Since it is my goal to keep this project opensource, if you find this project useful, please consider donating.
HondaECU for Windows requires the libusbK driver. Download Zadig and use it to install the libusbK driver. There is a usage guide on the Zadig website if you need help using it. Once libusbK is installed for your FTDI device, download the latest release of HondaECU.exe.
https://conda.io/miniconda.html
https://sourceforge.net/projects/picusb/files/libftdi1-1.4git_devkit_x86_x64_14June2018.zip
pip install pylibftdi wxPython pydispatcher
Model | Year | ROM Size | Keihin Code | Checksum Address |
Start Offset |
CPU | Pinout (Gnd,+12,Kline) |
---|---|---|---|---|---|---|---|
Z125M | 2019 | 92 kb | 38770-K0F-A01 | 0 | 8000 | M16C | 10,1,30 |
CRF110F | 2019 | 64 kb | 38770-KYK-D12 | 0 | 8000 | M16C | 10,1,30 |
MSX125 | 2017 | 64 kb | 38770-K26-B13 | 0 | 8000 | M16C | 10,1,30 |
MSX125 | 2014 | 48 kb | 38770-K26-911 | 9FFF | 4000 | M16C | 10,1,30 |
CBR250R | 2012 | 56 kb | 38770-KYJ-971 | DFEF | |||
CBR250R HRC | 2014 | 256 kb | 38770-K33-R51 | 18FFE | |||
CBR250RR HRC | 2017 | 1024 kb | 38770-K64-R02 | 7FFF8 | |||
CRF250R | 2011 | 256 kb | 38770-KRN-E52 | 1FFFA | |||
CRF250R | 2013 | 256 kb | 38770-KRN-E73 | 18FFE | |||
CRF250R | 2014 | 256 kb | 38770-KRN-E82 | 19FFE | |||
CRF250R | 2015 | 256 kb | 38770-KRN-E92 | 19FFE | |||
NSF250R | 2013 | 256 kb | 38770-NX7-033 | 18FFE | |||
VTR250 | 2015 | 256 kb | 38770-KFK-632 | 3FFF8 | |||
CBR300R HRC | 2014 | 256 kb | 38770-K33-R01 | 18FFE | |||
CB300 | 2008-2012 | 56 kb | 38770-KVK-xxx | DFEF | |||
SH300 | 2009 | 56 kb | 38770-KTW-901 | DFEF | |||
XRE 300 | 2009-2012 | 56 kb | 38770-KWT-xxx | DFEF | |||
CRF450R | 2009 | 256 kb | 38770-MEN-E21 | 1FFFA | |||
CRF450R | 2011 | 256 kb | 38770-MEN-E52 | 1FFFA | |||
CRF450R | 2014 | 256 kb | 38770-MEN-A73 | 19FFE | |||
CB500R | 2014 | 256 kb | 38770-MGZ-B01 | 3FFF8 | PPC | 12,23,25 | |
CBR600RR | 2007-2016 | 256 kb | 38770-Mxx-xxx | 3FFF8 | M32R | ||
CB600F | 2010 | 256 kb | 38770-MGM-B11 | 3FFF8 | |||
CB650F | 2015 | 256 kb | 38770-MJE-B41 | 3FFF8 | |||
CB600F/R | 2010-2011 | 256 kb | 38770-MFG-Bxx- | 3FFF8 | |||
Transalp700 | 2013 | 256 kb | 38770-MFF-B01 | 3FFF8 | |||
Shadow 750 | 2009 | 256 kb | 38770-MGE-B21 | 3FFF8 | |||
NC750X | 2015 | 256 kb | 38770-Mxx-xxx | 3FFF8 | |||
NC750S | 2016 | 512 kb | 38770-MJL-D72 | 7FFF8 | |||
VFR800F | 2015 | 512 kb | 38770-MJM-J13 | 7FFF8 | |||
CB1000R | 2008-2016 | 256 kb | 38770-Mxx-xxx | 3FFF8 | |||
CBR1000RR | 2004-2005 | 256 kb | 38770-MEL-xxx | 3FFFC | M32R | ||
CBR1000RR | 2006-2016 | 256 kb | 38770-Mxx-xxx | 3FFF8 | M32R | ||
CBR1000RR | 2017 | 1024 kb | 38770-MKFA-D72 | FFFF8 | |||
VFR1200F | 2010 | 1024 kb | 38770-MGE-D02 | 7FFF8 | |||
GL1800 | 2015 | 256 kb | 38770-MJK-J21 | 3FFF8 |
The easiest way to talk to the ECU via the k-line is a USB to serial (TTL) converter, and a serial to k-line converter. This code assumes you are using a FTDI based USB to serial converter. For the serial to k-line converter, I recommend the schematic below that uses optocouplers to keep the bike power isolated from your electronics.
Note: Other resistor combinations will work, you do not need to use the ones that are list here exactly. On the FTDI side of the k-line circuit going up in resistance works. For example, I have built this circuit substituting 360 and 560 ohm resistors with 470 and 510 ohm resistors respectively. On the bike side of the k-line circuit, a 1k ohm resistor is fine.
If you make a bench harness to work with your ECU you will need a 2.5 amp power supply. The ECU will power-up with a 2.0 amp power supply but transfer rates will be slow and you will get CRC errors.