WEBVTT

00:00.000 --> 00:11.880
Okay, hello Foster. It's good to be back. My name is Joe, I'm a research for the University

00:11.880 --> 00:18.920
of Glasgow, my second time at Foster, and my talk is about open research about something

00:18.920 --> 00:25.720
called the open flexion microscope, and I've got it from two sort of directions. The research

00:25.720 --> 00:32.720
using the open flexion microscope, we both develop it as a tool, try and improve it,

00:32.720 --> 00:38.920
improve it, increase it's capabilities, but also look at the applications for it, not developing

00:38.920 --> 00:46.920
it as a tool for tools sake, but an entire ecosystem of a journey of everything that is,

00:46.920 --> 00:53.280
in some ways quite a simple device has gone further than I think anyone on the team ever

00:53.280 --> 01:07.120
saw. So, this started with more technical issues. Well, that's a real shame. This started

01:07.120 --> 01:13.760
a few years ago at the University of Cambridge with my boss Richard Beaumont, working

01:13.760 --> 01:21.160
in an optics lab, and for the afternoon board question he was asking himself is, taking one

01:21.160 --> 01:26.840
of the big metal expensive microscopes in the lab, how much of that can you replicate

01:26.840 --> 01:33.080
at home using basic tools, a 3D printer, and off the shelf parts. And the answer

01:33.080 --> 01:39.520
it turns out is quite a lot, otherwise I wouldn't be here. This was the early prototype.

01:39.520 --> 01:45.520
You can see it's a couple of long way since then, but the idea of having three gears,

01:45.520 --> 01:52.960
some plastic parts, and a Raspberry Pi camera, with a basic lens, it's really working

01:52.960 --> 02:00.600
as a digital microscope. So, this was the first published piece of research about the open

02:00.600 --> 02:08.760
flagship microscope, February 2016, so we're currently celebrating 10 years, and it was looking

02:08.760 --> 02:15.120
out, again, basic 3D printers, basic off-the-shelf optical components, and what level of

02:15.120 --> 02:21.440
performance you can get, combining those to make a translation stage, putting a slide on

02:21.440 --> 02:27.360
there and using it as a microscope. It's all based around the idea of flex your hinges, hinges

02:27.360 --> 02:32.280
that rather than parts, swining past it, which 3D printed parts are generally quite bad

02:32.280 --> 02:36.920
out. Instead taking advantage of something that plastic is very good, which is deforming

02:36.920 --> 02:43.920
reliably and repeatedly, the flex your hinges is what gives the stage its translation,

02:43.920 --> 02:50.880
and the fact we are open is what gave open flexure its name 10 years ago. We take this

02:50.880 --> 02:57.000
flex your hinge, put it in a few key places around the structure, and that lets us scan

02:57.000 --> 03:03.560
around samples automatically. And the early paper was really focused on the mechanical

03:03.560 --> 03:08.440
performance of it, the drift, the repeatability, the reliability and the precision. But

03:08.440 --> 03:14.640
it showed that this is an approach that does work, you can use just the repeatable bending

03:14.640 --> 03:20.360
of plastic to position something accurately enough that you can use it as a microscope.

03:20.360 --> 03:26.280
And from there, the research into open flexure really started. So, we wanted to use the

03:26.320 --> 03:32.400
Raspberry Pi camera for quite a few reasons, but it is, I think, fair to say, and I don't

03:32.400 --> 03:36.080
think anyone here would disagree with me, not exactly what the Pi camera was designed

03:36.080 --> 03:42.440
for. And so, the early question was, well, is this going to work? Can we calibrate the,

03:42.440 --> 03:51.200
it's okay? Can we calibrate the collar to make it a true recreation of the sample when

03:51.200 --> 03:55.080
we're not looking at something that's 2, 5, 10 meters away, we'll look at something that

03:55.080 --> 04:01.400
at times is only a couple of microns away. Here you can see on the left of the before,

04:01.400 --> 04:07.600
I don't know how well the projector is showing this, of applying green, blue and red sample.

04:07.600 --> 04:15.440
This is after calibration. And also, how are we going to do this in a way that's not just

04:15.440 --> 04:22.120
open but repeatable? And, done in a way where we can go through our history, and we learned

04:22.120 --> 04:27.120
a lot of lessons from open software development. Our microscope is designed in open

04:27.120 --> 04:31.640
SD card. It's a programming based CAD package. That means that we get the same version

04:31.640 --> 04:38.280
control as any software development team. It means that when we change the position of

04:38.280 --> 04:44.080
something or the height, we can see that in the history as physical code that's changed

04:44.080 --> 04:51.600
to move the physical parts. That also means that we can do what we called hardops, so using

04:51.600 --> 04:59.080
the GitLab CI to automate a lot of hardware steps. So, mad as this kind of sounds as

04:59.080 --> 05:05.280
a phrase, we link to our hardware. We automatically rebuild it every time something's

05:05.280 --> 05:12.680
pushed or merged. As part of that pipeline as well, we automatically redo all of the vendors

05:12.680 --> 05:17.120
that are in our instructions. It sounds like quite a cute line to say we've spent more

05:17.120 --> 05:21.960
time on our documentation than we have on the physical design, but I can show you the

05:21.960 --> 05:27.760
time sheets, it is 100% true. A big part of that is making sure that we're reaching as many

05:27.760 --> 05:32.720
people as possible who aren't confident engineers or builders. And one thing that we've

05:32.720 --> 05:38.520
got is feedback quite often is the photos in your instructions don't match the parts that

05:38.520 --> 05:43.760
I've got, which was often, you know, we changed the size of a gear or the angle of a hole,

05:43.760 --> 05:49.040
something like that. It's one of the fundamental we didn't matter to the build, but still

05:49.040 --> 05:56.440
people who weren't confident, would he be able, I'll just say quite often. Instead, when

05:56.440 --> 06:01.760
our automatic we rebuild all of our vendors that are in the instructions every time there's

06:01.760 --> 06:09.560
a change, and as part of that, we also have the release on the outside and the GitHash to build

06:09.560 --> 06:15.560
those parts on the inside. That means that we can make sure that everyone's on the same page

06:15.560 --> 06:21.080
with the hardware, it means that if I'm working with a collaborator who swears 100% absolutely

06:21.080 --> 06:28.240
that they did print the right part, I get to go in and check. So it's a popular feature for

06:28.240 --> 06:34.520
me, but some of the collaborators may be not so much. We also worked at how we can compensate

06:34.520 --> 06:41.680
for some of the inherent limits of this approach to building a microscope. The hardware,

06:41.680 --> 06:47.000
I'm sorry to say, is not as precise as a half million pound-side scanner straight out

06:47.000 --> 06:51.120
of the box. Some people come up to our store and tell us that as if it's some sort of

06:51.120 --> 06:59.200
gotcha. But we listen quite smart with this digital microscope, and that's, we put a sense

06:59.200 --> 07:06.400
of in there. So that we can monitor how successful it is moving and working. We're using

07:06.400 --> 07:11.640
the pie cover. So if the things like this, we can, when looking at blood smears, check our

07:11.640 --> 07:16.640
focus as we're going. This is looking at a blood scan on the upper plate of microscope,

07:16.640 --> 07:23.840
when you're 10 microns out of position, 5, 3, 2, 1, and in focus. We know what this looks

07:23.840 --> 07:29.520
like. We can self-calibrate our movements now scanning as we're going rather try to solve

07:29.520 --> 07:42.320
everything at hardware. Working on the software, we align it with the web of things inside

07:42.320 --> 07:47.920
every microscope is a Raspberry Pi that spins up a web server and controlling the hardware

07:47.920 --> 07:52.480
as a simple HTTP request. That means that a lot of people have got in touch saying that

07:52.480 --> 07:56.800
they only wanted part of the microscope and wanted to bring some of them in hardware and

07:56.800 --> 08:01.160
everything into faces seamlessly. It also meant that someone got in touch saying that they

08:01.160 --> 08:06.600
had done open-flight surveillance control for example weaving the microscope in a few

08:06.600 --> 08:13.240
in the cupboard, or an incubator, and blockly. So being in programming to people who aren't

08:13.240 --> 08:21.080
comfortable with programming. We also have some more dead links and two sort of spin-out projects

08:21.080 --> 08:26.600
to the delta stage and the block stage. Same approach in terms of how far can you take

08:26.600 --> 08:32.040
flexure-based 3D printing. All of the same approach of how can we make this as open as

08:32.040 --> 08:38.760
accessible as possible. We published our version 6 of the microscope paper a few years ago

08:38.760 --> 08:45.640
now where we're talking about all the capabilities things like for the SNS imaging, reflection,

08:45.720 --> 08:51.160
transmission, all the different imagery modes and things that we've developed over the previous

08:51.160 --> 09:03.400
few years. This is rough. Well, it means I won't run over time. And then we also shared

09:03.400 --> 09:08.920
a lot of our experiences because we were co-developing this with a team in Tanzania and we do

09:09.000 --> 09:18.840
mean co-developing. And that is in some ways very, very challenging. And some of the lessons

09:18.840 --> 09:25.320
learned about how to co-develop something with partners in Tanzania when, for example, it's March

09:25.320 --> 09:31.880
2020 and your fight has just been cancelled. We were over there just as Heathrow Airport shut

09:31.880 --> 09:38.840
down during COVID so that was about the most stressful work travel I've ever done. And that

09:39.800 --> 09:46.520
we've come to this a 3D printed automated microscope with customizable optics, with different

09:46.520 --> 09:57.800
imaging modes, running a fast API server. And the first rule of talks in engineering is never

09:57.800 --> 10:02.360
given live demo. But considering how well my slides have gone, maybe this is for the best.

10:03.560 --> 10:08.280
So this is a live stream from the microscope. You can either trust me that it's live or I can do this.

10:09.160 --> 10:16.760
And if anyone thinks that I've time to that perfectly, you're more paranoid than me.

10:18.200 --> 10:22.440
But this is the research that's going on to the microscope. Now at the University of Glasgow,

10:22.440 --> 10:27.320
and a few other research places, things like the auto focus that I've just done, clicking around

10:27.320 --> 10:35.160
the sample, capturing images, calibrating everything. So if, for example, you just flown with this

10:35.160 --> 10:40.760
microscope through Edinburgh Airport and security weren't too sure about it. And they decided to test it

10:40.760 --> 10:46.920
by giving it a little shake. We could also calibrate for that. That also means that if you're not confident

10:46.920 --> 10:51.800
in your printer or in the parts that you've got, this self-calibration runs automatically,

10:51.800 --> 10:56.120
giving you a report on whether or not the stage is moving as expected, whether or not the camera

10:56.120 --> 11:01.320
can calibrate properly. One of the big projects that we want to work towards the next couple of

11:01.320 --> 11:06.840
years is a fun calibration report. So when we launch version 7 of the microscope, people could

11:06.840 --> 11:13.480
run this calibration, send us the report and we can start mapping what the limits are. Is it

11:13.480 --> 11:20.600
in certain areas where people use a different supplier or our instructions are clear enough to

11:20.600 --> 11:26.040
people with English as a second language, things like that, mapping up what are the actual challenges

11:26.040 --> 11:31.000
around reproducing hardware around the world? Now it's hope that that calibration works.

11:39.160 --> 11:44.440
There's stuff. From here we can also do automated scanning and this has been a big focus of our

11:44.440 --> 11:51.320
work, the last few last couple of years, not just scanning a single field of view, but doing an

11:51.320 --> 11:56.920
automated scan where we can capture a VFocus and move around building up huge stitched images,

11:58.280 --> 12:04.360
like this, for you automatically getting the kind of detail you need to see inside a cell,

12:04.360 --> 12:12.120
it looks even better not on a projector. Variable for hobbyist, valuable for engineers,

12:12.120 --> 12:16.120
potentially invaluable for people like pathologists who are overworked and don't have the

12:16.120 --> 12:20.920
funding to hire the number of people they need to be scanning samples and spending time with patients.

12:22.120 --> 12:28.040
And that kind of would be it, as I'm having the five minute sign, where you've got me,

12:29.320 --> 12:37.720
but there's also all the people we've got in touch with broken lengths as well. Not one

12:37.720 --> 12:45.000
after we launch this, something started happening because we did something that seems insane to

12:45.080 --> 12:51.880
anyone, maybe not in this room, which is that we made this open source and as accessible as we

12:51.880 --> 12:56.120
could as well documented as we could and it wasn't long until a research group at a different

12:56.120 --> 13:01.320
university contacted us saying, hey, we've found your design, we've modified it to do super

13:01.320 --> 13:10.680
resolution microscopy. Cool. Or a team out in Japan got in touch saying, hi, we've modified your

13:10.680 --> 13:15.880
design for structure the illumination. So physically moving or grading around a filter out of

13:15.880 --> 13:20.520
adding out of focus light to get resolution higher than you would be able to on this otherwise.

13:21.320 --> 13:28.200
We've done that, we've taken all the data, we've published the paper and we thought we'd get in touch,

13:28.200 --> 13:37.160
we hope you don't mind. We didn't. For how they were able to modify the hardware so easily,

13:37.160 --> 13:45.160
I should put you towards Julian's talk this afternoon at 140. People also got in touch sending us pictures

13:45.160 --> 13:50.440
of, come by the store later, I'll show you the actual pictures. People got in touch showing the

13:50.440 --> 13:56.360
workshops, they've run with the education workshops, engineering workshops, also commerce workshops

13:56.360 --> 14:01.480
setting up the idea that people can sell this and turn a profit and support the community that needs

14:01.560 --> 14:08.680
more hardware, more technicians, more people using microscopes. And then people also started getting

14:08.680 --> 14:13.800
in touch saying that they'd used our microscope, not because they were interested in a 3D printed

14:13.800 --> 14:19.720
microscope, but because they needed a microscope and we were the best option available to them for

14:19.720 --> 14:25.800
one reason or another. And that became a bit of a transform for this where we've started to feel

14:25.800 --> 14:30.360
like we were just part of the scientific landscape, rather than being the novelty for someone who

14:30.360 --> 14:38.600
wanted to try out 3D printing, we were part of the microscopy world. People also got in touch

14:38.600 --> 14:43.000
a lot about healthcare applications, so a team in the Philippines got in touch saying that we've

14:43.000 --> 14:49.160
shown that your device has the ability to look at samples for tuberculosis, heart disease,

14:49.160 --> 14:55.400
and multiple other conditions, and it works. Dr Daniel Rosen, a professor of pathology over

14:55.400 --> 15:00.120
in the United States, is one of the big people who's been driving this project forwards,

15:00.120 --> 15:04.680
no engineering background at all, but I think at this point now is 6 3D printers in his shed.

15:07.080 --> 15:12.360
And he's been telling us, you know, you guys don't know what you made, this wasn't just a microscope,

15:12.360 --> 15:17.400
this is a slide scanner, digital slide scanner, which is prohibitively expensive for

15:17.400 --> 15:24.680
the majority of the world. He worked with us, he's published papers using our microscope to image

15:24.680 --> 15:29.560
cancer in the esophagus, and was also the driving force between a recent trip we had to

15:29.560 --> 15:36.600
so power. Hospital DMR in so power is the main cancer center for the country, and as part of that

15:36.600 --> 15:42.680
work, they buy trucks, strip out the back of them, and turn them into a lab, and that lab,

15:42.680 --> 15:49.080
goes and parks up wherever it's needed across the country, and where I say goes wherever it's needed,

15:50.120 --> 15:54.040
there is an incredible picture there, which has not worked with them floating one of these on a

15:54.120 --> 15:59.560
barge down the Amazon. So if anyone ever asks this open flex, if available on Amazon,

16:03.560 --> 16:08.920
we also use this platform for open pathology education, because the digital images that come

16:08.920 --> 16:14.200
off this microscope can be used for education, and it means that some of our collaborators in

16:14.200 --> 16:20.200
underserved regions can now run online lectures on a digital scan of the samples from cases

16:20.200 --> 16:27.240
that they see every day in their practice. The alternative is everybody gets trained on the same

16:27.240 --> 16:32.200
digital scans from areas of Europe and North America. It doesn't reflect the sample,

16:32.200 --> 16:36.680
doesn't reflect the conditions, doesn't reflect the sample preparation, that the majority of

16:36.680 --> 16:42.840
doctors around the world are looking into. We set up a forum so that people can start sharing their

16:42.840 --> 16:51.400
questions and ideas and work with us, and also set up a YouTube search alert, and these are people

16:51.400 --> 16:57.560
that are off and outside of academia, who there's no conventional academic way to ever reach out

16:57.560 --> 17:04.440
to people who had a 3D printer, were happy ordering parts online, and then you're doing things

17:04.440 --> 17:11.400
like machine learning on the pie to label various features of their samples from the forum as well,

17:12.280 --> 17:17.800
literally someone got in touch, I don't know his real name, saying that he was going to adapt

17:17.800 --> 17:23.720
this to do a top atomic force microscopy, to give you an order of scale that's going from looking

17:23.720 --> 17:29.160
at individual cells, to looking at individual atoms on this thing, and we thought, it's a

17:29.160 --> 17:36.600
lot of way idea, and then the schematic started coming out of his apartment in New York,

17:37.160 --> 17:40.840
some of these schematics had to be read on, because his children found them and thought that they'd

17:40.920 --> 17:47.560
help by colouring them in, and he now has a prototype, and just a reminder of his images continue

17:47.560 --> 17:55.720
to fail to load, that's where all of this started, and now we're here and with dozens of other projects

17:55.720 --> 18:00.760
I could tell you about, this is our world map of every country where someone's got an

18:00.760 --> 18:06.360
in touch with us saying we've built or used your microscope, and as much as I wish that this was

18:06.360 --> 18:11.240
me flying to 70 different countries with this in my hand luggage, that's not the case that's

18:11.240 --> 18:16.680
people finding this organically and getting in touch, the map tells half the story, but it's the

18:16.680 --> 18:21.480
people involved, the fact that if you put this out there people will find it and use it for things

18:21.480 --> 18:28.920
that you never thought were possible, or maybe even a good idea, and that's as far as we thought

18:28.920 --> 18:33.560
it would go with that world map with all the different countries coming in and hopefully every

18:33.560 --> 18:40.920
few months will be able to add one or two more, and then on LinkedIn we saw this a couple of months ago

18:42.120 --> 18:48.040
a group looking at immune cells in microgravity needed a microscope that they could adapt,

18:48.040 --> 18:54.040
it had to be lightweight, and it had to be something that was open source so that they could

18:54.040 --> 18:59.880
interface with other components, and so our world map, as of March 2027, is going to be a bit

18:59.880 --> 19:07.320
obsolete, and we're going to be doing a world gift instead. I'll finish with the conclusions from

19:07.320 --> 19:14.280
that first 2016 paper, written before I was on the project, and highlight this microscope is

19:14.280 --> 19:19.160
a useful tool on its own right, and there is much potential we plan to further investigate in the

19:19.160 --> 19:26.840
future, so in ten years essentially nothing has changed. I'd like to thank you all for listening,

19:26.840 --> 19:32.280
I know that I've got a swap that many of you wish that you didn't have to get up for,

19:32.280 --> 19:38.120
we have a stool just along here, and two more talks from members of the team on the educational

19:38.120 --> 19:44.600
applications and on the hardware journey itself. I'm very excited to take any questions, and you can

19:44.600 --> 19:47.000
find it out there until the end of the day. Thank you.

19:47.000 --> 20:07.800
Okay, well, we'll do, okay, thank you.

20:07.800 --> 20:20.680
In Antarctica, is using my requires strong words? The question was, do we know who was

20:20.680 --> 20:29.000
using the microscope in Antarctica? So the users per pixels in Antarctica is pretty good. It was

20:29.000 --> 20:36.120
a biologist a few years ago who wanted to take samples of the ice, triage them out in the field,

20:36.120 --> 20:42.600
so to speak, and then take the samples that looked interesting back to her lab. She's not on the project

20:42.600 --> 20:50.040
any more, but we're always going to be grateful for the work that she did. Is that else?

20:50.040 --> 20:54.440
Yeah, of these companies that sell the microscope. Yes.

20:54.440 --> 20:57.880
Now, Lord, you're skimmed, it's down with everything, and then you sell it to yourselves.

20:57.880 --> 21:00.440
Do you have any arrangements with them in financial arrangements?

21:01.320 --> 21:10.920
We have a, yes, so we do have, as you say, I think it's 12 vendors around the world at this point,

21:10.920 --> 21:17.960
who have got in touch saying that they'd be interested in selling kits for the microscope.

21:20.200 --> 21:23.800
Our license is very clear that we can't stop them, but we also don't want to.

21:24.520 --> 21:31.800
And we have regular meetings with them, we have a memorandum of understanding. Some of them voluntarily

21:31.800 --> 21:39.480
gives some of the profits back to the charity that supports disk growing network, others instead

21:39.480 --> 21:44.520
contributes to the code base, things like that. And then on our website where there's a list of vendors,

21:45.160 --> 21:48.920
we try to give it an idea of what contributions each of them voluntarily make.

21:49.880 --> 21:57.080
But to be honest, the contribution of them selling it is already enough of a contribution,

21:57.080 --> 22:01.880
because I don't like counting out screws and small bags. So, thanks, guys.

22:03.880 --> 22:05.160
Please.

22:05.160 --> 22:10.360
Is there any concession with the other, if you like, of course, a key platform?

22:11.080 --> 22:12.840
Are there any concession for the...

22:17.800 --> 22:25.720
Okay, so a question, first thing in the morning about our API have on and working with other

22:25.720 --> 22:26.840
open microscopy.

22:30.840 --> 22:35.080
I'm not aware of anything with four men go, but what you're doing?

22:36.920 --> 22:37.560
Okay.

22:41.320 --> 22:49.080
It means a bit, but for example, you see two of anyone's familiar with Benedict Deedrick's project.

22:49.080 --> 22:53.800
It's a series of modular cubes that all slot together so you can build an optical path.

22:53.800 --> 22:57.480
As long as you want, we don't quite have the space for that in here.

22:57.480 --> 23:02.360
So a few years ago, we worked with Ben A to print a little adapter plate,

23:02.360 --> 23:06.600
by essentially he bought the optics and we bought the stage, and they interface perfectly.

23:08.200 --> 23:08.760
Anything else?

23:10.360 --> 23:15.960
I'm really inspired to use a new process to another organization with a particular adapter

23:15.960 --> 23:21.560
as create a model for you. Is there a code review for the hardware you built it, how does that work?

23:21.560 --> 23:25.480
Oh, yes, so this code review for the hardware is much as this for the software.

23:27.080 --> 23:31.720
People have folks this and then modify it in different ways, quite often it's things like they only

23:31.720 --> 23:36.920
wanted, perhaps the Z control rather than the XYZ control. Sometimes they'll live as folks,

23:36.920 --> 23:40.280
but other people do get in touch saying that I think this is something that everyone would

23:40.280 --> 23:48.520
be interested in. Our documentation also has a list of customizations and other versions,

23:48.520 --> 23:53.400
which is where some of those live. So our microscope's unusual in that we have the camera in the

23:53.400 --> 23:59.400
base and the illumination at the top. There's a customization for this, which isn't as vigorously

23:59.400 --> 24:07.160
tested where that's inverted, but yeah, the code review for the hardware is a huge part of what we do.

24:07.560 --> 24:09.960
How was the time?

24:09.960 --> 24:13.160
Yeah, thank you so much, thank you so much.

