The PRODUCT_FIRMWARE_VERSION directive value is sent to the cloud as “firmware_version” variable, but right now it seems like it is set to a constant “65535”. Am I correct in guessing that in reality it should be related to the system version (derived somehow from “0.4.5” for example)? I would like to find out the system version of a device through the local cloud and this seems to be the only thing that should perhaps point to it, but it is incomplete or purposely set up like this?

The PRODUCT_FIRMWARE_VERSION was the previous way product creators could version their applications. The product version is used in conjuction with the dashboard and firmware management. It’s the version of your application.

In 0.4.5 on the Core/Photon PRODUCT_FIRMARE_VERSION is deprecated - you can set this using this macro in global scope:


Since it’s your application version, it’s not related to the system firmware version.