Sensing Your Sugar

When you use Sensing Sugar with your own blood sugar data file, none of your data is shared. Sensing Sugar uses your data to produce music and images locally on your computer. Your data is never uploaded to the internet. Your data remains private.

Experience someone else’s sugar

How to structure your file

You can submit data as a CSV file or JSON file from a blood glucose monitor (BGM), a continuous glucose monitor (CGM), or manually recorded results. The values of the blood sugar can be in either mmol/L or mg/dl.

Some files from blood sugar monitoring devices and platforms will work automatically with Sensing Sugar. Others might require some minor modifications.

In general, a CSV file should have at least one column named glucose, and must have the file extension '.csv'. I’ve created a Guide that provides much more information on using CSV files from diabetic management platforms.

A JSON file should be an array of objects containing the property glucose, and must have the file extension '.json'.

How it works

Glucose values alone determine pitches, timbres, rhythms, tempo, timing, colours, textures, and patterns. All other data is discarded.

Generally, datasets with more changes in the glucose values produce more dynamic results.

Smaller datasets (from 5 - 300 glucose values) tend to produce more interesting results than larger datasets. Each blood sugar reading in a dataset plays for a number of seconds equal to its value in mmol/L (ex. 120 mg/dl = 6.7mmol/L = 6.7 seconds). That means that 288 readings (one day of CGM readings taken every 5 minutes) with an average or 8.0mmol/L takes about 35-40min to play from start to finish. Given that far fewer readings are taken with a BGM than a CGM, a day of readings from a BGM will take much less time to play back than a day of readings from a CGM.

For practical reasons, datasets of more than 1000 readings will currently only play the first 1000 readings. 1000 readings will take anywhere from 1h to 5.5h to play in full depending on the values contained.

You can stop playback at anytime by refreshing the page or navigating to another page. Playback cannot be paused.