Q:

CSR DFU File Format

I am trying to reverse engineer the firmware for my JBL Flip 3 speaker. I have obtained a DFU file for the device online but am unsure as to how much of the firmware is included. My first question would be, normally do DFU files include the full device firmware or just a portion of it and the device knows how to update the specific portion?
Assuming for now that the file contains the full firmware, does anyone know anything about firmware images for CSR Bluetooth SOC's? I know that the speaker is using a CSR SOC because the DFU starts with CSR-dfu2.
Opening the DFU file in Audacity and playing it, we can see that it contains all the sound effects the speaker plays as well as some sections of static that I assume are code: 
I am fairly confident that these sections are code/data because they contains strings like tts/0.raw and tts/1.raw. However, there is a null byte in between each character of the strings which suggests that they are UTF-16 strings. Does anyone know of an embedded filesystem that uses UTF-16 filenames?
Unfortunately binwalk does not provide any useful information. However, I found what I believe to be the full JBL Flip 4 firmware image image and binwalk reveals several sections:
0             0x0             CSR (XAP2) DFU firmware update header
1380          0x564           CSR Bluecore firmware segment
1931310       0x1D782E        YAFFS filesystem, big endian

Does anyone have any experience with CSR or JBL firmware and could provide guidance or a suggestion of how to extract code from the DFU? Thank you.

A:

This is a BlueCore02 Device Firmware Upgrade File. I could not find a specification, but the BlueCore01 specification contains more or less the same fields (with a few differences)

