I thought b1 low bit needed to be 2 from prior posts? I do have the DME program update from
@carabuser that should move 2 from _anz to 0x399 b1 bits 0-1, but I have not flashed. I'd prefer CAN first as a less risky first test, but if someone more experienced in assembly can double-check and confirm changes in post 86 above, I may just flash that if this sketch takes too long. If it needs to be 1, we'll have to redo and pull from something else though.
I'm still working on counter/checksum bit/byte math for b0 programmatically in arduino since I haven't had to mess with it before and it's taking some time since I'm getting a crash course. If anyone has a basic function to generate the on-the-fly b0 math, the rest is pretty straightforward.
Everything expected (DSC/drive logic) with MSD81 changes on the CIC, except power. It is still problematic on non-M and what I think the Z4 button setup may allow if it gets to that, but it may work with a complete 0x399 too. If your CAN logs/layouts are any indication, it may also be what's needed to enable shiftlights on M3 Kombi in non-Ms.