Gerrit Niezen

Maker of open-source software and hardware.

Since starting our open science hardware company, LabCrafter, last year, I’ve been reflecting on the current state of open-source hardware. We're long past the heyday of the maker revolution, when it felt like a new open-source hardware project was being launched every minute. Even flagship projects like Prusa 3D printers have gone almost completely closed source, and Opentrons lab automation robots are no longer meaningfully open. On the GOSH (Gathering of Open Science Hardware) forums, the usual excitement and frenzied activity have been subdued lately. Many community biolabs in the UK, like the London Biohackspace and Cambridge Biomakespace, have gone dormant.

It was therefore with great relief when I attended the Open Hardware Summit (OHS) in Edinburgh a couple of weeks ago to see that the scene is still very much alive. Two days packed with amazing talks, engaging panels and hands-on workshops restored my faith in open-source hardware again.

Day 1: Talks

One of the first talks was by Alessia Romani, a postdoc in Joshua Pearce's FAST lab at Western University in Canada. Joshua's lab (previously the MOST research group at Michigan Tech) has long been a driver of open hardware in the scientific community, publishing their work on the Appropredia sustainability wiki and in the Hardware X academic journal (of which Joshua is the editor-in-chief). Alessia's talk introduced RepMat, an open-source materials library focused on circular, sustainable practices. I remember coming across the Institute of Making's materials library at UCL years ago, and I wish I'd asked Alessia how RepMat compares. My understanding is that RepMat's focus is specifically on recycled materials for 3D printing. We use recycled PLA for 3D printing the OpenFlexure microscope kits at LabCrafter, so having more folks focused on recyclable materials is very exciting!

One of the most energetic talks was by Andy Quitmeyer from the Mothbox Project. They developed a low-cost, high-performance insect monitor that uses moths as sensors for biodiversity. The Mothbox has already seen use in the jungles of Panama, and are now working with the Open Science Shop network (of which LabCrafter is a member) to get the latest version manufactured and distributed more widely.

Next up after the snack break I was delighted to learn that the Flow Battery Research Collective (FBRC) have been collaborating with Sanli Faez's group at Utrecht University. FBRC exemplifies how to build open science hardware on the internet, from integrating their forum and blog into the Fediverse, to using open-source platforms like Codeberg and GitBuilding to underpin everything. Sanli made a good case for shared ownership of the commons to achieve broad use, and I hope to see more folks moving in that direction. One of his slides had IBC tanks with flow battery stacks on top, which has interesting similarities with the PioFlo project at AMYBO. Just replace the flow battery stack with an electrolyser stack, and the IBC tanks can become bioreactors for growing hydrogen-oxidizing bacteria.

In a talk on building a spinning machine for biofibres by Eldy Lazaro Vasquez, I loved the use of an open-source syringe pump strapped to a frame and connected to a 3D printer hotend to spin fibres:

They used the biofibres to create woven sensors, like moisture sensors and pressure sensors, by combining gelatin biofibres with conductive threads and using different weaving techniques. The biofibres can easily be dissolved in warm water and you can then recover the conductive thread for recycling or reuse.

I also had the chance to share our latest work at LabCrafter, collaborating with the AMYBO community to grow food with electricity. Here's the full talk:

After lunch I really enjoyed Jerry de Vos and Santosh Ilmparuthi's talk on how they are turning useful projects at TU Delft, that weren't spun out into companies by the technology transfer office, into open hardware projects. It reminded me that universities need more open-source program offices (OSPOs), working not just on open-source software but on hardware as well. One of their slides featured a bioreactor, which reminded me of the UNLOCK Project, a connection I still want to explore further. Jerry also maintains the lovely Awesome Dutch Open Hardware list.

Gabriel Kiarie from the Centre for Data Science and Artificial Intelligence (DSAIL) in Kenya gave an insightful talk on developing low-cost open-source hardware for environmental monitoring in the African context, from bioacoustic sensors and camera traps to river water level monitoring and electric fence fault detectors. They even designed a power supply that gracefully shuts down a Raspberry Pi when the battery voltage in a solar-powered project gets too low, called PiWild.

The next talk by Oliver Child from the University of Bristol explored embedding PCBs into 3D prints. This adorable 3D-printed soil moisture sensor uses both conductive and insulating filaments to form the probes:

I was really excited for the talk about turning sensors into scientific instruments, and Eli Silver from Brown University did not disappoint. At Harris Lab they have developed a whole bunch of open science hardware, including a velocimeter based on an optical mouse sensor and a droplet generator. These are the kind of things we'd love to make available through LabCrafter in the future, so please get in touch if you're interested in these! Eli highlighted three essential pillars in transforming a dev board into a true scientific instrument: calibration, characterization, and user experience.

Day 2: Panels and workshops

Although I didn't get to attend the hands-on workshops, there were some really good panels at this year's OHS. I was blown away by the Open Source Environmental panel by Jo Walsh, Shannon Hicks, Débora Swinstun and Sasha Engelmann.

Jo spoke about her experience as a research software/hardware engineer working for the UK Centre for Ecology & Hydrology. I really like her idea of instrumenting the pond they have on site with sensors and how that can be done thoughtfully. She even gave a surprise shoutout to LabCrafter, GOSH, and OpenFlexure at the end of her talk.

Shannon Hicks from the Stroud Water Research Center introduced us to EnviroDIY, a toolkit of open source hardware and resources for environmental monitoring. They've been running a forum for environmental monitoring since 2014.

They have a river quality monitoring project that covers the tributaries of the Delaware River Basin, as governmental monitoring stations only cover the main river. Through real-time monitoring they can discover things impossible to do with manual monitoring. For example, by looking at conductivity readings when it rains (and most people would do manual monitoring when it's not raining) they discovered grit salt runoffs that impacted the river, including a large salt deposit on a parking lot covered with a tarp that blew off.

They developed the Mayfly, an open-source data logger. It has an add-on socket for accessories like 4G/LTE, WiFi/Bluetooth or an OLED display, but its standout feature is support for commercial sensor probes. By making the Mayfly compatible with calibrated sensor probes that are already known to scientists, they don't have to do the sensor characterization and calibration themselves.

A good takeaway lesson was that a citizen science project needs committed volunteers to manage monitoring stations' ongoing maintenance, whether that's cleaning sensors, troubleshooting or quality control.

Débora Swinstun, an anthropologist from the National University of La Plata in Argentina, and Sasha Engelmann, a geographer at Royal Holloway in London, talked about their collaboration in air quality monitoring in Buenos Aires. Citizen science initiatives can be really challenging in countries like Argentina. For example, not being able to co-locate a sensor with a calibrated monitoring station can be a major obstacle.

The other panel I attended was on open source medical devices, with Anne Coburn and Chris Rexroth from COSMIIC Inc., Scott Smith from Openwater, Lukas Winter from Open Source Imaging Initiative and Rohit Gipta, an engineer from India.

COSMIIC is working on a modular implantable medical device released under open-source licenses. While they're not pursuing regulatory clearance for the general population, they do have an Investigational Device Exemption from the FDA to use it in research studies. They mentioned that spinning out COSMIIC from Case Western University as an open-source company was very challenging, and I think yet another reason for universities to have open source program offices (OSPOs) that also specialize in hardware, not just software. COSMIIC used the CERN-OHL-P-2.0 license for their hardware files, MIT license for their software and CC-BY-4.0 for their documentation. It's encouraging to see companies embracing permissive open licensing so comprehensively.

Scott Smith from Openwater talked about their open-source systems to use infrared and ultrasound for diagnosis and treatment, such as their Pulsed Speckle Contrast Optical Spectrometry (P-SCOS) system, Open Motion. Scott mentioned that 80% of the cost of a developing a new treatment is in clinic trials. The numbers are mind-boggling: more than $1B for drugs, and $50M-$100M for devices.

They use a CC-BY-SA-4.0 license for their hardware, an AGPL license for their software and a patent pledge to allow use of their 68 current and future patents.

Next up was Lukas Winter, who talked about their open-source MRI scanner. They've managed to build a portable system that can take MRI images of someone's head or extremities. With material costs around €30k, it’s far from hobbyist-level, but still orders of magnitude cheaper than commercial MRI systems.

There were lots of other talks and panels that didn't feature open science hardware, so have a look at this playlist on YouTube where all the OHS 2025 talks were made available.

With community biolabs like ASCUS in Edinburgh, LifeFabs in London, Genspace in the US and BioClub Tokyo in Japan still very active, I'm excited for the future of open science. OHS 2025 was a powerful reminder: you can’t just toss a new open-source project onto GitHub or Hackster and expect impact, you have to nurture a community around it.

Comment on this post

I've always wondered how Cory Doctorow is such a prolific writer. Yesterday I discovered his blog post The Memex Method where he describes how he uses his blog as a memex, or a “second brain” as the productivity and knowledge management community calls it.

Every day, I load my giant folder of tabs; zip through my giant collection of RSS feeds; and answer my social telephones — primarily emails and Twitter mentions — and I open each promising fragment in its own tab to read and think about. If the fragment seems significant, I’ll blog it: I’ll set out the context for why I think this seems important, and then describe what it adds to the picture.

I've been using Readwise for a long time to keep track of what I read. Whenever I highlight something in a book, a saved article or a blog post it gets saved to Readwise, and I get a summary email with random saved highlights every day to review. More recently, Readwise Reader makes it even easier by providing a single place to read RSS feeds, saved articles and e-books.

I have stored highlights from 48 books and 320 articles since I started using Readwise. Unfortunately, while it's good to review these highlights, I've never really done anything with them. Cory uses his blog fragments to synthesise books, essays, stories and speeches:

Blogging isn’t just a way to organize your research — it’s a way to do research for a book or essay or story or speech you don’t even know you want to write yet. It’s a way to discover what your future books and essays and stories and speeches will be about.

I've always wanted to use my blog as a second brain. I just had a look for when I saved my first article to Readwise. It was on 21 January 2020, so almost four years ago. Funnily enough, it was an article about how to make a memex! Here is the highlight I saved from that article:

If you do all your thinking in public, in venues where you always have to start from a presumption of zero familiarity with your other thought, you can't create complex thoughts at all.

This is the opposite of what Cory does, and I think where I've been going wrong these past four years. Here's what he says:

The genius of the blog was not in the note-taking, it was in the publishing. The act of making your log-file public requires a rigor that keeping personal notes does not. Writing for a notional audience — particularly an audience of strangers — demands a comprehensive account that I rarely muster when I’m taking notes for myself.

Very true. I've gathered lots of little personal notes over the years, but there's no rigour to them. I can't really use them to do anything. They're not complex thoughts! So here is a new year's resolution for 2025: Instead of squirrelling away personal notes in a private vault, share them on a blog with the world!

Comment on this post

I'm on a train to London to give a talk on open-source scientific equipment at OpenUK London Meetup #19: Open Hardware this evening. Here are the slides for my talk:

Comment on this post

I recently came across a delightful zine called a Short Guide to Soil Microscopy that explains how to look at soil under an OpenFlexure microscope.

I remember being inspired to look at soil after reading the first chapter of George Monbiot's book Regenesis, which describes in exquisite detail what you can find in the top six inches of earth.

Read more...

Open science hardware is amazing. You download some instructions off the internet, buy a bunch of components and build an actual scientific instrument. Now you not only know exactly how it works because you put it together yourself, but also how to modify it if necessary.

You wouldn't download a car meme

I love open science hardware. Over the past decade I've designed an open-source syringe pump, a hydroponics controller and an outdoor air quality monitor. I even wrote an academic article on open-source hardware for medical devices. I've also built open-source designs made by other folks, like this colorimeter designed by IO Rodeo:

Read more...

I recently built my own colorimeter using the Open Colorimeter design by IO Rodeo. A colorimeter is a scientific instrument used to measure the intensity of a colour in a solution. The Open Colorimeter consists of an Adafruit TSL2591 Light Sensor and an Adafruit PyBadge inside a 3D printed enclosure. The light sensor is attached to a 3D printed cuvette holder, with a white LED light board attached to the other side. The sample is placed between the sensor and the light source, which allows the absorbance or transmittance of different wavelengths of light to be measured.

DIY colorimeter

Colorimeters can be used to measure concentrations of pollutants in water for environment monitoring, or to ensure colour consistency of food, textiles or paint. They can also be used for soil measurements or biochemical assays.

IO Rodeo has a lovely tutorial on how to use a colorimeter to measure beer color. I don't have the 430nm LED mentioned in the tutorial, so I thought I'd try with a white LED board instead. Here is the distribution of wavelengths for the white LED according the datasheet:

Relative spectral distribution for white LED

There does seem to be enough luminous intensity around the 430nm mark that this should work. I bought some beers from our local Lidl, going with the supermarket brand for each style to make it easier for others to replicate the experiment. I measured the following absorbance values for four different beers:

Beer name Beer style Absorbance value
Birra Bionda Lager 0.09
Hatherwood IPA American IPA 0.24
Hatherwood Shark Bay Amber ale 0.33
Hatherwood Porter Porter 1.25

To calculate SRM (Standard Reference Method) beer colour for 430nm you would multiply the absorbance value by 12.7. Since we're using a different LED, I compared the values for the lager and IPA to that of the IO Rodeo experiment:

SRM vs absorbance for different light sources

We already know that he slope of the line for 430nm is 12.7, and assuming the SRM for the lagers and IPAs are similar, we can calculate the slope of the line for the white LED source as 61.08. Using that as our multiplication factor, we can then calculate the SRM values:

Beer name Beer style SRM value
Birra Bionda Lager 5.5
Hatherwood IPA American IPA 14.7
Hatherwood Shark Bay Amber ale 20.2
Hatherwood Porter Porter 76.35

Our amber ale appears to have a similar SRM to IO Rodeo's Irish red ale (17.4), and the porter as a similar SRM to a Guinness stout (70.6), so it does appear to work pretty well. To be sure, we could use a spectrophotometer, but unfortunately I don't have one of those lying around. I'd like to eventually redo the experiment with a 430nm LED board to see if the results are the same.

Thoughts? Discuss... if you have a write.as account. Otherwise, e-mail me or get in touch on Mastodon!

Four beer color measurements

Four cuvettes containing different beers

Comment on this post

I'm starting to learn the Zig programming language, and wanted to see how easy it is to load it in the browser with WebAssembly. I noticed that the official documentation only includes a Node.js example, so I thought I'd write up an example for the browser here.

Read more...

Fermenter vessel

It's been eight years since I last experimented with building my own bioreactor as part of the first BioHack Academy, organised by Waag Futurelab in Amsterdam. Reading George Monbiot's recent article in The Guardian about precision fermentation has me all excited about bioreactors and fermenters again, so much so that it's all I've been reading about this past week.

Up until recently, precision fermentation was mainly used to manufacture insulin and the rennet substitute, chymosin, used to make cheese. But precision fermentation can also be used to have microorganisms (yeast and bacteria) generate edible protein, instead of the usual macroorganisms (cows, sheep, pigs and chickens). Now there are companies using precision fermentation to make the casein protein found in milk and then creating ice cream and other diary products, like cream cheese. Impossible Foods use precision fermentation to make the heme protein found in meat and then creating burgers. Solar Foods literally creates protein out of thin air, using carbon dioxide and hydrogen as inputs to create an edible protein powder.

One of the four pillars of the Reboot Food manifesto, written by the RePlanet NGO and supported by Monbiot, requires precision fermentation technology to be open source:

The benefits of the food revolution should be shared with all, with new technologies made open source and corporate concentration actively mitigated.

However, as Sue Branford points out in the Guardian, almost all existing precision fermentation technology is patented by VC-funded startups or large corporations:

Even though Monbiot says that he would like poor countries all over the world to install fermentation tanks under local control, this seems unlikely. The technology, developed under corporate control, has been patented. Corporations driven by profits are unlikely to democratise control, and the technology is likely to be used by them to extend their reach over the natural world.

So far I could only find one company, SuperMeat, that is talking about the importance of open source in precision fermentation. And then only to develop a screening system for the ingredients used in precision fermentation.

Not finding any open-source precision fermentation projects online, I started looking for open-source bioreactors instead. Unfortunately most of these types of projects only built a prototype and have since been abandoned. I decided to do a search on GitHub for bioreactors and, sorting by most recently updated, came across Pioreactor.

Pioreactor is the open-source bioreactor project I've been wanting to exist for the past eight years. I don't know why I haven't heard of this project before, but I'm so glad that it exists and that they're due to start shipping their first kits soon. It looks like they've managed to develop a solid piece of hardware with working software, and I can't wait for it to become available so that I can start playing with it.

How do we go from the current corporate-captured present to an open-source future? Open-source bioreactor projects like Pioreactor may be part of the solution. While you're not going to grow any substantial amount of food in a Pioreactor, it provides an accessible and affordable platform for experimentation and getting started with precision fermentation.

Or as Adam Greenfield so eloquently puts it over on Mastodon:

Comment on this post

In March 2020 I gave a talk to a local community group, Uplands Living Streets, about the DIY air quality monitor I built. I mentioned that I would love to design and build a solar-powered air quality monitor that's easy to install and modify. Quite a few folks seemed interested in the idea, so I decided to pursue building my own air quality monitor, including designing the circuit board myself.

I wanted to design something that was:

  • battery-powered and charging with a solar panel,
  • used long-range wireless communication, and
  • easily extended with other sensors.

It took me more than two years and three revisions of the hardware to get something that works, but it's finally ready. The enclosure design was the most challenging, given that it had to be weatherproof. The most recent version even encloses the antenna to remove another opening where water could possibly get in.

First monitor installed

Seeed's Fusion PCB assembly service manufactured both the second and third revisions of the hardware. My design won the Best Wio-E5 Fusion Case Study and I could use the Fusion PCB Assembly coupon prize towards building the third revision of the hardware. If you're designing something that makes use of the Wio-E5 LoRaWAN module, Seeed will help you out with free PCBA prototypes.

I placed the order for the Seeed Fusion PCBs on 24 May and only two days later the order was confirmed and they started procuring the components. On 2 June Seeed notified me that some resistors were out of stock and we agreed to replace them with another alternative. Less than two weeks later on 13 June the order was shipped. It only took three days to reach me here in the UK on 16 June! Going just over three weeks from placing an order to having an assembled PCB in your hand is not bad.

The Wio-E5 (previously called the LoRa-E5) is used to communicate with LoRaWAN networks like The Things Network and Helium. It's based on the STML32WL chipset, which includes both a microcontroller and a LoRa radio on the same chip! You can run your own software on the microcontroller, but it comes preinstalled with the LoRaWAN stack so you can use it as a LoRaWAN module. That means you connect to it from another microcontroller over a UART interface, and just send AT commands (e.g. AT+JOIN to join a network) to connect to a LoRaWAN network. I'm using the nRF52832 chip from Nordic as the main microcontroller, as it can easily be programmed with Espruino over Bluetooth!

The third revision changes the main processor module from the MDBT42Q module that's hard to get hold of at the moment, to an E73-2G4M04S1B that Seeed Fusion was able to source. Both modules use the Nordic nRF52832 chip internally. I also changed the 3.3V regulator to one that's in stock. The global electronic component shortage is still very much with us in 2022.

Other changes include changing to a 5V regulator with true shutdown, so that the particulate matter sensor can be turned off completely to reduce power consumption. I released a breakout board with the 5V regulator as a separate product on Tindie for sale!

Revision 3 of the PCB

I've started using a recycled PETG filament for the enclosure, and this is what the unit looks like half-assembled:

Half-assembled OpenAirMonitor

At first I attempted to use The Things Network for connectivity, but as there were no existing gateways in the area, I installed two of my own. Unfortunately this still didn't provide the coverage I needed, so I decided to look into using Helium. Thanks to them using crypto as incentive for people to install gateways, there is enough coverage in all the places where I intend to install the air quality monitors.

Second monitor with antenna cover

It was also relatively easy to hook up Helium to MyDevices Cayenne, a dashboard for visualising sensor data.

Here's a snapshot of one month of data from the first air quality monitor I installed on the roof of a restaurant in the neighbourhood:

One month of data

Here's another snapshot of a week worth's of data from another air quality monitor installed at a residential dwelling:

One week of data

There seems to be daily peaks around 9am and then again around 8-10pm. WHO air quality guidelines state that PM10 should be below 45 µg/m³ on average in a 24-hour period, so the good news is that does indeed seem to be the case.

Technical details are available on Hackaday and source files are available on GitHub. I hope to have circuit boards for building your own available on my Tindie and Lectronz stores soon, and will be posting documentation on how to build the monitor on Hackster as soon as it's ready!

#AirQuality

Discuss...

Comment on this post

I just received a WCH CH32V307 RISC-V development board as part of the Hack It! RISC-V Design Challenge. What follows is a simple tutorial in getting started with running an RT-Thread example on the CH32V307 development board.

Installing and setting up the IDE

Setting up the debugger

  • Go to Run –> Debug Configurations..
  • Select GDB OpenOCD WCH Debugging / rt-thread.elf
  • Click on the Debugger tab
  • Enter the following under Config options: -f wch-riscv.cfg
  • Click Apply and then Debug

Setting up debug options in MounRiver Studio

Running the example

  • Plug your development board into USB port P9
  • Make sure the project is selected in the left-hand pane
  • Click the arrow to the right of the Run button, and select Run As –> OpenOCD WCH Debug:

Screenshot of Run As

If all goes well, it should build and and start running the example. If not, you may need to click Project-> Rebuild. Now, open up rt-thread/user/main.c in the project, and you'll see that it is supposed to flash an LED and print to the terminal. Now you may wonder: “Why am I not seeing LED1 flashing on the board?” I wondered this too, and found this in the CH32V307 evaluation board manual:

  1. LED: Controlled by connecting the extension connector J3 to the IO port of the master MCU

What this actually means is that you need a jumper cable to connect pin LED1, which is on the extension connector J3, to pin PA0, which is on both the extension connector and the Arduino interface. If you wire this up correctly, you'll hopefully see the LED blinking:

Blinking LED on CH32V307 dev board

If you also want to see the RT-Thread terminal, just connect to the board using your favourite serial terminal at 115200 bps, e.g. using minicom:

minicom -b 115200 -D /dev/ttyACM0

RT-Thread terminal in minicom

You don't need a separate USB-serial adapter, as the serial interface is provided by the WC-Link onboard the development board.

Any feedback and comments are appreciated!

#riscv #wch #electronics #ch32v307 #rtthread

Discuss...

Comment on this post

Enter your email to subscribe to updates.