February 15th, 2022—
The Psion Organiser I, released in 1984, was a pocket computer — the kind of device that would soon fit the description of a PDA (personal digital assistant). Its successor, the Psion Organiser II, was similar and included a tactile keyboard, a small LCD screen, a processor, and memory, so users could write and run programs. James Stanley created an Arduino-based adapter for the Psion Organiser II that turns it into a USB display.
The Psion Oganiser II had three peripheral ports. Two were for “datapaks,” which were expansion modules (including UV-erasable EPROM). The third is for a communications cable. Unfortunately, it is hard to find a CommsLink cable today. So Stanley created his own adapter. But this came with a challenge: two-way serial communication with the Psion Organiser II’s CPU requires precise timing. Without dedicated hardware built for this serial protocol, communication is difficult for even modern microcontrollers to handle in software. And one-way communication can interfere with the datapaks and cause issues.
Stanley’s solution was very clever. He connected an Arduino Nano board’s digital IO pins to the CPU’s “port 2” data bus through 510 ohm resistors. Those resistors fit into a goldilocks where the Arduino can pull the data lines high or low, but only if that doesn’t contradict communication between the datapaks and the CPU. So datapak communication will take priority. If no communication is occurring between the datapaks and CPU, the Arduino can send data directly to the CPU. In practice, as machine code sent through the Arduino’s serial port that will display a desired text string on the Psion Organiser II’s LCD screen.