I know the publication Biosignal PI, an Affordable Open-Source ECG and Respiration Measurement System which uses Raspberry Pi A+ / B+ as a component isolated by ADums, since RP is not itself a medical device. The final system has been accepted to be used in some medical testing in Sweden where regulations are very strict. The specific health-related status of the system is TODO. I would like extend the project by doing FFT computation in the Raspberry's own GPU, BCM2835, as described in the blog post Accelerating Fourier Transforms Using the GPU in studying autonomic dysfunctions. However, I am unsure if the model Pi 1 A+ is enough. Raspberry homepage is about
We recommend the Raspberry Pi 2 Model B for use in schools: it offers more flexibility for learners than the leaner (Pi 1) Model A+, which is more useful for embedded projects and projects which require very low power.
There are strict isolation policies in ECG systems, which is why I am thinking the Raspberry 2 B model may not be suitable. I am especially interested in the power management of the different models in the GPU computation.
Basic Safety Characteristics
- Power-off power is 20-30 mA (0.1W) (here) but 1.0W (here) when USB mouse and keyboard connected, until you physically disconnect the power.
- Maximal power-off power in all devices? 10x difference between no-devices and devices is rather high.
- Lowest idle power in A+, B+ and Zero.
- GPU-Power stability in all models? Tests by shooting video and rendering video (here) where the video recording is done by computing FFT in the GPU.
- GPU-power usage is different between RBi B+ and other models because of the different power circuitry (here).
- At least two level isolation. 1st level ADAS1000, creepage air clearance and SP720. 2nd level [conjuncture] negative feedback to the change in the viscoelastic characteristic.
- ADAS1000 power dissipation is 41 mW (here) which fluctuates as a function of CPU usage (0,1.0). How does it fluctuate over N clocks? Unknown. Power measurement error is normal distributed.
No RP is a medical device. RP must be isolated from the ECG front-end (etc power and SPI commiserations) which is done by ADums in Biosignal Pi design (Farhad).
Isolation Strategies of ECG front-end from RP
- Assume Pi B+ could behave like any other component. (used in the publication)
- Switching to Pi 2 B should not alter the situation but the maximum power of the circuit unknown and dependent probably on ADAS1000.
- When proving the Pi is sufficiently isolated by the ADAS1000, the assumption that Pi behave like any other component must hold.
- If the RPi suddenly decides to act as a 0 Ohm resistor between the power supply and the patient, ADAS1000BSTZ should ensure the isolation. (1-3) but the upper limit of the power is TODO in the circuit.
- If RPi catches fire, isolation of the system, Creepage air clearance and SP720.
- 0.5W extra power draw is safe so RPi zero and A+ accepted. How sufficient is 0.75W power? Limitations of RPi B+ in the power sense?
- ADuM4400 safely withstands 5000 Volt for 60 seconds. The power supply isn't shown, but it is reasonable to work on the assumption that it's a cheap 220V transformer. No risk when 380 V peak (<< 5000) which is well within safety margins. (Joan)
- Keep RPi in noninflammable enclosure to prevent burns. TODO I sent email about Raspberry Pi Case to the producers. (Joan)
- [conjuncture for Double verification of the isolation]. Viscoelastic material characteristic can be used to estimate continuously without altering the system in the runtime if the system's resistance changes by some FFT of the system. If zero resistance, the schema probably changes from the Kelvin-Voigt model to the Maxwell model. (here) This mechanism can be connected to the system as a negative feedback such that it automatically switches off the power if the event occurs. I think the first level mechanism of ADAS1000 can be problematic with high powers because the components can break in such cases.
Schema in the publication
where the change is an addition of a GUI for real-time visualization by FFT and multi-threading. This addition ensures the isolation of the ECG front-end from the RP because of ADums in the Biosignal Pi design.
Raspberry Pi models' power usage in a day
The thread How much energy does the raspberry pi consume in a day? is about the power usage in a day
B with keyboard = 1.89 W -> daily 45 Wh
B+ with keyboard = 1.21 W -> daily 29 Wh
B+ with LAN/USB chip off (no i/o except GPIO) = 0.76 W -> daily 18.2 Wh
B+ shut down = 0.26 W -> daily 6.2 Wh
A idle = 0.7 W -> daily 17 Wh
A+ idle = 0.52 W -> daily 12.5 Wh
Pi2 B at idle = 1.15 W -> daily 28 Wh
Pi Zero at idle = 0.51 W -> daily 12.2 Wh
where A+, B+ and Zero offer much benefits in the power circuitry. The values are all about 10% greater than in the post Power consumption. Recall B+ is the chosen device in the application, but the publication is older than Pi 2 B. I asked already the author of the publication how he would improve the settings of the electronics if Pi 2 B in use.
The publication is based on Pi B+. The thread How Much Less Power does the Raspberry Pi B+ use than the old model B? is about
[T]he new Raspberry Pi B+ uses 1.21 Watts with just a keyboard dongle vs 1.89 Watts for the old model B. [I]t’s 36% less power usage. This great if you’re running on batteries, or have a barely adequate solar panel.
The table has similar experimental results. More about the stability of the power management is wanted.
Power consumption in a day in all models under GPU load by acc. FFT
The GPU-power usage is different between B+ and other models because of the different power circuitry (here). The accelerated FFT puts the chip under heavy load so the behavior is dependent on the power circuitry.
Selection = Raspberry Pi 2 B + SnickerDoodle + piSmasher SBC
The power circuit of RPi 2 B is not too different from RP 1 B+. Still, both are not medical devices so the ECG front-end has to be isolated from the RP (etc power and SPI commiserations) which is done by ADums in Biosignal Pi design. (Farhad)
I profiled my system and noticed that I need FPGA much in my prototyping phase and many GPIOs. I started to support the SnickerDoodle project here and piSmasher RBC such that I can integrate the existing RB blueprint into the SnickerDoodle. The SnickerDoodle is just going to work as a computational device, supporting RP2B, completely isolated from the ECG front-end. I will let you know when I understand the limitations of the project better after getting the chips for the development.
How are the Raspberry models different in the GPU computation in the power usage?