FORscan recommend the OBDlink MX+ https://a.co/d/0gBt1bJx or OBDlink EX https://a.co/d/03YqFyqU they say the EX is safer for programming because its connected via usb with a cable but i used the MX+ via bluetooth and it worked but i would recommend the EX if you are not sure of the stability of the bluetooth on your laptop
I have a 2018. I use this Bluetooth scanner. https://a.co/d/03ETzt0r The only other thing I had to do was get the secure gateway bypass cable. I forget where I got it from but I think you can get them on Amazon now.
I use the OBDLink MX+. It's one of the more expensive ones, and I'm sure some of the cheaper ones would work fine, but this unit is just rock solid, IMO, has great range and just never fails to connect and record data reliably while I previously owned a much cheaper one that worked, but was far more finicky. https://www.amazon.com/dp/B07JFRFJG6 As far as a tool, I just use the CarScanner app as it has all the profiles for the ZDX, and for my Cadillac Vistiq as well, and it has good default dashboards and overall decent recording capabilities, even if I find the UI to be a bit of a pain, one you kind of have it setup it works really well. Similar to the hardware, there may be other apps that are better/cleaner or more suited for EVs, but I've been using CarScanner for a while now so I'm just used to it and it's allowed me to learn quite a bit about how these vehicles function, especially how the cooling and charging systems behave in various conditions (for example, what pre-conditioning is actually capable of doing, how long it really takes, etc).
My current one is not super cheap, but it's very reliable. It's this one: https://www.amazon.com/dp/B07JFRFJG6

