Hi all,
Some background
We’re creating devices for customers, and on purchase we’d like to include a 1-year support plan for their devices. This plan is not the Balena plan, but a plan we’ve created for customers (so support from us, included functionality etc). But Balena is a part of this plan in our costs. After this year, customers can choose if they’d like to keep the plan and pay monthly, or stop the plan completely. When the customer keeps their plan, all goes well. But when the customer doesn’t care anymore for the plan, that’s where the challenge is.
When the plan is stopped, we’d like to stop the device from having any updates and Balena functionality. Only some of our custom functionality outside of Balena has to keep working (some requests to our server). In other words, all of cloudBalena functionality has to stop working, but the code on the device has to continue working. This is to reduce/cancel all costs for that specific device, because it isn’t sustainable to keep paying for devices without revenue to cover the costs.
To make it even more difficult, when the user regrets it’s decision of stopping the plan, we’d like to have the option to re-enable cloudBalena for this device.
Example project
Our device is part of a larger product, which monitors the health of this product and handles software updates for the product. But when the customer who bought the product after 1 year decides he doesn’t want any software updates for the product anymore and the cool features that are includes in our plan, he can cancel the plan and stop paying. But we’d still like to know some minor details about the product.
The question
Is it possible to deactivate a device (so stop paying for the device monthly), but keep the device on it’s current software update working properly, and maybe later reactivate the device? Or something similar. Because we’d like to reduce our costs when there is nothing to cover these costs.
openBalena
Another (theoretical) idea is to have an openBalena instance running on our servers and when the plan is cancelled, move the device to the openBalena instance, so we’d have minimal costs for that device. And when the plan is reactivated, move it back to cloudBalena. But I don’t know if this is doable? And where we might encounter any problems?
I’m happy to answer any questions! Because this is one of our main “problems” of using Balena for all our projects, and we’d like to have a solution for this problem because we love Balena!
Thanks in advance!