Seeed Studio XIAO Meets OFM?

Hey folks,

some people have asked me if it’s possible to use the XIAO Sense from Seeed Studio as a camera for the OFM. Why not?

Here a design suggestion:

Don’t have an OFM at hand, but perhaps somebody is keen to try it out? :slight_smile:
00_OFM_optics_picamera_2_rms_f50d13_lid.stl (111.7 KB)

00_OFM_optics_picamera_2_rms_f50d13.stl (2.8 MB)

Good luck!


potentially pretty useful :slight_smile:

I’m deep in the rewrite of LabThings at the moment, but once that’s done it will become massively easier to integrate new cameras/stages/extensions into the OFM software (though I realise you may not need or want the OFM software with that camera). I’d be curious to try it out, once I have emerged from my coding sprint…

1 Like

A coding sprint sounds fantastic. I made some Python adapters either for the serial or the wifi connection. Would love to embed that in some standard! :slight_smile:
Check this web-serial implementation. I guess one could drive the whole open-flexure in the browsr at ease :wink:

Thank you for sharing, @B.Diederich! I just sent those files to print. An XIAO arrived at the Institute last month. As soon as I have some pictures, I will share them in this post :slight_smile:


Hi @B.Diederich, finally, I found a space in my calendar to share some pictures from my tests.

STL piece: I printed it using black PLA with 20% infill. I made a mistake. I used support, and it was hard to remove it, especially from the holes for bolts. I am not sure if the 3D printer is able to print the camera zone without support.

The camera (sensor) fits well, but the boards fit partially, as you see in the pictures below:

Optics: I used the standard high-resolution configuration of the OpenFlexure Microscope, but I had only a 4x objective lens this time. The sensor was tight enough that I didn’t need the lid. I used tape to hold it and avoid any movement while I was using it with the USB-C cable.

OpenFlexure Microscope: I used a v6 microscope and added a riser because of the optics. As you can see, this configuration with the ESP32 fits well in this non-Raspberry Pi version, and it may be the same for the v7.

Pictures: Here are some pictures that I took from a fern rhizome slide and how it looks on the interface.


This version looks promising, but the main downside is that the camera gets hot after streaming for several minutes. Is a heat sink or cooler a solution? How was your experience with other instruments?

1 Like

That is cool. It is a pity that the image does not fill the entire frame of the camera. The camera specs that I found say the sensor size is ~3.6x2.2 mm, which very similar to the Pi camera. Looking at the sliced STL it seems that the camera sensor will end up a few mm below the nominal position of the Pi camera in the standard optics, which could be enough to make the image too small. I assume that you have installed the f = 50mm tube lens?

My guess is that this might not be an image size issue so much as an illumination size issue: the normal illumination is good for ~20x upwards, has a bit of vignetting at 10x, so I’d expect the edges will be very dark at 4x. It would be possible to alter the condenser to work better - but TBH there are probably better solutions than an OFM for 4x, so it has never risen that far up the list of jobs… If anyone did want to work on a 4x condenser I’d happily supply a few pointers. But Julian’s project is likely a better option.

It’s very nice to see the zoo of optics modules growing! We will have to do a better job of making the other options visible from the instructions :slight_smile:


May be one could make an adapter piece for the PUMA condenser / Köhler module. IIRC it is just screwed into a plate with a hole. So it shouldn’t be a complicated piece. Otoh one might want some more sophisticated adjustments (not that PUMA has those either) but for an inverted scope an Abbe condenser is right on top of the slides so some Z travel would come more handy than for an upright scope like the PUMA. May be one could make the arm holding the condenser fold back out of the way as a simple solution.

The PUMA Köhler module also has a mirror to not run into the ground. For OFM that only make the module bigger and more complicated than it needs to be. So long term goal might be to come up with something different there.

1 Like

I did print the PUMA illumination in the summer for just those reasons. I only got as far as printing the parts and looking to see that it might fit. The diameter is quite large compared to the Openflexure microscope, but I think it would not intersect with the illumination mounting. I got no further because I had none of the optics parts for it. The dovetail illumination mounting could have a separate clamp as an adjustable stop, so that the illumination can be moved up out of the way, and then back down to the stop.