Software (Firmware)

Foreword

As the product matures, new features and bugfixes are made available in the form of firmware updates. This page will be updated to include the latest Firmware version, the changes that were made in that version, and older releases for historical purposes. Click here to view the Firmware upgrade instructions.

Releases below are compatible with all BlueBus units, regardless of hardware revision.


1.3.0 (Right Click > Save Link/Target As)

Released: 2022-10-05

NOTE: Release notes include changes made in versions 1.1.19, 1.2.0, 1.2.1, 1.2.2, 1.2.3 and 1.2.4, none of which are going to be released for public use due to bugs

Comfort
  • Add ability to automatically turn off the OnBoard Monitor (Navigation Screen) after you set off driving
  • Add ability to control volume offset in calls so that we can get rid of the "flicker" when changing call volume. NOTE: This kills the ability to update volume on the fly for calls on E8xs
CD53 / MID / MIR
  • Resolved an issue causing crashes during metadata scrolling due to lack of null termination on string
  • Back Ported all available settings to the UI
  • Added ability to disable metadata scrolling.
  • Enhance verbiage of settings
  • Resolved an issue with endless UI updates when using the unit with the MIR (Monochrome Navigation)
BMBT/VM
  • Resolved issues identifying video modules
  • Do not display Album information on dashboard when it is not provided
  • Removed useless Mic Bias setting
General Improvements
  • Add Support for Hardware Version 2.0!
  • Refactor single line menu code so that it is shared between the CD5x, MIR, MID and IRIS.
  • Improve the BM83 connection logic to make it connect more quickly and more reliably.
General Bug Fixes
  • Resolved Issue with Hardware 2.0 and certain DSP amplifiers not working correctly during telephone functions. If you're having this issue, toggle "Settings > DSP > Mode" to "TCU".
  • Terminate diagnostics explicitly when all "special" lighting should be disabled to prevent certain Light Modules from continuing to keep the given bulb on
  • Resolved an issue where the "Music" App on iOS would not update the Metadata beyond the first song
  • Resolved an issue that caused TEL_MUTE to be pulled high at boot on HW 1.x variants
  • Resolved an issue with the byte queue for the BC127 BT module that sometimes caused data loss

Releases below are NOT compatible with hardware version 2.x! (NOTE: Hardware revision can be identified by the color of the power LED. Green indicates HW 1.x, and Blue indicates HW 2.x)


1.1.18 (Right Click > Save Link/Target As)

Released: 2021-11-11

Comfort
  • Add ability to turn on parking lights (Angel Eyes on E39)
  • Add volume management feature to automatically set the phone volume to max
  • Add code to lower volume (after 1 second) by 50% when entering reverse (not available on manual vehicles without PDC)
CD53
  • Fix inability to set comfort locks
  • Add comfort unlock
  • Fix potential non-null terminated string when creating metadata
  • Allow Bluetooth usage when vehicle is off but radio is manually turned on
  • Add additional settings [Comfort Unlock, Telephone volume offset, Lower Volume on Reverse]
  • Only show values when editing a setting
  • Enhance verbiage of settings
  • Emulate MFL to allow automatic volume scaling for calls for CD53 vehicles (to prevent calls from being too quiet)
MID
  • Fix potential non-null terminated string when creating metadata
  • Add additional settings [DSP, Comfort Unlock, Telephone volume offset, Lower Volume on Reverse]
  • Only show values when editing a setting
  • Enhance verbiage of settings
BMBT/VM
  • Resolve issues identifying early Navis (MKI, MKII) and video modules
  • Convert non supported chars into ASCII, while keeping as much working on BMBT
  • Change CD to Disc 1 again for BMBT
  • Ambient and Oil Temperature (Non-M, Non-E46/E8x cars only!) on BMBT
  • Remove "BT" in headers
  • Support for Fahrenheit, auto configuration of unit based on cluster settings
  • Add Dashboard OBC setting to display temperatures in BlueBus Dashboard display
General Improvements
  • Refactor lighting code to work in a timer so we can keep lamps turned on indefinitely
  • Add Estonian Language Support
  • Add Itlanian Language Support
  • Refactor trap catches
  • Set custom Class Of Device, as used by BMW cars usually, adding Car-Audio minor device specs
  • Add Unicode normalization for accented characters, check for buffer overruns
  • On HFP connection, initialize expected character set to UTF-8 (standard defines 7-bit IRA encoding by default) to enable iPhones to send extended chars in Caller-ID
  • Explicitly request sending Caller ID on connection.
  • Add PBAP profile support
  • Allow Users to override DSP Amp input source
  • Announce CDC on boot to prevent issues with radio detection of CDC
  • Store multiple configuration values in one byte for temperature settings
  • Wait for 15ms before rebooting into bootloader so that the debug message is not cut off
General Bug Fixes
  • Set char queue to 0 on instantiation to ensure the state of the data (to prevent trash from causing issues)
  • Fix Caller ID memory leak
  • Add Unicode normalization for accented characters, check for buffer overruns
  • Add additional checks to ensure we do not query the LM when the ignition is off
  • Split I/K-Bus module ping requests to prevent flooding the I/K-Bus with frames when the car initializes (Prevents bug that stops visual and audible notification of unlock on LCM III/LCM IV)
  • Align buffer sizes across the application to ensure memory safety
  • Correctly utilize snprintf() and strncpy() to ensure we are not leaving memory on the table, or missing NULL termination
  • Fix issues with PDC / R Gear detection for volume lowering

1.1.17 (Right Click > Save Link/Target As)

Released: 2021-04-08

Calling
  • For "Digital" Audio Users (DSP Amplifier), calls are now fielded using that interface regardless of radio mode for improved quality
  • Set max volume offset to 12 steps
  • Fix issues with Caller ID for contacts with spaces in the name
BMBT
  • Resolve incompatibility issue with TV Module by listening to
    0x4E
    command
  • Add language support to UI. RU, ES, EN, NL and DE languages are avaiable.
CD53
  • Add Caller ID Support
  • Add Support support for dynamic comfort blinkers (1-8 blinks)
  • Fix "2" button on newer CD53s in E8x cars
  • Enhance Detection of CD53. It is a known issue that upon first installation, the BlueBus will not display a UI on a CD53 until the second time the car/BlueBus wake up.
MID
  • Add Support support for dynamic comfort blinkers (1-8 blinks)
Uncategorized
  • Fix CDC status/state emulation to prevent track number and playback issues
  • Change Device Name Length to 64 bytes
  • Add BLE/MAP profiles to BC127 library
  • Catch and log BC127 module boot failures
  • Add Self Play (Radio Control of CD Changer) ability for cars without an I-Bus Changer

1.1.16 (Right Click > Save Link/Target As)

Released: 2020-10-23

Light Module / Comfort Blinking
  • Add Support for LME38, LCM and LCM_A modules
  • Correct Diagnostics request for LSZ/LSZ2 modules
  • Ask for LM I/O status less frequently
  • Update defines to be region agnostic
  • Push Photosensor data back to LM to prevent temporarily dimming 58G
  • Improve LM Identification
  • Break blinker states out of else if which can cause erratic behavior
  • Activate comfort blinkers only after single blink/off cycle.
  • Allow cancelling comfort blinkers via opposing blink.
  • Deactivate comfort blinkers prior to activating opposing comfort blinkers to prevent the original switch input from becoming unresponsive.
  • Filter concurrent non-blinker lamp events during comfort blinking to prevent artificially incrementing blinker count.
  • Stop comfort blinkers via diagnostic activation, rather than diagnostic end.
  • All LM variants now support diagnostic blinker deactivation.
Character Transliteration
  • Add hyphen and ellipsis UTF-8 characters
  • Additional Cyrillic characters added to mapping table
  • Improve Extended ASCII character conversion
  • Improve String Normalization / UTF-8 translitteration
  • Improved Unicode byte handling
  • Add transliteration of Cyrillic characters
  • Add transliteration of common ASCII symbols
Calling
  • Add caller ID support
  • Add caller ID to Navigation Incoming Call screen
  • Fix bug where volume changes outside of a call impacted the call volume offset
  • Fix bug where call status was not correctly set all the time
MID
  • Improve MID UI by hijacking TEL MID Mode
  • Add "Mode" button to BlueBus UI
  • Add metadata off mode
  • Prevent screen refresh every ten seconds by responding wit the Everest TCU signature to `0x02`
  • Set maximum volume offset for calls to 12 steps
CD53
  • Fix CD53 Device Selection
  • Allow CD53 users to adjust in-call volume by not setting active call state
  • Unify the CD53 text length into a define
  • Add newer CD53 (E8x) support by listening to telephone events and responding to them
BMBT
  • Add Degrees symbol to coolant temperature
  • Expand Device Name to 128 characters
  • Header Length increased to 15 chars for `gtVersion > IBUS_GT_MKIII_NEW_UI`.
Uncategorized
  • Update BC127 definition verbiage
  • Fix possible memory leak in BMBT device name handler
  • Fix I2C implementation bug which prevented a dirty bus from being cleared
  • Break out PCM51XX start up by shutting down the DAC, then starting it when required (to hopefully resolve issues with I-Bus noises)
  • Improve VIN recognition logging
  • Fix auto power-off code not working
  • Report CD 7 for MID / CD53 UIs so that all 1-6 button presses result in a disc change event from the radio

1.1.15 (Right Click > Save Link/Target As)

Released: 2020-08-22

  • Complete rework of the lighting activation functionality. Lighting I/O status is now only requested when the dimmer state changes OR if we have gone more than 20 seconds without seeing the I/O status. This is different than before as I used to request I/O status every time the dimmer status was seen, but requesting the I/O status resulted in another dimmer status update (which caused an avalanche of messages). Further, code was added (kindly by another contributor to the project) to identify the particular LCM/LSZ variant and send the appropriate values in the bulb activation request
  • A bug that caused the E46/Z4 IKE to dim out when using turn signals during the day has been resolved
  • Cyrillic character transliteration has been added (by another contributor). This also includes the angled quotation marks that many iPhone's like to use (which should fix how your iPhone's name is displayed on screen).
  • The DAC is now powered down at boot, then it is powered back on shortly after. This should hopefully clear the condition that causes the I-Bus impulses to be audible at every volume level.
  • The I-Bus message queue is now capable of firing off more than one message at a time (which was a bug).

1.1.14 (Right Click > Save Link/Target As)

Released: 2020-07-05

  • Shutdown all unused I/O ports
  • Ignore values for coolant temperature that are outside of usual ranges
  • Resolve issue with radio overlay button in BMBT UI causing the UI to jump back to overlay mode even when on OBC / Nav
  • Add support for extended ASCII characters, since most BMW UIs support this encoding
  • Resolve issue with BlueBus keeping vehicles awake via TEL ON by shutting it down when the ignition is turned off
  • Resolve issue with BlueBus waking other modules up by pulling the I-Bus low just prior to sleep