Close

Analyzing the firmware... using Audacity =0

A project log for Reverse-engineering JBL flip 4

That is, full teardown, analysis, and hacking.

deepsoicDeepSOIC 11/17/2018 at 22:041 Comment

I looked at the files I extracted from the chip - there are two files, one small and one large. It's a simple text file with hex numbers. So I glued then together with a quick py script to have a look:

file_name = r"S:\somethingsomething\jbl flip 4.xpv"
with open(file_name, 'r') as x_file:
    with open(file_name + '.bin', 'wb') as b_file:
        for line in x_file:
            if len(line)<4:
                continue
            addr, str_hex_val = line.split(' ')
            b_file.write(bytearray([
                int(str_hex_val[2:4], 16),
                int(str_hex_val[0:2], 16)
            ]))


First, I opened them in text editor, to see if there are some interesting strings. Not that I looked very thoroughly, but I only found "JBL Flip 4" string once, and nothing else. I was hoping for some debugging strings, to give me clues.

Then, I decided to see, if the sounds are in that firmware, And yes they are:

(WARNING: VIDEO IS VERY LOUD!)

I loaded the binary file into audacity, and after some precision guesswork, picked the parameters: signed 16-bit pcm, big-endian, 1 channel, 16k sample rate.

Discussions

masterX244 wrote 01/21/2022 at 22:50 point

Late Comment: Not all sounds are 16k sample rate. Working on the same framework atm and found my way backwards via the tools from the chipset

  Are you sure? yes | no