Wireless texting with Ti89 calculators

Hello, I have been trying to create a wireless texting pipeline with Ti-89 Titanium calculators. So far i have written some code and set up a circuit to communicate through xbee communication. The calculators can "text" each other without any modification by simply attaching a link cable (2.5 mm audio jack) between the two and running a simple ti basic program. The idea behind this is to just send the pin changes straight over wireless acting as if there was a wire, so there is no need for emulating the protocol which keeps the programming side simple. The ultimate goal will be to have it wireless but for now im just connecting rx and tx of two arduinos to text if the program and circuit will work. The calculators currently fail to communicate with what i have so far and i'm unable to understand why.

I used hardware interrupts to be notified when the pin state changes, and then i send this change over the TX->RX pins to notify the other arduino that it should set it's pin to the state i sent it. I used software serial because i heard that normal Serial will hang in a hardware interrupt routine. With the use of software serial it shouldn't have the same issue as it doesn't rely on hardware interrupts to send the data so i don't think there should be any issues there.

Calc_chat_3.ino (1.67 KB)

I haven't looked at your code but there can be a lag between when bits are sent to an XBee and when these bits are actually transmitted. You don't have send data in packets but the XBee does and it avoids sending partial packets. The XBee waits a small amount of time after it receives data to see is there is any additional data to include in the packet it sends.

I bet this delay is messing up the communication.

You might have better luck using the protocol used by the calculator to communicate with a PC. Have you seen the information at this website? It might be helpful.

I considered the fact that the xbees might be messing up the communication. In order to test if that was the issue i temporarily just hardwired RX-TX and TX->RX (software serial) with jumper wires. Even with a hard wire connection the calculators failed to link successfully, but they did fail with a an error on each, which indicates that they are at least sending and receiving some sort of data. I'd rather not have to emulate the whole protocol as that's significantly more work, i want to basically act as a "Man in the middle" on the wire and just forward the bits the calculators send to each other. Any other ideas i could check out?