Pioreactor Dev log #14

Pioreactor Dev log #14
Happy holidays! This week we look at our latest iteration of the Pioreactor HAT. New features include cleaner interfacing with the heater PCB, an EEPROM, StemmaQT connection, and more.

We've been working on the version 2 of our HAT for over 6 months now, putting together all the improvements, learnings, and ideas since testing our version 1 board. In this post, we'll go through some of the changes that we are most excited about. 

Figure 1. Version 2 of our Pioreactor HAT, showing connections to peripheral hardware.

Official HAT status

The Raspberry Pi Foundation actually has very precise definitions of what a HAT, or "Hardware Attached on Top", is. Relevant for us is the following:

  • Must attach to the 40-pin GPIO header, and expose a 40-pin GPIO header.
  • Must be a specific footprint, and have correction location for mounting holes.
  • Must have an EEPROM chip, with specific information stored on it.

The full list of recommendations for a HAT is here. Our new Pioreactor PCB version now includes an EEPOM, and was already the correct size, so we now officially have a Raspberry Pi HAT (this is relevant for marketing purposes, and for compatibility purposes). 

We store the HAT version on the EEPROM, and can read of it at runtime in Python, so now the Pioreactor software can dynamically detect what HAT is available and adjust accordingly. 

StemmaQT/Qwiic connection 

The StemmaQT (from Adafruit), and the Qwiic (from Sparkfun) connector protocol is a great way to interact with the rich hardware and sensor ecosystem that these two companies offer. We've included a StemmaQT/Qwiic connector on our new HAT to allow users to add their own sensors. For example, if users wish to record ambient temperature, it's easy to connect the Adafruit Si7021 breakout board directly to the Pioreactor. 

This new connector also is how we will connect future Pioreactor devices and sensors to improve our bioreactors.

Less wires 

We condensed the 7 wires going from the onboard heating PCB to the HAT into a single flexible flat cable. We were also able to remove a PWM output connection that was previously dedicated for the heating. 

Four photodiodes to two

We originally had four photodiodes on the Pioreactor. The idea was that more photodiode signals would a) reduce the amount of noise, and b) be able to simultaneously measure multiple wavelengths (ex: fluorescence). However, we found that we rarely used more than two photodiodes. More photodiodes is certainly better for signal accuracy, but it costs more, and has a more confusing user experience. By focusing on the simpler use case (1 photodiode for culture, 1 photodiode for IR LED reference), we can optimize our software and hardware to get back signal accuracy anyways. 

 

Pioreactor dev blog #11 - creating custom Raspberry Pi images

Pioreactor dev blog #11 - creating custom Raspberry Pi images
We care a lot about onboarding. I've seen enough Raspberry Pi projects that seem to require deep experience in software compilers and package management (don't worry if you don't know what those are...) before you can get started. This is an immediate barrier to your project! From a "funnel" perspective, you may end up losing up a large fraction of your users just at this stage. Can we do better?

How we built a bioreactor on top of the Raspberry Pi

How we built a bioreactor on top of the Raspberry Pi
The Raspberry Pi is a low-cost, single-board computer that has exploded in both at-home use and in industry. What makes the Raspberry Pi so useful is that it can run Linux, connect to the internet, and has lots of input/outputs - making it very useful for being the "brain" of your system. Makers have put the Raspberry Pi at the center of robots, LED displays, home-automation systems, and more. And in industry, they are being adopted to run subsystems of factories, research tools, and be deployed IoT devices...