makers-for-life / makair-telemetry Goto Github PK
View Code? Open in Web Editor NEW๐ฐ [Software] Rust library and CLI tool to parse telemetry protocol payloads from the MakAir firmware.
Home Page: https://makair.life/
License: Other
๐ฐ [Software] Rust library and CLI tool to parse telemetry protocol payloads from the MakAir firmware.
Home Page: https://makair.life/
License: Other
[WIP]
The following settings should be added to the telemetry protocol for the new ventilation modes.
Ventilation mode: u8
Inspiratory trigger flow : u8 [ 0 ; 100 ]%
Expiratory trigger flow : u8 [ 0 ; 100 ]%
Ti min : minimal duration of inhalation : u16 [100; 3000 ] ms
Default : 200 ms
Ti max: max duration of inhalation : u16 [200; 5000] ms
Default : 1500 ms
Low inspiratory minute volume alarm threshold : u8 [0 ; 20 ] L/min
Default : 3L/min
High inspiratory minute volume alarm threshold : u8 [10 ; 40 ] L/min
Default : 20L/min
Low expiratory minute volume alarm threshold : u8 [0 ; 20 ] L/min
Default : 3L/min
High expiratory minute volume alarm threshold : u8 [10 ; 40 ] L/min
Default : 20L/min
Low respiratory rate alarm threshold : u8 [5 ; 25 ] cpm
Default : 10cpm
High respiratory rate volume alarm threshold : u8 [20 ; 35 ] cpm
Default : 30cpm
default TiMax : 1000 ms
default TargetTidalVolume : 400 mL
MAX plateau duration : 2000 ms
The firmware should be able to trigger a modal on the UI asking the patient size
I think the best way to do that would be to use the serial protocol in revert mode :
1- the firmware sends a ControlAck for patient_size to the UI with value 0
2- The UI displays a modal asking for patient size
3- The user sets the patient size and click OK
4- The UI sends the patient size to the firmware
A new type of message should be added to send errors messages from the firmware to the UI
The best way to do that would be to send error codes, that would be translated by the firmware the same way as alarms
A new type of message should be added to send messages from the firmware to the UI during the factory end of line test
The following informations should be in this message :
On the other direction, the UI should be able to send message to the firmware when the user clicks on the "NEXT" button
The following settings should be added to the telemetry protocol
Ventilation mode: u8
Rename Mode 4 : previous name was PC-BIPAP. New name is PC-VSAI
Mode 5 : VC-AC
target tidal Volume : u16 [50 ; 2000] mL
Default : 500mL
Low tidal Volume alarm threshold : u16 [0 ; 1000] mL
Default : 200 mL
High tidal Volume alarm threshold : u16 [50; 2000] mL
Default : 1000 mL
// In volume control mode, you have to close both valve during a small duration to measure effective Plateau pressure. This is called plateau duration
Plateau duration : u16[100 ; 1000] ms
Default : 200 ms
leak alarm threshold : u16[0; 10000] cL/min
Default : 200 cL/min
/!\ this settings should be displayed in mL/min on the UI
inspiratory target flow : u16 [5; 80] L/min
Default : 40 L/min
inspiratory duration : u16 [200; 3000] ms
Default : 800 ms
We need to be able to add an immediate event (like alert) for change of settings, because right now the latency of the change of the settings is really weird
We should publish example records for both v1 and v2 protocols, with the following scenarios:
short
: MCU boot + few stopped messages + few breathing cycles without errorsfew_cycles_with_alarms
: few breathing cycles + some alarmslong
: a longer record (at least 10 minutes)Existing records can be kept as they contain protocol errors which is useful.
Telemetry protocol v2 should be stabilized before doing the v2 records.
peakPressureAlarmThreshold : i16 [50; 700] mmH2O
Default : 500 mmH2O
The following settings should be added to the telemetry protocol
language : [u8,u8]
The language is represented using 2 letters according to iso-639-1:https://en.wikipedia.org/wiki/ISO_639-1
each letter is encoded to its ascii representation in u8
Example :
france iso code is "fr"
f representation is 102
r representation is 114
the following array should be sent : [102,114]
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.