Recorded runes for on Xbox One controller are Syncing as PS4

spike1234

New Member
Hello,

Finally got my XBox One Berserker controller up and running and I came across a BIG snag.

(NOTE: The recorded rune will playback correctly on the controller per the playback rune pack)

When I sync a recorded rune to my account, it outputs as a PS4 rune. All of the buttons match that of a PS4 controller, although when attempting to load into a XBbox One rune pack, these "PS4 recorded" runes do not show up.

There must be something HUGE that I am missing here.

I went so-far as to download HTM file of the rune to view where/what was being labeled as PS4.

Within the document, the code ......"kind":"PS4"}'> is troubling.

Did I incorrectly set a default somewhere? Can it be changed? Can I edit the rune code and change PS4 to XBOX? Is there something on the MOD-CHIP that can be switched form PS4 to Xbox? The potential list goes on and on.......

I am really confused and a little frustrated.......what could I be missing?

I appreciate any assistance.

-Tony

forge.jpg word pad.jpg
 

odingalt

Well-Known Member
Staff member
Spike would you tell me which version of the App (and which O/S) you are using and I can dig into this?
 

odingalt

Well-Known Member
Staff member
Sorry one more question, when you connect your controller and load the app, what "FW" and "HW" numbers are reported?
 

spike1234

New Member
App version = "Berserker-Windows-App-10-6-2015"

OS = Windows 10 Home, 64 bit OS, 64 bit Processor

Modchip ID:3994453628,hw:2,fw:4

Firmware is up-to-date
 

odingalt

Well-Known Member
Staff member
Thanks for the additional info. Ok I'm on the job. I will be writing a lot of notes here in this thread, but you can ignore most if not all of the ramblings, they are just troubleshooting notes to myself for future reference.

App version = Berserker-Windows-App-10-6-2015
OS = Windows 7 Ultimate, 64 bit OS, 64 bit Processor
Modchip ID: 383871079,hw:2,fw:4

Loaded the old "Akimbo Test Pack" rune pack, rebooted the controller, recorded a rune (XYBA buttons and left joystick). Rebooted controller into programming mode, reconnected to Windows, opened the user app, sync'd recordings. Found 1 recording. Recording was retrieved fine, but XYBA button presses show as circle/triangle/square/ex (PS4 button presses). Rune saves successfully under My Runes in my account, shows up in the My Runes list, and can be used to create packs, but button presses appear as PS4.

Created a new test pack, repeated the process with the same results.

HW:2 number is correct and I don't believe the user app has the ability to know or care what type of recording was made (PS4 or XBOX One), assuming the bug is on the web app side during conversion of the pack into the database. Less likely, but possible, is the firmware is supposed to populate the hardware identified into the pack header after recording but this may not have been implemented int he current version of the firmware since PS4 is not released yet and we may be defaulting to some value that confuses the web app during pack conversion.
 

odingalt

Well-Known Member
Staff member
In the source code, the web app has program that converts raw binary data (binary data in this case being the binary runepack within the controller which includes recorded runes). In that program (convert_runes) are some simple functions that basically act as a hard-coded look-up table. That lookup table was set to read the harwdare ID from the binary data. The look-up table was incorrect.

Old look-up table:

var HARDWARE = {
XboxOne: 0x01,
PS4: 0x02,
LED: 0xFF
}, to_HARDWARE = _reverseMapping(HARDWARE);

New look-up table:

var HARDWARE = {
XboxOne: 0x01,
XboxOne: 0x02,
PS4: 0x03,
LED: 0xFF
}, to_HARDWARE = _reverseMapping(HARDWARE);

To-do list:

-Run a script on the entire database so that any and all runes that were improperly tagged as kind PS4 are instead tagged as kind:XboxOne.
-Create new master tables in the web app database to store the hardware ID look-up tables, re-write web app (firmware management tool, etc.) to use the look-up table stored in the database. Basically do a bunch of work so that hardware ID is not a "hard coded" element, otherwise each time a new hardware ID is added, we need to roll updates to the web app, the user app and the factory app simultaneously.
 

odingalt

Well-Known Member
Staff member
spike1234, going forward, this bug should be fixed for new recordings that you retrieve. However, your old recordings are still going to show as PS4 in the mean time.

I need to run a script on the database to clean up any previously retrieved recordings so they properly show up as XBOX One recordings. I'll update this post when it's done, but you should be good to keep on using those old recorded runes even though they are showing PS4 button presses.

Thanks for reporting the bug. As far as I can tell this bug has existed since March 2015, and the bug would have been affecting any customer that has purchased a "HW:2" Berserker. That would be everybody since about March 2015. I am surprised nobody brought this to my attention. Or maybe they did and I missed it!
 
Top