OK, so I ended up finding this post about compiling python3.9, plus a fix for the reference call to the optommp library so got things working in 3.9. very nice.
I did notice the calls for IP, mac address don’t parse (I don’t need them, just thought I’d mention it for others trying python3):
grvEpic.MACAddressE0()
grvEpic.IPAddressE0()
They produce parse error:
raw = struct.unpack_from(‘>c’, bytearray(data_block[i]))
struct.error: unpack_from requires a buffer of at least 1 bytes for unpacking 1 bytes at offset 0 (actual buffer size is 0)