Skip to content

Add H900 learning - #80

Merged
jaymzh merged 11 commits into
jaymzh:mainfrom
martin-wagner:add-usbnet-learning
Jul 10, 2026
Merged

Add H900 learning#80
jaymzh merged 11 commits into
jaymzh:mainfrom
martin-wagner:add-usbnet-learning

Conversation

@martin-wagner

Copy link
Copy Markdown
Contributor

This adds IR command learning for the Harmony 900. Please have a look before thinking about merging this. I intended to use this stand-alone when finding concordance had support for IR learning already, so this differs from the structure of the other code.

  • uses semi-modern C++ features (vectors, chrono, auto datatype, smart pointers)
  • adds multiple files for the learning commands, instead of integrating into the existing ones.
  • data format is essentially the same as remote.cpp -- _handle_ir_response, just network packaging is different.

I've tried this with the 900 and 1000. 900 works perfectly, 1000 sometimes returns data, after that it crashes. When data is returned, it looks valid.

Martin Wagner added 6 commits May 2, 2026 12:34
tmp_pkt is three bytes too small and fails in Read(...). S
nippet taken from "Write()" function, assuming same header size.
happens when deinit_concord() is called by the user code and the class destructor.
you can set a time and the remote will record all ir data for this time
@martin-wagner martin-wagner changed the title Add usbnet learning Add H900 learning May 8, 2026
@jaymzh

jaymzh commented May 8, 2026

Copy link
Copy Markdown
Owner

I'm not overly worried about the newer C++ stuff, the fact we don't have it is just legacy. As long as it doesn't break any of the wrapping it into C-compat bindings, which I don't see how it would, I don't mind.

I haven't looked deeply into the code, I'll review it when I get some time, but by and large at a quick scan it seems good. But can you update the SupporteModels.md accordingly?

@jaymzh

jaymzh commented May 8, 2026

Copy link
Copy Markdown
Owner

Also #81 will fix CI

@jaymzh
jaymzh force-pushed the add-usbnet-learning branch from 7804948 to 17d7964 Compare May 8, 2026 18:22
@jaymzh

jaymzh commented May 8, 2026

Copy link
Copy Markdown
Owner

Also for the 1000, should we add retry if no data is returned?

@jaymzh

jaymzh commented May 8, 2026

Copy link
Copy Markdown
Owner

[rebased your PR to verify that it passes CI]

@martin-wagner

Copy link
Copy Markdown
Contributor Author

Also for the 1000, should we add retry if no data is returned?

The remote crashes and reboots, so i don't think that helps...
it seems to have some minor differences in the data format, but i didn't look into that further.

@martin-wagner
martin-wagner marked this pull request as ready for review May 9, 2026 05:49
@martin-wagner
martin-wagner force-pushed the add-usbnet-learning branch from 5b73344 to 9337ed3 Compare May 9, 2026 06:31
Comment thread SupportedModels.md
@jaymzh
jaymzh enabled auto-merge (squash) July 10, 2026 18:33
@jaymzh
jaymzh merged commit 6ec3fae into jaymzh:main Jul 10, 2026
5 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.

2 participants