Yes, you’d have to run two basic interfaces from the one Arduino to give the separation, timing I think would be less critical for such a defined set of messages.
From what I can see the Arduino is easily swamped if you want it to process and “do” something in response to every message but it does OK at listening and reacting to messages. My hacked together code also isn’t set to time the inserted messages correctly, although the repetition of messages is pretty good. This stuff isn’t my forte and I muddle through but it’s an interesting project.
Before the great smoking Arduino incident I was using one to inject HS data into the cluster and another to read the MS data coming out of the cluster to to confirm the translation behaviour. For the cluster LCD message games it’s a challenge because all the cool data is on HS but the LCD messages are written on MS so to make a useful gadget I would need to run dual bus interfaces.
I had some new gear turn up this week so I’m hoping to build up a new test jig.
The cluster does have a lot of smarts, but your assertion that an aftermarket
ECU could drive it is 100% true. It also is the analog to CAN bridge for ambient air temp and the fuel level. Once the factory
ECU is jettisoned you may assume the cluster would “lock” due to PATS but it seems that the GEM and cluster aren’t impacted by the theft system, although they form part of the system.
I think the lower end Haltech units now have CAN enabled which would make a programmable
ECU a very affordable option. I may have a read of their manuals just to see whether the messaging could be configured to suit what we know.