it’s getting bot in here
25.8.14
Highlights
-
Custom Bioreactor Models
Our community has been incredibly creative in adapting Pioreactor hardware and software for different vessel types. Now, you can officially add your own custom bioreactor models to the Pioreactor software!
Place your model definitions as yaml files in the new.pioreactor/models/
directory. For example:model_name: custom_100ml model_version: "1.0" display_name: "Custom 100 mL, v1.0" reactor_capacity_ml: 100.0 reactor_max_fill_volume_ml: 95.0 reactor_diameter_mm: 50.0 max_temp_to_reduce_heating: 80.0 max_temp_to_disable_heating: 85.0 max_temp_to_shutdown: 90.0
Example file name:
custom_100ml.yaml
This information is used throughout the software (including the UI) to support different shapes, sizes, and safety limits. Tell us what else you’d like supported!
-
New MCP Server (Experimental)
You can now run an MCP server alongside your leader’s web server. It adds a new SSE-based endpoint at:http://<leader-address>/mcp/
This exposes some Pioreactor tools in real time. It’s still experimental — your feedback and suggestions for additional tools/resources are welcome!
Enhancements
-
Added Time Range filter to the Export Data UI page.
-
The “Add a new Pioreactor worker” dialog now automatically scans for and lists local workers available to join your cluster.
-
New
config.ini
option:[od_reading.config] duration_between_led_off_and_od_reading = <seconds>
This adjusts the pause between turning off LEDs and taking an OD snapshot.
-
pios X --experiments <experiment>
now lets you target workers by experiment from the leader CLI. -
More CLI options are available for jobs with
settable: True
published_setting
s. -
New API endpoints:
/unit_api/capabilities
/api/units/<pioreactor_name>/capabilities
These provide detailed information about what each Pioreactor can run.
Breaking changes
-
API changes:
-
api/units/<unit>/configuration
response format updated. -
Settings endpoint now scoped to experiments:
/api/workers/unit1/jobs/settings/job_name/stirring/experiments/<exp>
-
Removed:
/api/workers/jobs/stop/experiments/<exp>
Use:/api/workers/$broadcast/jobs/stop/experiments/<exp>
-
Removed:
/api/experiments/<experiment>/jobs/settings/job_name/<job_name>
Use:/workers/$broadcast/jobs/settings/job_name/<job_name>/experiments/<experiment>
-
-
pio logs
no longer follows by default — use-f
to follow. -
Developers: We’ve merged our three main repositories (
pioreactor
,pioreactorui
,pioreactorui_frontend
) into a single monorepo:pioreactor
. The old repos will be archived, and update code inpio.py
will now point to the new repo. If you have branches on the old repos, rebase ontopioreactor
. Discussion: GitHub issue #576.
Bug fixes
- Fixed default sorting when exporting CSV.
- Fixed crash in UI profile editor.
- Fixed pumps not shutting down correctly if active when
dosing_automation
stopped. - Fixed cleanup issue in growth rate calculation.
- Fixed plugins page crashing when a plugin doesn’t have a homepage associated to it.