There’s a BMW factory level diagnostic program called Tool32 that might help when trying to reverse engineer stuff like this. I don’t think there’s a way to legitimately get ahold of this software though…
Anyway, it has a bunch of test operations you can perform. For example, you can set the individual gauges in the gauge cluster to specific values, etc.
Perhaps there are some tests for the shifter and you can sniff the bus as they’re performed?
These are all done over the OBD port so it shouldn’t be that hard.