Platform for Automated Capture and Storage of Breath Sensor Data
The chemical makeup of a person’s breath has been shown to be determinative of many different aspects of an individual’s health. Modern research into volatile organic compounds (VOCs) present in breath has shown great possibility in the areas of diagnosis and testing for many diseases, including diabetes and asthma. The most commonly used methods for capturing information on these VOCs involve testing with large laboratory equipment and storing physical samples for extended periods of time. These methods are prohibitively expensive and can deter research into the area of breath-chemical testing. Alternative forms of research have recently become more available, aided by the ability to quickly manage large amounts of data to recognize patterns in chemical samples. Our platform consists of a handheld data-capture tool and a database server. The data-capture tool is designed to utilize Figaro Ⓡ metal-oxide semiconductor (MOS) chemo-resistive sensors, in conjunction with digital potentiometers and a control algorithm, to gather useful data points in large quantities at rates of at least one message per second. An STM32L476RGT microcontroller is used to gather and package the data into message queuing telemetry transport (MQTT) messages, which are then transmitted using a SIM800L GSM cellular module. This first device will then send its captured data to a Raspberry Pi for data storage in a PostgreSQL database utilizing a python script to listen for incoming MQTT messages and parse them into comma separated value (CSV) format. The Figaro Ⓡ sensors respond to the presence of certain chemicals with a change in their resistance, allowing for the capture of data on a microcontroller. Digital potentiometers are partnered with each MOS sensor to keep the data points within a set range to prevent clipping of a measured analog signal. The data is then sent and stored on the database for later access. Our system provides the capability to rapidly create and store large datasets using various FigaroⓇ gas sensors in a consistent manner.