This page hosts the documentation of the SmartCGMS software architecture and all of its components.

Frequently asked questions

This section summarizes frequently asked questions. If you have a question, that is not contained within this FAQ, feel free to contact us via e-mail.

Can I use SmartCGMS in our commercial product?

Answer: Yes, it is possible to use SmartCGMS commercially, but you are required to contact us to agree on the exact conditions.

I am a hobbyist/student/researcher. Can I use SmartCGMS for my project?

Answer: Yes, you can use SmartCGMS free of charge. Please, keep in mind, that when you publish any derivative work, you are required to cite the following paper:
Tomas Koutny and Martin Ubl, "SmartCGMS as a Testbed for a Blood-Glucose Level Prediction and/or Control Challenge with (an FDA-Accepted) Diabetic Patient Simulation", Procedia Computer Science, Volume 177, pp. 354-362, 2020

Is it possible to obtain full source code?

Answer: Unfortunately, the only source code available is the SDK distribution on this website, which contains the complete development kit needed to develop for SmartCGMS. The rest of the software is distributed in its binary form and no source code is available.

Is it possible to use any other programming language, than C++?

Answer: Yes, but the language must support native shared library loading and execution. We previously used C# (within the .NET MAUI, Xamarin and Unity environments) to execute SmartCGMS using the simple interface, and we also experimented with Python as a loader of the main scgms library.

If you intend to implement any of the entities (such as filter) on different programming language, the resulting entity must conform to the object interface declared in Object interface documentation.

Can I run SmartCGMS on an embedded device?

Answer: Yes, it is possible to run SmartCGMS on an embedded device. We previously experimented with running the SmartCGMS on a battery-powered Raspberry Pi. Further work is focused on no-OS/FreeRTOS environment.

Can I use SmartCGMS to perform the actual treatment or measurements on a real patient?

Answer: No, it is strictly prohibited to do so without obtaining all required approvals from the respective regulatory bodies.