dektronics / printalyzer-timer

F-Stop enlarging timer and print exposure meter
24 stars 6 forks source link

Convert meter probe interface to USB #49

Closed dkonigsberg closed 7 months ago

dkonigsberg commented 8 months ago

The current meter probe interface uses a form of buffered I2C over a cable with a 6-pin Mini-DIN connector. This has the advantage of being able to leverage cables left over from the era when PS/2 keyboards and mice were common in PCs, but it also has a number of disadvantages:

The proposed solution to this is to switch the meter probe interface to simply using USB, as it solves many of these issues:

The chosen approach for this change is to integrate the FTDI FT260 USB bridge IC, which provides a HID-compatible USB 2.0 FS interface on one side, and provides I2C and several supporting signals on the other side.

This IC does have a few drawbacks that will need to be managed, but it is hopefully worth it for the benefits. These basically revolve around the 1ms SOF interval of USB, which limits our interrupt response time and transaction rate to much lower than we'd have with a direct I2C interface. However, testing has shown that these can be sufficiently managed so as to not be a serious problem.

The integration plan involves using the "Bus Powered Configuration with +1.8V I/O Voltage" from the datasheet, to enable the use of a simpler LDO, and a configuration EEPROM that is large enough to serve as both the configuration memory and the sensor calibration memory.

dkonigsberg commented 7 months ago

Changes implemented