The Gas Notes Simulator is a remote-controlled bedside monitor.
Simulation is a great way to build strengths and find weaknesses in your self, your team, and your system without all the headaches of putting patients in harm’s way.
This software was created so that simulation tools would be freely available to all.
The Gas Notes Simulator is designed to be reasonably self-explanatory to the non-technical user.
You can check out the Gas Notes Simulator online right now!
From the homepage, visitors are presented with two options: start a new sim or join an existing one (with a SimCode). Success in either option brings users to a sim's landing page, which prompts users to connect devices and then choose from "monitor" and "controller" modes on each.
Facilitators have the opportunity to adjust:
- Heart rate
- ECG morphology
- Blood pressure (SBP, DBP and MAP)
- Arterial line morphology
- Respiratory rate
- SpO2
- Plethysmograph morphology
- etCO2
- Capnograph morphology
Pending changes are stored and sent en bloc at the user's request. There are options to gradually transition parameters and enable/disable traces as desired.
The Gas Notes Simulator uses a client-server architecture to avoid all the headaches of P2P connection in potentially-hostile corporate networks. That means that the hosted version requires an internet connection.
The server component is written in Python using the excellent Flask framework. Message passing between clients and the server is done with WebSockets via SocketIO (made easy in Flask with Flask-SocketIO).
For the sake of simplicity, each active SimCode is stored as a text file in ./sim_rooms
. Files with an mtime
more than 60 minutes ago are periodically pruned by sim-cleaner.py
.
The hosted version runs happily on the smallest DigitalOcean Droplet (affiliate link). If you are looking to host your own, check out the sysadmin notes.
The Gas Notes Simulator is released under the MIT License. This software makes use of these open source projects:
- Flask (BSD-3-Clause License)
- Flask-SocketIO (MIT License)
- SocketIO (MIT License)
- pyenv (MIT License)
- pipenv (MIT License)
- Homebrew (BSD-2-Clause License)
- cloudflared (Apache-2.0 License)
- Tailscale (BSD-3-Clause License)
- Twemoji for the pager (📟) favicon (CC-BY 4.0 License)
- Converted to .ico via favicon.io
And these closed-source ones:
- Monodraw for the ASCII art
- Flat UI Colors 2