I'm unsure if this has been done before or how useful it is but here is a project I whipped up yesterday and today. It takes the Soarer's HID codes output by HID Listen and converts them to their associated key name (that is used for programming the converter), all wrapped up into one convenient executable.
If you find any use in it, be sure to let me know any bugs/issues you come across!
https://github.com/adamhb123/EasyHIDListen
EasyHIDListen - Converts Hid Listen Soarer's Hid Codes to Key Names (for Easier Programming)
- brewer
- Location: United States
- Main keyboard: Unicomp New Model M
- Main mouse: Logitech G402
- Favorite switch: Buckling Spring (for now...)
- Contact:
- sharktastica
- Location: Wales
- Main keyboard: '86 IBM F Bigfoot + '96 IBM M50
- Main mouse: Logitech MX Revolution
- Favorite switch: Cap B/S, BOX Navy
- Contact:
Very nice work!
I think I'll definitely be making use of this. I do have two comments as feedback that might be of help.
Firstly, it seems that any remaps I've done are ignored. For example, when I tested your program on my 102-key terminal Model M, the scancodes and translations outputted are of the original layout and not of the config I used to make the terminal keeb act like a PC keyboard. HID_listen does display such changes though, so assuming your code works by specifically checking for a scancode per line of HID_listen's output, you could probably take remaps into account by checking if the HID_listen's output line is longer than usual and then grab the next value over. - the remapped scancode is displayed right next to the original scancode, so in my example where I changed Esc (0x29) to Num Lock (0x53)......the actual value is right 'next door'!
Secondly, as a very minor comment, your program seems to take complete control of the keyboard and thus unable to output characters anywhere else. If that's just a limitation you can't be around, then feel free to ignore (it's not a huge deal). But I can imagine some cases for diagnosing issues where having the keyboard output characters and HID_listen running would be useful.

Firstly, it seems that any remaps I've done are ignored. For example, when I tested your program on my 102-key terminal Model M, the scancodes and translations outputted are of the original layout and not of the config I used to make the terminal keeb act like a PC keyboard. HID_listen does display such changes though, so assuming your code works by specifically checking for a scancode per line of HID_listen's output, you could probably take remaps into account by checking if the HID_listen's output line is longer than usual and then grab the next value over. - the remapped scancode is displayed right next to the original scancode, so in my example where I changed Esc (0x29) to Num Lock (0x53)...
Code: Select all
r76 +29 d53 wED rFA w00 rFA
Secondly, as a very minor comment, your program seems to take complete control of the keyboard and thus unable to output characters anywhere else. If that's just a limitation you can't be around, then feel free to ignore (it's not a huge deal). But I can imagine some cases for diagnosing issues where having the keyboard output characters and HID_listen running would be useful.
- brewer
- Location: United States
- Main keyboard: Unicomp New Model M
- Main mouse: Logitech G402
- Favorite switch: Buckling Spring (for now...)
- Contact:
Thanks for the feedback!

I'll look into this sometime tomorrow, for cases like these I will likely just add another indicator like "translation_redirect" or something like that. Ended up finishing this tonight. Hope all is functional. Time for bed.sharktastica wrote: 06 Jan 2021, 03:11 Very nice work!I think I'll definitely be making use of this. I do have two comments as feedback that might be of help.
Firstly, it seems that any remaps I've done are ignored. For example, when I tested your program on my 102-key terminal Model M, the scancodes and translations outputted are of the original layout and not of the config I used to make the terminal keeb act like a PC keyboard. HID_listen does display such changes though, so assuming your code works by specifically checking for a scancode per line of HID_listen's output, you could probably take remaps into account by checking if the HID_listen's output line is longer than usual and then grab the next value over. - the remapped scancode is displayed right next to the original scancode, so in my example where I changed Esc (0x29) to Num Lock (0x53)......the actual value is right 'next door'!Code: Select all
r76 +29 d53 wED rFA w00 rFA
Hmm... it seems to output to other applications fine to me? This is what I interpreted your question as asking about:sharktastica wrote: 06 Jan 2021, 03:11 Secondly, as a very minor comment, your program seems to take complete control of the keyboard and thus unable to output characters anywhere else. If that's just a limitation you can't be around, then feel free to ignore (it's not a huge deal). But I can imagine some cases for diagnosing issues where having the keyboard output characters and HID_listen running would be useful.

Last edited by brewer on 06 Jan 2021, 08:02, edited 1 time in total.
- Redmaus
- Gotta start somewhere
- Location: Near Dallas, Texas
- Main keyboard: Unsaver | 3276 | Kingsaver
- Main mouse: Kensington Slimblade
- Favorite switch: Capacitative Buckling Spring
- DT Pro Member: -
- Contact:
Dude great work, this will definitely save time for a lot of people. No more combing through a sheet of scancodes to figure out what my keyboard is spitting out!
- sharktastica
- Location: Wales
- Main keyboard: '86 IBM F Bigfoot + '96 IBM M50
- Main mouse: Logitech MX Revolution
- Favorite switch: Cap B/S, BOX Navy
- Contact:
Yeah, that's what I was referring to - that doesn't work for me!brewer wrote: 06 Jan 2021, 07:17 Hmm... it seems to output to other applications fine to me? This is what I interpreted your question as asking about:

- brewer
- Location: United States
- Main keyboard: Unicomp New Model M
- Main mouse: Logitech G402
- Favorite switch: Buckling Spring (for now...)
- Contact:
No problem! I appreciate any and all feedback regardless. I've tested it on my desktop and on my laptop and it seems to work fine but maybe there is some weird restriction of your current setup... do you possibly have an old converter? Both of mine are brand-new because I got into vintage keyboards fairly recently.sharktastica wrote: 06 Jan 2021, 13:41Yeah, that's what I was referring to - that doesn't work for me!brewer wrote: 06 Jan 2021, 07:17 Hmm... it seems to output to other applications fine to me? This is what I interpreted your question as asking about:I guess my computer has gremlins in it... Anyway, I have a deeper look later and get back to you if it's actually a problem on my end then. My apologies!
- brewer
- Location: United States
- Main keyboard: Unicomp New Model M
- Main mouse: Logitech G402
- Favorite switch: Buckling Spring (for now...)
- Contact:
Updated release (v1.1) - added logging to text files