I am building a product based on the Photon. I like Particle and the platform they’ve built. I’ve enjoyed every interaction I’ve had with them so far. However, I also see the perils of being tied to the platform as discussed here. The only option for smaller outfits will be to simply shut down if the pricing does not work out. While building a version 1.0 on the Particle platform, I would like to mitigate this risk for a future version of the product. One option is to build an alternate endpoint for the Photon to communicate with, so that hosting costs are more predictable - i.e., you control costs yourself instead of Particle. To this end, I have the following questions:
Once a product is out in the field, is it possible to flash the device with firmware that there on out communicates with your own servers without the Particle platform in between? Assuming the new server handles the calls appropriately, it should all work, right? I understand this would be a considerable amount of server side work that needs to be done.
Are the calls made between the Photon and Particle documented somewhere (events, variables, OTA, etc.)?
Particle has started a standalone server which was greatly reworked by @Brewskey.
But the question about ability to OTA flash a product after the Particle Console would be gone (hope that'll never happen) I'd have to defer to @rickkas7.
Thank you! The local cloud seems like a great place to start. Assuming the “local” cloud is deployed out on a server reachable to the device, can you push out OTA updates from the local cloud to the device?
Hey @ruku, we should handle most things you’d need from the cloud. The only thing that’s flaky at the moment is using the local cloud to compile. Particle has added a few APIs that we don’t support. A workaround is to compile on the Particle cloud and then flash on the local cloud.