If you've been following my cars for some time, you know I have a special kind of love for finding structure in what might appear like a bunch of 0's and 1's to others.
Some topics from the past:
Hacking ambient color profiles (+ free 010 editor template for all to use)
Hacking ambient color profiles part 2, the hacking continues!
Additional Ambient lighting zones (and controls)
On the Formentor, ambient zones are configured in a different way than on the Golf and Leon. So I grabbed my favorite hex editing tool, 010 Editor, and took a deep dive into the ambient coloring datasets.
I have a couple of goals set for this research:
— find out the logic behind the Ambient "bitmask" adaptation channels.
— find out if it's possible to add more (unique) colors
— find out if it's possible to add more ambient zones
— have fun
— share the knowledge
Let's start with the bitmask logic. It's pretty straightforward, and I probably "discovered" things that many people already discovered before me.
On the Formentor, the Ambient bitmask adaption value is set like this:
Interior_light_hmi_config:
Hmi_ambient_colors_bitmask:
3ff00000
Hmi_contour_colors_bitmask:
3ff00000
Hmi_ambient_colors_fod_bitmask:
3ff00000
Hmi_contour_colors_fod_bitmask:
3ff00000
When surfing on seatcupra.net, obdeleven and other forums, I read about people changing this value, and getting extra colors in return. But… the colors were not quite unique. But why? The answer was quite clear, when looking at the dataset. Let's have a look together.

Don't let the mess discourage you from reading any further, because I will make it a bit easier to understand. I wrote a 010 editor template to parse the values and display the colors in the screen, but you can also see them on the right:

The dataset consists of:
30 HMI colors
20 additional HMI colors
30 LIN colors
20 additional LIN colors
There's a difference between the HMI and the LIN color, because the LEDs in the car don't display the exact same color as the colors that are shown on the screen (read more about this here: www.drive2.com/l/594415778258794719/) . The HMI colors are what we recognize on screen, so first let's look at those.
30 colors, means 3 sets of 10. Formentor has 10, Leon has a different set of 10 colors, but with the same dataset… that's where the bitmask is used:
If you convert the value 3ff0 0000 to binary, you will end up with "0011 1111 1111 0000 0000 0000 0000 0000". As you can see, there are 10 1s. The Leon has 000f fc00, which is "0000 0000 0000 1111 1111 1100 0000 0000", also 10 1s. If you look at the color list, it means the following:
— On Leon, the first 10 colors aren't used, colors 11 until 20 are used, and 21 until 32 is not used.
— On Formentor, the first 20 colors aren't used, colors 20 until 30 are used. 31 and 32 are not used.
This explains why there are duplicate colors when setting ffff ffff as the bitmask, because then each of the colors is enabled, which will lead to many duplicates.

My first experiment will be to replace the Leon colors with Formentor colors (to keep the mapping for driving profiles, door open, and effects identical to what I currently have), and put new, unique colors in the place of the Formentor ones. I've heard that it's not possible to add all 30 colors (or even 32) like on VW, Skoda and Audi, but that's for later.
I'll write a new blog when I have more updates, and I'll also share the 010 Editor template as soon as I've done some tests on my side. Until then: don't pay any money to get the purple color, because it's a waste of money!

--------
If you're happy with this post, feel free to buy me a coffee in return for the knowledge. See my website MQB Tools which explains how you can support. The site also has some useful tools.


Comments 12
Thank you for this analysis.
I'm trying to understand how the color list is generated, but my English isn't very good.
Just FYI, with my formentor (h56), I get a faint purple color when I reset the user, but it's not an option in the ambient color choices.
I read on a forum that you need to flash the BCM to get the purple color
Yayyy, finally you are messing with RGBs! So instead of "ambient light color list" in 09 adaptations (like in Leon 3) those colors are "hardcoded" as dataset? Can't wait for more in-depth analysis (maybe around slave groups and zones?). I find this RGB topic very interesting haha
Indeed, they are saved in the DA_009_7206 dataset in the BCM. The Leon mk3 was much easier to customize…
Today I finally got to flashing a modified dataset with custom colors. A succesful test!
Hi! Do you have a step by step tutorial on this?
Great work! :D
Would be great if you find something for MLB cars as well 🤩
If someone can supply me with a MLB car doe daily use, I am more then willing to do all the research 😁
😂😂
I can let you use mine for extracting data from it
Are ambient lights configured through datasets on the MLB ? Never hurts if I spend some time on them 😎
Yes, they work via dataset, I saw someone used an Audi A8 dataset on a A5 and the lamps configuration have changed
Nice job!
Thats nice! I am also planning to add ambient light (that never existed before) to my car. Some soldering required on BCM to add some extra small components.
Good luck!