I’ve not yet discovered any bugs in the march updates of the TCD1304-driver firmware, but that doesn’t mean there’s no room for improvement.
For instance, the time to capture a dataset can be as short as 15 ms + integration time, but transmission of the same dataset takes more than 642 ms.¹ So if you want to average just two readings, it will take you at least 1.3 s regardless of the integration time.
Wouldn’t it be wonderful if the firmware could handle averaging on it’s own? Well, now it can. You can request from 1-15 integrations, which will then be collected, averaged and sent back to your pc (in that order).
The CCD isn’t flushed between readings as the integration time is the same for each collection. That means you’ll save up to:
15·(15 ms + 642 ms) = 9855 ms
that you can spend doing things you love. But wait, there’s more! To actually make it work the CLI has also been updated:
TCD1304-driver firmware (UART) [sep. 10th 2017]
Otterly CCD CLI (sep. 10th 2017)
On an entirely different note, I’ve changed laptop, and somehow it has broken the Otterly CCD GUI. (Well to be fair it was held together with chewing gum and duct tape.) The program’s not exactly beautiful – not on the outside and certainly not on the inside – but I will clean up the communication functions in the coming days.
Oh and I almost forgot. Here are two captures from my OtterVIS with the new firmware:
One single integration.
Fifteen integrations averaged.
There are all sorts of artifacts present in this spectrum of an incandescent bulb, so it’s not so easy to see the improvement. I will see if can find it in my heart to make a better example.
1 The 15 ms goes to flushing the CCD. The 640 ms is because the UART runs at 115.2 kbps.