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:040 Comments

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:
            addr, str_hex_val = line.split(' ')
                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:


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.