Jump to content
Tuts 4 You

Need help with keyboard firmware


Recommended Posts

Posted (edited)

Hi there,

 

I bought NEWSKILL Gungnyr Pro keyboard and was lied by the brand, they claim we can customize the ring of color around the keyboard on the software but there is no such thing...

Spoiler

newskill-gungnyr-pro-optomechanical-gaming-keyboard-rgb-antighosting-interchangeable-gateron-switches-black.webp.97046c83ef1c5bd7e2a2e81830ca4390.webp

 

In their software there's a updating app and likely firmware separated from it, is it ok to ask if someone here could maybe do it for me??

 

All I wanted was to have more pre-defined colors added and the addition of dimming the ring of light with like FN+PageDown.

 

The checksum's of all files also seem to be in the config file of the updater app:

[PRODUCT]
ic_type = MWV602
program_type =multi_file

[BOOTLOADER]
Bootloader_VID = 0x2EA8
Bootloader_PID = 0x0001
Bootloader_type= USB
ENCRYPT_KEY    = 0xffffffff
Bootloader_Info = vid_2ea8&pid_0001

[APPINFO]
App_Info = vid_2EA8&pid_2122&mi_01&col03
App_Dev_Type = 0  ;1:mouse,0:keyboard 
App_Report_ID = 4 ; fixed 4 now
App_Dev_ID=0x0f04


[HEX]
boot_name =boot.bin
app_name =ER_IROM1
data_name =ER_IROM2
merge_name = program.bin
[BOOT_SIZE]
602boot_size = 0x1E00
905boot_size = 0x600

[DATA_START_ADDRESS]
boot_address =0x0
app_address =0x2000
data_address =0x1A000

[SETTING]
bootloader_upgradable =1
application_upgradable =1
data_upgradable =1

[LOCAL_CHECKSUM]
boot_checksum =0x18C959A7
app_checksum =0xA251C166
data_checksum =0x22269921
merge_checksum =0x98BE01E0

[IC_CHECKSUM]
boot_checksum =0x422F1A50
app_checksum =0x2670F275
data_checksum =0x333D2A3C
merge_checksum =0xA89D3DE6

Capturadeecr2025-06-16114927.png.5d5cfe0e6f3c7f096cabeef3d02948df.png

Edited by guily6669
  • Like 1
Posted
51 minutes ago, guily6669 said:

Hi there,

 

I bought NEWSKILL Gungnyr Pro keyboard and was lied by the brand, they claim we can customize the ring of color around the keyboard on the software but there is no such thing...

  Hide contents

newskill-gungnyr-pro-optomechanical-gaming-keyboard-rgb-antighosting-interchangeable-gateron-switches-black.webp.97046c83ef1c5bd7e2a2e81830ca4390.webp

 

In their software there's a updating app and likely firmware separated from it, is it ok to ask if someone here could maybe do it for me??

 

All I wanted was to have more pre-defined colors added and the addition of dimming the ring of light with like FN+PageDown.

 

The checksum's of all files also seem to be in the config file of the updater app:

[PRODUCT]
ic_type = MWV602
program_type =multi_file

[BOOTLOADER]
Bootloader_VID = 0x2EA8
Bootloader_PID = 0x0001
Bootloader_type= USB
ENCRYPT_KEY    = 0xffffffff
Bootloader_Info = vid_2ea8&pid_0001

[APPINFO]
App_Info = vid_2EA8&pid_2122&mi_01&col03
App_Dev_Type = 0  ;1:mouse,0:keyboard 
App_Report_ID = 4 ; fixed 4 now
App_Dev_ID=0x0f04


[HEX]
boot_name =boot.bin
app_name =ER_IROM1
data_name =ER_IROM2
merge_name = program.bin
[BOOT_SIZE]
602boot_size = 0x1E00
905boot_size = 0x600

[DATA_START_ADDRESS]
boot_address =0x0
app_address =0x2000
data_address =0x1A000

[SETTING]
bootloader_upgradable =1
application_upgradable =1
data_upgradable =1

[LOCAL_CHECKSUM]
boot_checksum =0x18C959A7
app_checksum =0xA251C166
data_checksum =0x22269921
merge_checksum =0x98BE01E0

[IC_CHECKSUM]
boot_checksum =0x422F1A50
app_checksum =0x2670F275
data_checksum =0x333D2A3C
merge_checksum =0xA89D3DE6

Capturadeecr2025-06-16114927.png.5d5cfe0e6f3c7f096cabeef3d02948df.png

@guily6669 Have you installed the keyboard driver of your windows's?

Regards.

sean.

  • Like 1
Posted
1 hour ago, guily6669 said:

there's a updating app and likely firmware separated from it, is it ok to ask if someone here could maybe do it for me??

wha exactly do you expect to be in help here?

 

  • Like 1
Posted
1 hour ago, lovejoy226 said:

@guily6669 Have you installed the keyboard driver of your windows's?

Regards.

sean.

There's no drivers, just software to add macros or do color keys custom profiles to save in the keyboard...

  • Like 1
Posted
1 hour ago, jackyjask said:

wha exactly do you expect to be in help here?

 

Just wanted to know if someone could like hack the firmware to still work on the official updating app but add more colors to the outer ring and like a way to dim them using like FN+PGdown which isn't used for anything...

  • Like 1
Posted

what type of binary is your FW about?

what CPU/controller/HW it is built for?

 

  • Like 2
Posted (edited)
18 minutes ago, jackyjask said:

what type of binary is your FW about?

what CPU/controller/HW it is built for?

 

hard to know, on the update .cfg file like shown above says ic_type = MWV602 but there's not even info on it; but it's likely something ARM, no idea what ☹️

 

I'm not even 100% sure but the firmware is likely ER_IROM1 and ER_IROM2 without any file type.

 

And to check visually it's likely on top of the keyboard, I would have to disassemble it and remove all the 100+ keys 😱

 

Chatgpt Said the following:

 

Spoiler
 Is This Firmware Encrypted?

From initial analysis:

    ER_IROM1: Appears to be not encrypted — it has full byte diversity, a structure consistent with a compiled binary (probably ARM Thumb), and doesn't show compression headers or XOR masking.

    ER_IROM2: Has low entropy, which could mean:

        It’s plaintext config data (keymap, language tables, etc.).

        It’s lightly obfuscated (e.g., XOR with fixed key).

        Or a custom encoding (like nibble-swapping or address shuffling).

So far, this does not look like it's encrypted using modern strong encryption (AES, etc.). It may be:

    Compiled ARM firmware (in ER_IROM1)

    Obfuscated data (in ER_IROM2)

🛠 What I’ll Try Next:

I’ll now:

    Search for readable strings inside both binaries.

    Try simple XOR and pattern detection on ER_IROM2.

    Verify whether there's any known encryption header or signature.

Let's start.
🔎 Results from ASCII String Extraction
ER_IROM1:

Contains some ASCII-like sequences, though most of them look like garbage or compiler artifacts, not real debug logs or strings. Examples:

    'pGpG', 'ppGp', '~K~I', 'tMuOuLnN'

This supports the assumption that it's raw compiled code, likely ARM Thumb (still not encrypted).
ER_IROM2:

🕵️ No readable ASCII strings found — indicating one of:

    It’s binary configuration data (e.g., keymaps, scan tables).

    It's obfuscated (lightweight encoding like XOR or RLE).

    It's encrypted (less likely due to the file's size and context).

🔧 Next Step: XOR Obfuscation Check

Now I'll attempt a brute-force XOR check on ER_IROM2 to see if it's been XORed with a fixed byte (0x00–0xFF). This is a common form of lightweight obfuscation used in cheap or proprietary firmware.
🔓 XOR Obfuscation Detected!

Your ER_IROM2 file appears to be XOR-obfuscated, likely using a single-byte XOR key.
🔑 XOR Key Candidates:

These are some keys that produced readable ASCII patterns:

    Key 0x21 (33) → strings like:
    "1!!!!!!! ''!!!!", "///??##!!!!!!!!!!!!!"

    Key 0x22 (34) → strings like:
    '2"""""""#$$""""', ',,,<< """""""""""""'

    Key 0x23 (35) → similar structured output

This strongly suggests the firmware uses a simple XOR scheme, possibly with key values 0x20–0x23. This kind of lightweight obfuscation is common for:

    Hiding keymaps/config

    Preventing casual firmware tampering

 Next Steps

I’ll now decode the entire ER_IROM2 using one of the likely XOR keys (0x21), and try to:

    Extract readable data (ASCII strings, layout blocks)

    Check if this includes keymap tables or layout IDs

Let’s proceed.

It seems like I can’t do more advanced data analysis right now. Please try again later.

However, based on what I found so far, your ER_IROM2 file is likely obfuscated using a simple XOR scheme — most probably with a key like 0x21. You can try decoding it yourself using any hex editor or scripting tool (like Python or a hex editor with XOR support).

If you want, I can provide a short Python script you can run locally to decode the file and extract readable strings — just let me know! 

 

But then ended up analyses for today, can only continue tomorrow on it lool

Edited by guily6669
  • Like 1
Posted (edited)

Have you read and checked this:

https://www.newskillgaming.com/manuales/Gungnyr-manual-EN.pdf

You should be able to reduce/increase light intensity with the function button and arrow up/down.
Also colour should be choosable with the function button and DEL. Read more in the guide above.

Or, are you saying that this doesn't work?

You might need the software also in order for all functions to work:
https://www.newskillgaming.com/en/newskill-gungnyr-pro-optomechanical-rgb-gaming-keyboard-with-interchangeable-switches

Edited by Ben_Dover
  • Like 2
Posted

@guily6669  how about you find & compose an email to support?

you are legitimate user of the product, so try some old school tactics :)

ask them about your pain points

 

  • Like 2
Posted (edited)
On 6/16/2025 at 4:07 PM, Ben_Dover said:

Have you read and checked this:

https://www.newskillgaming.com/manuales/Gungnyr-manual-EN.pdf

You should be able to reduce/increase light intensity with the function button and arrow up/down.
Also colour should be choosable with the function button and DEL. Read more in the guide above.

Or, are you saying that this doesn't work?

You might need the software also in order for all functions to work:
https://www.newskillgaming.com/en/newskill-gungnyr-pro-optomechanical-rgb-gaming-keyboard-with-interchangeable-switches

I already have the software and read all that right when I got the keyboard. The ring of light colors can be changed but only from pre-defined ones and in the software doesnt even have the option which they claim the keys and the ring around the keyboard can be customized on the software but its a lie...

 

What I wanted was being able to customize the color like I can do for the keys any color and not use the pre-defined colores that they only have for the ring and also the worse problem even bigger than that is there's no way to dim it.

 

The palm rest is kinda the same except it can be dimmed which is super stupid since a lot of people don't even use it and throw it somewhere and what matters the ring around the keyboard can't be dimmed LOL, beyond stupid.

 

I really like the style it gives to the keyboard with the ring it goes from being a normal office like keyboard to something crazy, but don't want it blinding me when I want my eyes focused on the monitor, the only option is OFF sadly, I liked them really very dim like I did to my keys kinda goldish color dim.

 

Also by activating debug mode I can see the ring in the software but doesn't allow customization, only allow to select same exact colors as from the key combos and has no brightness or anything.

 

Also saving the profile I found where it saves the color, but it's just pre-defined numbers in hex from 00 to 08, all the colors are really inside the FW and doesn't look like hex editing the profile allow changing them either or at least I still couldn't find any way to do it.

Captura_de_ecra_2025-06-16_021402.webp.84fe757828b3a116270c3d1dba814689.webp

For example here the 01 is red and 07 is OFF if I remember well, the 04 seem to be brightness control from 01 to 04, but only one works that dims the keys but changing all from 04 to 01 and loading it doesn't dim anything else ☹️

On 6/16/2025 at 6:21 PM, jackyjask said:

@guily6669  how about you find & compose an email to support?

you are legitimate user of the product, so try some old school tactics :)

ask them about your pain points

 

Already did that, but before even buying the keyboard I already asked if they sell keycaps in my country layout and they only answered like 2 days ago, weeks after and I replied in the same mail this issue, will have to wait and see what they will say.

 

But the chances are likely blahblahblah thank you for reporting that's how we improve our products and put it in the garbage😞

 

Also chatGPT above seems very wrong about the ER_IROM2, I have no experience but I think it doesnt use XOR and I doubt it has any info on colors or keys cause it's content is mostly 0 or padding and barely has anything in it with a hex editor, pretty much almost everything should be in the ER_IROM1 which is the bigger file and full of content.

 

ps: ChatGPT thinks its a ARM Cortex-M0/M3 class SoC but the AI can't confirm and me much less...

Edited by guily6669
  • Like 1
Posted (edited)

Oh, just received a mail from the brand and they are totally dodging the bullet or trying to make fun 🤬

 

I told them very clearly and with respect saying that the software doesn't allow to customize the keyboard ring color as they have advertised in the website and if they can update the app and the keyboard firmware to allow to customize the ring color with our own custom color like the keys and increase/decrease it's brightness and save in the keyboard profile.

 

They replied with can you show us a video of the error you are reporting?

 

It's a bloody joke what error did I even report...

Edited by guily6669
  • Like 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...