UC2: an open modular optical toolbox for building your own microscope
Respository for Open-Science modular microscope system.
At a glance
- What is it?
- UC2 is a general purpose modular framework for interactive electro-optical projects, built on the 4f Fourier optical principle so that a microscope can be assembled from cubes and baseplates that click together, with Arduinos and ESP32 controllers inside the same blocks. The repository itself now carries a notice that it is no longer actively maintained, with the project moved to a wiki, a forum and a firmware site.
- Who is it for?
- Adopt the UC2 designs if you want to build an optical instrument from open hardware blocks rather than buy a commercial microscope, and you are prepared to do the assembly and alignment work yourself.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 75 days ago.
- What is it written in?
- Mainly Jupyter Notebook, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A repository that says it is no longer maintained
The first thing in the README is an important notice, and it should shape everything else you read. The repository is no longer actively maintained, and the notice adds that openUC2 is more alive than ever, with the latest updates, documentation and community discussions moved to four other places: a forum at openuc2.discourse.group, a wiki at openuc2.github.io, the firmware documentation at youseetoo.github.io, and the project website at openuc2.com.
The framing line underneath is the aspiration the project is built around: open source forever, so we can become the Raspberry Pi for optics.
So this is a repository in the middle of a handover. The code, the CAD and the documentation are still here, and the notice tells you where the moving parts went. For a hardware project that is a normal pattern, because the artefacts have a long shelf life and the discussion does not. A 3D print file or a lens mount drawing does not need a maintainer; a forum thread about how to align a Köhler illumination setup does.
The repository is not archived and the last push was on 2026-08-09, and the README adds a second warning further down that the site is under revision with many changes ahead. So the tree is being touched while the project says the work has moved.
The release history is consistent with a hardware project rather than a software one. The tags are v3.0, titled V3.0 - Injection Mouldable Cubes, from 2021-04-19 and V2.0.0, titled V2.0 - Manuscript, from 2020-09-21. The version numbers track the physical design generation, not a package.
The primary language is listed as Jupyter Notebook, which tells you what is actually in the tree: notebooks of the build and measurement procedures, alongside CAD files and documentation.
The 4f principle, and why it makes a modular microscope possible
UC2 is described as a general-purpose modular framework for making interactive electro-optical projects. The idea is that most optical systems such as microscopes follow a simple 4f or Fourier-optical principle, where lenses are aligned such that focal planes of adjacent components overlap to limit the amount of aberrations as much as possible and to make the behaviour of the system easy to predict using Fourier transforms.
That optical principle is what the mechanical design serves. A conventional microscope has a fixed optical path with the objective, the tube lens and the illumination in a fixed arrangement, and changing what it does means changing the instrument. A modular system with a common mechanical and optical interface lets you rearrange the path, which is the same idea as the 4f arrangement being standard in the first place.
The magnification relation the README gives is the numerical core of the whole thing. A microscope creates an angular magnification depending on the focal lengths of the objective and the tube lens, and the relation is written in the README as M4f = f_tube / f_obj, with f_obj the objective's focal length and f_tube the tube lens's. Everything else in the design follows from that, because the ratio of two focal lengths is what you set by swapping lenses, and a block that holds a lens at a defined optical distance from the next block lets you change that ratio without redesigning anything.
The worked example the README points at is Köhler illumination, where the illumination plane is conjugate to the objective pupil plane, the back focal plane. That is a specific and demanding alignment condition, and it is the one the project's flagship microscope uses, which tells you the ambition level: the system is not a toy camera on a slider.
The mechanical idea that makes it usable is a magnetic click-and-go concept, which the README says simplifies the process of aligning and adjusting the parts, giving new tools that act as rapid-prototyping devices.
Electronics inside the optical path, and the REST API
The blocks are not purely mechanical, and that is the second half of the project's appeal. The README says that besides optical components, the UC2 building blocks can also host electronics such as Arduinos or ESP32s to create smart functions like LED array illumination and Z-stages.
So a single cube can hold a lens, a camera, a motorised stage and a microcontroller, and the alignment is mechanical while the control is electronic. That combination is what turns an optical bench into an instrument you can program, and it is why the project is described as interactive.
The communication story is deliberately two-track. The README says communication can be granted through the wired USB Serial BUS or the wireless REST-API, and it points to a dedicated UC2-REST repository to help with setting everything up. Two paths with the same effect is a sensible design for a lab: USB serial when the device is on the bench and you want a direct connection, REST when the instrument is across the room or the data has to go somewhere else.
A separate firmware documentation site is listed in the maintenance notice, at youseetoo.github.io, which suggests the firmware side of the project has its own documentation stream rather than living in this repository.
The intended users are stated plainly: not only beginners, but also professionals dealing with optical setups on a daily basis. That is a specific claim and it implies the design serves two different needs at once, which is hard. A beginner needs a build that works the first time with a laser cut part and a screw, and a professional needs a modular instrument whose blocks can be reconfigured between experiments without a rebuild.
Cubes and baseplates: injection moulded versus 3D printed
The physical design generation is what the v3.0 release tag refers to. With UC2_v3 the project introduced an injection moulded cube, and the README explains the reason: it makes the assembly easier because no screws or magnets are needed for the Base Cube.
That is a manufacturing change with a user-facing consequence. The earlier cubes used a magnetic click-and-go mechanism, and the injection moulded version replaces that for the base cube with a geometry that holds by itself. The 3D printed cube remains an alternative, and the README says it is fully compatible, with the cubes and baseplates arbitrarily combined. So a builder can print what they can print and buy what they cannot, and mix the two.
The baseplate puzzles are the other half of the system. The CAD directory has separate folders for the two cube designs, ASSEMBLY_CUBE_Base, and for the baseplate puzzles, ASSEMBLY_Baseplate, and the README says that all necessary details to modify the design of the blocks are given in the sub-folders of the specific folders. That is a genuinely open design in the hardware sense: the files that define the parts are published so that anyone can change them, and the printed parts are a first-class output rather than a fallback.
Two notes from the README. The MiniBOX insert can now be produced with a laser cutter, which lowers the entry cost for someone without a 3D printer, and the project says it is working on making the IM cubes and puzzles available for sale but cannot offer a buy button yet, with an email address for anyone interested in buying some components.
The topics on the repository, diy, incubator, microscope, printing-3d, python and raspberry-pi, describe the intended build environment: a small single board computer, a printer, and Python doing the control.
Where a build actually starts
The README's navigation is organised around two questions: what are you building, and how much do you already know.
For a newcomer there is the tutorials section, and the README's own description of it is the pitch for the whole project: too many new things, so follow the tutorials, from a beginner to a professional. There is also a reproduce-and-use scheme diagram in the TUTORIALS folder that the README points at as the starting point for reproduction, which is the right way round for a hardware project, since the first question is not what to build but how to reproduce what has already been built.
For someone who knows what they want, the table maps four destinations onto four intents. TheBOX is to choose a version and build your own BOX, and it is where the boxed microscope kits are specified. CAD is to explore the toolbox and its applications, and it holds the design files. APPLICATIONS is for alternatives for many microscopy methods and more. WORKSHOP is to host or join a UC2 workshop, which is the community route into the project.
A SITEMAP.md at the root, with a map image, is the index for a tree that is otherwise hard to navigate, because a hardware repository does not have a conventional directory structure. The top level entries show the shape of it: APPLICATIONS, CAD, DOCUMENTS, ELECTRONICS, IMAGES, MDK, SOFTWARE, TUTORIALS, TheBOX and WORKSHOP, plus REPO_OVERVIEW.md and a License.md.
The VIDEO material is worth noting too. The README points to a YouTube seminar that describes UC2, and separately to a video about how much time the injection moulded cubes can save, both published on the channel of the people behind the project. For a mechanical design, a video of the assembly is arguably more useful documentation than a bill of materials.
One inconsistency to note: the image links in the README still point at the older bionanoimaging organisation for the repository and the software repository, while the project itself now sits under openUC2, which is consistent with a project that has moved homes and kept its history.
Certified open hardware, a DOI, and a custom licence
Two things distinguish this from a hobbyist's shared CAD files.
The first is certification. The README states that the project got the official open hardware certification of OSHWA, with the entry [OSHW] DE00110, and the certification page is linked. That is a formal, audited designation rather than a badge, and for a hardware project it is the equivalent of a recognised licence. It means the design files are published under terms that make the hardware itself open, and the certification number is how a manufacturer or a lab checks that the part they bought is the certified design rather than a derivative.
The second is the DOI. The README asks that this repository be cited with the Zenodo badge for DOI 10.5281/zenodo.4041339. Citing a hardware repository with a DOI means the design gets a versioned, citable identity, which is what a paper or a methods section needs, and it fixes a specific snapshot of the files.
The licence is the third item and it needs care. The licence is a custom one that the hosting platform cannot categorise, and the file in the repository is License.md rather than one of the standard names. For a project that publishes CAD, firmware and documentation together, a single custom licence file can cover things a standard software licence does not, such as how a derived optical design must be attributed, so the License.md file is the text to read rather than an assumption.
The project is also presented with an invitation to contribute, through a CONTRIBUTING.md at the root and a CODE_OF_CONDUCT.md next to it, and the README explicitly asks people to share their work and share ideas through the project's Twitter account. For a community hardware effort, the contribution path and the sharing culture are the mechanism by which the ecosystem grows, and the Wiki and the forum that the maintenance notice points to are where that now happens.
Editorial conclusion
Adopt the UC2 designs if you want to build an optical instrument from open hardware blocks rather than buy a commercial microscope, and you are prepared to do the assembly and alignment work yourself. Do not adopt this repository as your source of truth, because its own README says it is no longer actively maintained and points to a wiki, a forum, a firmware site and a website as the live resources, and it also carries a warning that the site is under revision with many changes ahead. Verify first which of those resources you should actually follow, and treat the CAD and the BOX documentation in this tree as a snapshot of the UC2 v3 design rather than as current instructions, check the licence file, since the platform classifies the licence as a custom one rather than a standard identifier, and confirm with the maintainers that the injection moulded cube and baseplate parts are available, since the README says they are being worked on for sale with no buy button yet.
Frequently asked questions
What is the UC2 project?
UC2 is a general-purpose modular framework for making interactive electro-optical projects, described as an open and modular optical toolbox. Most of its optical systems follow the 4f or Fourier-optical principle, and the building blocks can also host electronics such as Arduinos and ESP32s.
Is the UC2-GIT repository still maintained?
The README says the repository is no longer actively maintained and points to the openUC2 forum, the wiki at openuc2.github.io, the firmware documentation at youseetoo.github.io and the website at openuc2.com for the latest work. A second warning in the README says the site is under revision with many changes ahead.
What is the difference between the injection moulded and 3D printed UC2 cubes?
With UC2_v3 the project introduced an injection moulded cube, which makes assembly easier because no screws or magnets are needed for the Base Cube. A 3D printed cube remains an alternative and is fully compatible, and the cubes and baseplates can be arbitrarily combined.
How do UC2 blocks communicate with a controller?
The README says communication can be granted through the wired USB Serial BUS or the wireless REST-API, and it points to the dedicated UC2-REST repository for help with setting that up. Blocks can host Arduinos or ESP32s for functions such as LED array illumination and Z-stages.
Is UC2 certified open hardware?
Yes. The README states the project received the official open hardware certification of OSHWA under the entry [OSHW] DE00110, and the repository also carries a Zenodo DOI, 10.5281/zenodo.4041339, for citation. The licence is a custom one, with the terms in the License.md file at the repository root.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/openuc2-uc2-git)Was this useful?