The Hamamatus SPI board is up and running! The design files include the sensor board and a mating carrier for a Teensy 4.0
Here is a link to the repo.
This is a self contained sensor board in the sense that it has its own high precision low noise differential amplifier feeding into a 16bit 1MSPS ADC with the external interface being SPI and digital I/O. There are logic converters and a VDD input that allows the board to interface over a range from 1.7V to 5.5V. Power for the sensor and amplifier is 5V, which in this instance is provided by host MCU carrier.
The bag of part is around $50 and I have heard that the sensor is available for around $100. So it is bit more expensive compared to the Toshiba. But the factor of 10 lower noise floor means that in principle at least, it can cover an intensity range not accessible to the Toshiba, and it has a dynamic range such that a 16 bit ADC actually becomes a rational design choice.
The firmware (i.e., "sketch") is written largely to the standard Arduino libraries, with two optional register level enhancements for the i.MX RT (i.e. Teensy 4). The interrupt latency enhancment was with help from Paul and the SPI overhead enhancement was with help from KurtE.
The core of the firmware is a state engine that runs from a kind of secondary clock generated by the chip. I think it is pretty interesting and invite those who are interested to take a look. Interrupt latency is important in the state engine, and this is where the enhanced interrupt interface and lower overhead SPI are important. So in that sense, the firmware benefits from the help of our community.
The Python code already posted in the TCD1304 repo runs this board too, and I plan to soon post a C language utility and library that also operates all of the linear CCD boards that I am building and is compatible with windows and linux.
This is part of an effort to make high end scientific instruments more affordable and more accessible.
Here is a link to the repo.
GitHub - drmcnelson/S11639-01-Linear-CCD-PCB-and-Code: PCB and Code (Teensy 4) for the Hamamatsu S11639-01 Linear CCD with 16 bit ADC and SPI interface
PCB and Code (Teensy 4) for the Hamamatsu S11639-01 Linear CCD with 16 bit ADC and SPI interface - drmcnelson/S11639-01-Linear-CCD-PCB-and-Code
github.com
This is a self contained sensor board in the sense that it has its own high precision low noise differential amplifier feeding into a 16bit 1MSPS ADC with the external interface being SPI and digital I/O. There are logic converters and a VDD input that allows the board to interface over a range from 1.7V to 5.5V. Power for the sensor and amplifier is 5V, which in this instance is provided by host MCU carrier.
The bag of part is around $50 and I have heard that the sensor is available for around $100. So it is bit more expensive compared to the Toshiba. But the factor of 10 lower noise floor means that in principle at least, it can cover an intensity range not accessible to the Toshiba, and it has a dynamic range such that a 16 bit ADC actually becomes a rational design choice.
The firmware (i.e., "sketch") is written largely to the standard Arduino libraries, with two optional register level enhancements for the i.MX RT (i.e. Teensy 4). The interrupt latency enhancment was with help from Paul and the SPI overhead enhancement was with help from KurtE.
The core of the firmware is a state engine that runs from a kind of secondary clock generated by the chip. I think it is pretty interesting and invite those who are interested to take a look. Interrupt latency is important in the state engine, and this is where the enhanced interrupt interface and lower overhead SPI are important. So in that sense, the firmware benefits from the help of our community.
The Python code already posted in the TCD1304 repo runs this board too, and I plan to soon post a C language utility and library that also operates all of the linear CCD boards that I am building and is compatible with windows and linux.
This is part of an effort to make high end scientific instruments more affordable and more accessible.