Skip to content

Add LG ThinQ support for iOS - #2084

Merged
abrignoni merged 1 commit into
mainfrom
feat/lg-thinq-ios
Sep 1, 2026
Merged

Add LG ThinQ support for iOS#2084
abrignoni merged 1 commit into
mainfrom
feat/lg-thinq-ios

Conversation

@abrignoni

Copy link
Copy Markdown
Owner

Adds LG ThinQ support for iOS. Five artifacts from the app's Realm store, read with the vendored realm_parser:

  • Devices: LG appliances registered to the account, with the name the account gave each one, its model and serial number, the Wi-Fi network it reported and the room it is assigned to.
  • Rooms
  • Favorites
  • Account Identifiers
  • Services

The app keeps no user data in SQLite; its ThinQCoreKitDatabase holds interface theme rows only. Four date columns use four different formats and are handled separately, and only the favorites columns record a zone, so the others are reformatted and reported as stored. The service join date is read month first because it resolves to the same day the appliances record as their registration date, and read day first it would fall after the extraction date. Candidate files must carry a class_Product table before they are read. The sibling shared and tv Realm files hold interface layout and a schema version only and are not reported. The stored access token is not reported.

Five artifacts from the app's Realm store, read with the vendored
realm_parser:

- Devices: LG appliances registered to the account, with the name the account
  gave each one, its model and serial number, the Wi-Fi network it reported
  and the room it is assigned to.
- Rooms
- Favorites
- Account Identifiers
- Services

The app keeps no user data in SQLite; its ThinQCoreKitDatabase holds interface
theme rows only. Four date columns use four different formats and are handled
separately: a 17 digit packed value for registration, an 8 or 14 digit value
in one room column, an explicitly UTC marked string for favorites, and a text
date for the service join date. Only the favorites columns record a zone, so
the others are reformatted and reported as stored. The join date is read month
first because it resolves to the same day the appliances record as their
registration date, and read day first it would fall after the extraction date.
Candidate files must carry a class_Product table before they are read. The
sibling shared and tv Realm files hold interface layout and a schema version
only and are not reported. The stored access token is not reported.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@abrignoni
abrignoni merged commit 503bed3 into main Sep 1, 2026
10 checks passed
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