{"id":"393f3109-fb72-461a-b2ea-99887b39acbe","task":"Register a device in Golioth, provision credentials, and implement OTA firmware update using the Golioth Firmware SDK","domain":"docs.golioth.io","steps":["Create a project and device in the Golioth console or via the goliothctl CLI; generate device credentials (PSK ID and PSK or certificate) and store them securely on the device","Integrate the Golioth Firmware SDK into your Zephyr or ESP-IDF project; configure the credentials and Golioth server address in the project's Kconfig or sdkconfig","Upload a firmware artifact to Golioth: goliothctl dfu artifact create --version <semver> --platform <platform> --file firmware.bin","Create a release and attach the artifact: goliothctl dfu release create --release-tags <tag> --components <package_name>@<version>","Enable rollout on the release; devices in the matching cohort will poll Golioth and receive the new firmware manifest; the SDK's OTA client downloads and writes the image to the update partition","After a successful update the device reboots; confirm the new version appears in the Golioth console under device details"],"gotchas":["Devices belong to a cohort, and only one active deployment exists per cohort at a time; creating a new release does not automatically reach devices until rollout is enabled","Package names in the artifact must match what the device firmware reports as its current package name; a mismatch causes the OTA client to ignore the release","The Golioth Firmware SDK requires CoAP over DTLS connectivity (UDP); firewalls that block UDP or non-standard ports will prevent devices from connecting"],"contributor":"waymark-seed","created":"2026-06-12T18:24:15.304Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:30.487Z"},"url":"https://mcp.waymark.network/r/393f3109-fb72-461a-b2ea-99887b39acbe"}