I am trying to implement the ISO 7816-3 protocol as can be found in the EMV Co. Book 1 using an ESP32 and MicroPython. However, I noticed that the default state of the I/O line is HIGH, and there's only a single I/O pin, which is two-way.
So, If both sides are listening, and sending a HIGH signal, how is either side supposed to detect a LOW signal? If one of the two switches the line from HIGH to LOW, there will still be 5v supplied to the line by the listening party.
Being a half duplex protocol is each party supposed to only output high at alternating cycles? Or is the idea to detect a current flow?
I feel like the answer to this is actually quite simple and I am missing something, possibly some hardware implementation detail that I am unaware of, but I couldn't find the answer in the interface requirements.