FORScan Coding Guide for the ND MX-5
FORScan talks to the ND’s body and powertrain modules over OBD-II and rewrites their AS-Built configuration. This is a different layer than CMU infotainment tweaks: you’re flipping bits in the body control modules, instrument cluster, and smart start unit, not touching the head unit. It’s how you turn off i-Stop permanently, add a Find My Car horn honk, or enable auto door lock on a Sport that shipped without the menu.
What you need: FORScan for Windows with an extended license (the free tier can read modules but won’t write AS-Built), an OBD-II adapter that supports MS-CAN switching (OBDLink EX/MX+, ELS27, or a J2534 pass-through), and a full AS-Built backup of every module before you write anything.
Before you touch anything
Section titled “Before you touch anything”- Switch the adapter to MS-CAN mode before scanning. The RBCM, FBCM, and SSU live on the MS-CAN bus and won’t appear in HS-CAN mode.
- Back up complete AS-Built data for every module. This is your undo. See AS-Built backup and restore for the procedure.
- Most blocks end in a checksum byte. Change a data bit and the checksum no longer matches, so the module rejects the write. Recalculate it with the Mazda SkyActiv OBD-II Calc spreadsheet (OHP Tools) before writing.
- Every change here is reversible by writing the original block back. The exceptions are write-once bits, which lock permanently — those are called out below.
The modules you’ll be working in
Section titled “The modules you’ll be working in”| Module | Address | Controls |
|---|---|---|
| RBCM | 0x7B7 | Door locks, lighting, Find My Car, trunk |
| FBCM | 0x726 | DRL, auto headlights, wipers, fog lights, ESS |
| SSU | 0x731 | i-Stop, keyless entry, immobilizer |
| IC | 0x720 | Cruise control type, ADAS display, camera, gauges |
| PCM | 0x7E0 | Engine config, speed limiter, package ID |
The changes most ND owners make first
Section titled “The changes most ND owners make first”These are widely run, need no added hardware, and are the usual entry point. Verify every address against your own backup before writing — baselines drift by region and model year.
1. i-Stop default OFF
Section titled “1. i-Stop default OFF”Stops i-Stop from re-arming every time you start the car, so you’re not jabbing the dashboard button at every drive.
SSU 731-01-01 B1: bit 4 = 0 (default OFF)
The dashboard button still toggles it on mid-drive; it just reverts to OFF on the next ignition cycle instead of on.
2. Find My Car (horn honk on double-lock)
Section titled “2. Find My Car (horn honk on double-lock)”RBCM 7B7-01-02 B0: bit 6 = 1
Double-press lock on the fob and the car chirps the horn and flashes the hazards. Pure software, no hardware.
3. Auto door lock/unlock
Section titled “3. Auto door lock/unlock”Lock above ~20 km/h, unlock at ignition off.
RBCM 7B7-01-01 B4: bit 6 = 1 (lock when ignition ON), bit 3 = 1 (lock when doors open)
RBCM 7B7-01-02 B4: bit 5 = 1 (menu visibility), bit 3 = 0 (display setting)
After writing, go to CMU Settings → Car → Lock and reset the lock page so the new options appear.
4. Emergency Stop Signal (ESS)
Section titled “4. Emergency Stop Signal (ESS)”Rapid hazard flash under hard braking above ~60 km/h, using the existing lights.
FBCM 726-01-02: Byte 0 bit 1, Byte 1 bit 0, Byte 3 bit 1 (combined enable)
5. Headlight off timer
Section titled “5. Headlight off timer”Pull the high-beam stalk after shutdown to keep the headlights on for a set duration (15–180s).
RBCM 7B7-01-03 B1: bit 4 = 1 (timer visibility in CMU menu)
Door lock configuration in detail
Section titled “Door lock configuration in detail”RBCM 7B7-01-01 B1: bit 7 = 1 enables auto door lock (master enable)
RBCM 7B7-01-01 B4:
- bit 6: lock doors when ignition ON
- bit 3: lock doors when doors are open
RBCM 7B7-01-02 B4:
- bit 5: auto door lock visibility on CMU display
- bit 3: auto door lock CMU display setting
With these set and the CMU lock page reset, you get menu options for: lock all doors above ~20 km/h, unlock all doors at ignition off, and unlock driver door only on first key press.
DRL configuration
Section titled “DRL configuration”FBCM 726-01-01 B0: bit 2 = 0 enables Angel Eye DRL (logic is inverted — 0 turns it on)
FBCM 726-50-01:
01xx= DRL uses parking lights only02xx= DRL uses parking lights + low beams08xx= DRL uses turn-signal lamps only
Cruise control type
Section titled “Cruise control type”IC 720-04-23 B4:
- bit 6: cruise control with speed limiter (LIM)
- bit 5: standard cruise control / MRCC enabled
- bit 4: no cruise control (disabled)
The stalk and wiring have to be physically present. Every ND trim ships with the cruise hardware, so this is a live change on all of them.
Instrument cluster display
Section titled “Instrument cluster display”IC 720-04-27 B2: bit 3 = 1 enables dynamic, steering-responsive guidelines on the reverse camera view. The camera has to be CAN-connected (GT only — see the hardware table below).
IC 720-01-02 B1: bit 7 controls cruise-control digital display visibility.
Bambi mode (fog lights with high beams)
Section titled “Bambi mode (fog lights with high beams)”Stock logic cuts the fog lights when you switch to high beams. Bambi mode keeps both on for better near-field fill on dark back roads.
FBCM 726-01-01: Byte 0 bit 1, Byte 3 bit 1, Byte 0 bit 7, Byte 3 bit 6 (combined enable, shared with auto headlights and auto wipers)
Fog lights must be installed.
Blinker on remote lock/unlock
Section titled “Blinker on remote lock/unlock”RBCM 7B7-01-01 B1: bit 1 = 1 gives a 3× blinker flash on unlock.
ADAS: what’s software, what’s hardware
Section titled “ADAS: what’s software, what’s hardware”The single most common way to brick a dashboard with FORScan is enabling an ADAS feature whose sensor isn’t installed. Enable a feature in the IC without its hardware and you get warning lights and stored DTCs.
| Feature | Software only? | Notes |
|---|---|---|
| ESS (Emergency Stop Signal) | Yes | Uses existing hazard lights |
| LDWS display | Partial | Needs the forward-sensing camera (GT) |
| HBC (High Beam Control) | Partial | Needs the forward-sensing camera |
| MRCC | No | Needs radar, wiring, buttons |
| LAS (Lane-keep Assist) | No | Needs FSC + LAS-specific EPS |
| SCBS (Smart City Brake) | No | Needs FSC + the front sensor |
| BSM (Blind Spot Monitor) | No | Needs rear radar; standard on GT, can’t be added to Sport/Club |
Cross-trim feature matrix
Section titled “Cross-trim feature matrix”| Feature | Source trim | Works? | Module |
|---|---|---|---|
| Auto door lock menu | GT → Sport | Yes | RBCM |
| Find My Car | GT → Sport | Yes | RBCM |
| i-Stop default off | All | Yes | SSU |
| ESS | GT → Sport | Yes | FBCM |
| Headlight off timer | GT → Sport | Yes | RBCM |
| Camera path lines | GT → Sport | Only if camera is CAN-connected | IC |
| MRCC | — | No (hardware) | — |
| BSM/RVM | — | No (hardware) | — |
| Heated steering wheel | — | No (hardware) | — |
ND1 vs. ND2
Section titled “ND1 vs. ND2”| Module | ND1 (2016–2018) | ND2 (2019–2023) |
|---|---|---|
| RBCM | 0x7B7, same structure | Same, minor baseline differences |
| FBCM | 0x726 | Some byte defaults differ (LED headlights standard on more trims) |
| SSU | 0x731 | Same structure |
| IC | 0x720 | Different defaults for gauge display and ADAS options |
| PCM | Skyactiv 2.0L | Skyactiv 2.0L (same displacement, revised calibration) |
The bulk of these changes are identical across ND1 and ND2. Where they diverge is the IC: ND2 added the redesigned gauge cluster and a wider ADAS option set, so its defaults differ. The 2.0L ND2 also makes 181 hp against the ND1’s 155, but that’s a powertrain change, not an AS-Built one — FORScan doesn’t add it.
Verified address table
Section titled “Verified address table”Confirmed on USDM ND MX-5 vehicles. EU and JDM cars may carry different baseline values; back up and read your own blocks first.
RBCM (0x7B7) — Rear Body Control Module
Section titled “RBCM (0x7B7) — Rear Body Control Module”| Block-Byte | Bit | Function | Values |
|---|---|---|---|
| 01-01 B1 | b7 | Auto door lock master enable | 0=off, 1=on |
| 01-01 B1 | b1 | Blinker on unlock | 0=off, 1=3× flash |
| 01-01 B4 | b6 | Lock when ignition ON | 0=off, 1=on |
| 01-01 B4 | b3 | Lock when doors open | 0=off, 1=on |
| 01-02 B0 | b6 | Find My Car (horn on double-lock) | 0=off, 1=on |
| 01-02 B4 | b5 | Auto door lock CMU menu visibility | 0=hidden, 1=visible |
| 01-02 B4 | b3 | Auto door lock CMU display setting | 0=show, 1=hide |
| 01-03 B1 | b4 | Headlight off timer CMU menu visibility | 0=hidden, 1=visible |
FBCM (0x726) — Front Body Control Module
Section titled “FBCM (0x726) — Front Body Control Module”| Block-Byte | Bit | Function | Values |
|---|---|---|---|
| 01-01 B0 | b2 | Angel Eye DRL enable | 0=enabled (inverted), 1=disabled |
| 01-01 B0 | b1 | Bambi mode (fog lights with high beams) | Combined with other bits |
| 01-02 B0 | b1 | ESS enable (partial) | See ESS section |
| 01-02 B1 | b0 | ESS enable (partial) | See ESS section |
| 01-02 B3 | b1 | ESS enable (partial) | See ESS section |
| 50-01 | — | DRL lamp source | 01xx=parking, 02xx=parking+low, 08xx=turn signal |
SSU (0x731) — Smart Start Unit
Section titled “SSU (0x731) — Smart Start Unit”| Block-Byte | Bit | Function | Values |
|---|---|---|---|
| 01-01 B1 | b4 | i-Stop default state | 0=default OFF, 1=default ON (stock) |
IC (0x720) — Instrument Cluster
Section titled “IC (0x720) — Instrument Cluster”| Block-Byte | Bit | Function | Values |
|---|---|---|---|
| 04-23 B4 | b6 | Cruise control with speed limiter (LIM) | 0=off, 1=on |
| 04-23 B4 | b5 | Standard CC / MRCC enabled | 0=off, 1=on |
| 04-23 B4 | b4 | No cruise control | 0=CC present, 1=no CC |
| 04-27 B2 | b3 | Dynamic camera guidelines | 0=off, 1=on |
| 01-02 B1 | b7 | CC digital display visibility | 0=off, 1=on |
Checksums
Section titled “Checksums”Each AS-Built block ends in a checksum byte computed from the data bytes ahead of it. Change a bit and the stored checksum is now wrong, so the module refuses the write. Recompute it before writing.
Block 7B7-01-01: [B0] [B1] [B2] [B3] [B4] [CHK]Workflow:
- Read the block and note every byte value.
- Change the target bits (e.g. B4 b6 = 1 for lock-when-ignition-ON).
- Enter the new byte values into the Mazda SkyActiv OBD-II Calc spreadsheet.
- The spreadsheet returns the correct checksum byte.
- Write the complete block, checksum included.
Walkthrough: i-Stop default OFF
Section titled “Walkthrough: i-Stop default OFF”The simplest single change, and the most common first one.
- Connect the adapter in MS-CAN mode.
- Scan modules — confirm SSU (731) is detected.
- Back up SSU AS-Built data.
- Read SSU block 731-01-01.
- Find byte B1.
- Change bit 4 from
1to0. - Recalculate the checksum.
- Write the block.
- Verify: on the next ignition cycle, i-Stop should show OFF by default.
The dashboard button still toggles i-Stop on during a drive. The change only sets the startup default.
Walkthrough: Find My Car
Section titled “Walkthrough: Find My Car”- Connect the adapter in MS-CAN mode.
- Scan modules — confirm RBCM (7B7) is detected.
- Back up RBCM AS-Built data.
- Read RBCM block 7B7-01-02.
- Find byte B0.
- Change bit 6 from
0to1. - Recalculate the checksum.
- Write the block.
- Verify: double-press the fob lock button — the horn honks and the hazards flash.
Walkthrough: auto door lock menu
Section titled “Walkthrough: auto door lock menu”This one spans two blocks.
- Read RBCM block 7B7-01-01:
- B1 b7 = 1 (master enable)
- B4 b6 = 1 (lock when ignition ON)
- Recalculate the checksum.
- Read RBCM block 7B7-01-02:
- B4 b5 = 1 (CMU menu visibility)
- B4 b3 = 0 (CMU display setting)
- Recalculate the checksum.
- Write both blocks.
- On the CMU: Settings → Car → Lock → Reset the page. The new auto lock/unlock options appear; set lock-at-speed and unlock-on-ignition-off as you want them.
Regional and platform notes
Section titled “Regional and platform notes”European ND (RF and Roadster)
Section titled “European ND (RF and Roadster)”- EU cars often carry different RBCM baselines.
- Some EU SkyActiv models reportedly reject auto door lock writes.
- DRL behavior differs — DRL is mandatory under EU rules.
- Bambi mode is more sought-after on EU cars, where fog lights are standard on more trims.
Fiat 124 Spider
Section titled “Fiat 124 Spider”Mechanically the 124 shares the ND platform, but the module calibrations differ. RBCM and FBCM addresses match, but byte layouts may not. Community documentation is thinner here, so back up before any change and proceed carefully.
i-Stop and the automatic
Section titled “i-Stop and the automatic”The ND is available with a 6-speed automatic on Grand Touring. i-Stop logic differs slightly between the manual (clutch-based stop) and the automatic (brake-based stop), but the SSU default-OFF change behaves identically on both.
What still needs hardware
Section titled “What still needs hardware”| Feature | Required hardware | ND trims that have it |
|---|---|---|
| Dynamic camera guidelines | CAN-connected reverse camera | GT (standard); not Sport/Club |
| Blind spot monitoring display | Rear radar sensors | GT (standard); not Sport/Club |
| MRCC | Front radar + stalk | Not available on ND |
| HBC (high beam control) | Forward-sensing camera | GT |
| LDWS | Forward-sensing camera | GT |
Coding these on without the sensor doesn’t fake the feature — it lights the dash and stores DTCs.
Cautions
Section titled “Cautions”- Back up complete AS-Built data before any change. It is your only path back.
- Leave the safety-critical modules (ABS, airbag, EPS) alone unless you fully understand them.
- Some bits are write-once and lock permanently.
- Regional baselines differ — USDM, EU, and JDM ECUs ship with different defaults, so read your own blocks rather than trusting a forum value.
- Enabling ADAS without the matching hardware will throw warning lights.
References
Section titled “References”| Resource | Link |
|---|---|
| FORScan software | forscan.org |
| FORScan Mazda AS-Built thread | forum.forscan.org |
| Mazda3Revolution AS-Built thread (300+ pages) | mazda3revolution.com |
| OHP Tools spreadsheet video guide | ohptools.com |
| OHP Tools modifiable AS-Built list | ohptools.com |
| commaai/opendbc Mazda CAN | github.com |
| FORScan overview | What FORScan is and how it connects |
| Adapter buying guide | Which OBD-II adapter to buy |
| AS-Built backup and restore | The backup procedure |