Skip to content

Rsdk device - #8

Draft
KonradIT wants to merge 2 commits into
mainfrom
rsdk-device-id
Draft

Rsdk device#8
KonradIT wants to merge 2 commits into
mainfrom
rsdk-device-id

Conversation

@KonradIT

Copy link
Copy Markdown
Owner

No description provided.

KonradIT and others added 2 commits July 23, 2026 23:54
DJI's R-SDK docs (protocol_data_segment.md) publish a device_id per camera —
Action 4 0xFF33, Action 5 Pro 0xFF44, Action 6 0xFF55, Osmo 360 0xFF66 — and
the camera's own Connection Request carries its id at payload offset 0. We were
parsing verify_mode/verify_data out of that frame and throwing the first four
bytes away.

Scoped deliberately to the R-SDK session, i.e. behind the satellite button: the
media path keeps resolving models from the BLE manufacturer byte, which every
camera has, and nothing outside the GPS feature consults this table. It's a
separate identity space, not a better one.

Unknown ids are labelled UNKNOWN with the raw value rather than dropped — on an
untested unit that's the finding, not an error. The Xtra rebrand is the case in
point: it may answer 0xFF44 like the Action 5 Pro it is underneath, answer with
an id of its own, or not speak R-SDK at all.

Also rewords the 40s approval timeout, which claimed the popup went unapproved
when the same silence equally means the model has no R-SDK (DJI lists the Nano
as unsupported and omits the Pocket 3 entirely).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The R-SDK path dropped every frame that wasn't SOF 0xAA, so "camera said
nothing" and "camera answered in a protocol we discard" produced the identical
40s timeout. It now logs the SOF and first bytes once per session.

That immediately answered the open question in #9. Pointed at the Xtra Edge Pro:
GATT connects, MTU 517, notify armed on fff4+fff5, connection request written —
and 25 ms later the camera answers with a media-path DUML battery push
(0x0D/0x02, sender Battery 0x05/id 0, valid CRC8, 4029 mV), never one SOF 0xAA
frame in 40 s, and nothing on the camera screen. The camera is awake and
talking, just not in R-SDK.

A genuine Action 5 Pro is 0xFF44 in DJI's published table and has GPS sync
hardware-verified, so the rebrand firmware strips R-SDK out — a second concrete
divergence next to the 10004 datalink port. ROADMAP #9 said "probably won't
honor R-SDK"; it's now tested.

Side benefit: that frame is an independent check on the battery decode, which
was mapped on a Nano over the datalink and reads correctly here on an Xtra over
BLE.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant