1How to disable startup sound
This is dangerous hack,
Changing wrong setting may BRICK YOUR FLIP4, and you'll have to get it serviced (reflashed) to make it work again. You can reflash it yourself, but it's tricky.
Still with me? Let's dive.
2Download and install CSR BlueSuite
To download it officially, it looks like you have to buy csr development kit. It costs more than 1000 $.
Luckily, it has leaked.
Windows. May work on Wine, but I don't know.
3Connect your JBL Flip 4 to PC with usb cable. Power it up.
4Enter DFU mode
Press and hold PlayPause+Vol.Down for 13 seconds or so.
Power and Connect+ LEDs should light up for a second, then go out.
The speaker enters DFU mode, and will be detected by the PC.
5Run PSTool from CSR BlueSuite, establish connection
As you launch PSTool, connection dialog pops up. Select USB option. You should see \\.\csr0 selected as Port. click OK.
You should see a long list of keys you can modify.
6Modify "User configuration data 30"
Locate "User configuration data 30" (PSKEY_USR30). It should have a value like this:
"476d 0000 3fff 476e 0001 3fff 476f 0002 3fff 4770 0003 3fff 4771 0004 3fff 4772 0005 3fff 4773 0006 3fff 4774 0007 3fff 4775 0008 3fff 4776 0009 3fff 4001 000a bfff 4002 000b bfff 4003 000c bfff 4742 000d bfff 4744 000e bfff 4116 000f bfff 4101 0010 bfff 411b 0011 bffe"
Locate the "4001 000a bfff" piece, and change it to "4001 000a 0000" (that is, write zeros instead of "bfff" word). This disables ONLY startup sound. Other bfff's disable other sounds, see project log Sound Table
Once finished, click Set button.
Click Reset BC button (stands for "Reset BlueCore"). PSTool will show an error, because the speaker powers down. That's normal.
Power up your speaker. There should be no startup sound anymore. DONE!!
If steps 8-9 don't bring your speaker back alive, try:
* disconnect usb and press power button for twenty seconds or so, then press it again to switch it on.
* disconnect usb and leave it alone for a few minutes. Then try to switch it on.
* take it apart and disconnect-reconnect the battery.
* leave it alone till the battery is dead. Charge it, power it on.
If nothing helped - congrats, it's probably bricked.
EDIT: I thought, messing with this setting does not brick the speaker. BUT, someone reported that setting the second word of the startup sound entry to value >=0012 causes a crash on startup, and it's impossible to enter DFU mode again to fix it. So their speaker is probably bricked. Be extra careful, please.
You may want to dump all settings to a file, to be able to revert any changes you made. Use File->dump. However, it won't help if the speaker is bricked, because then PSTool won't connect to it anymore. To unbrick the speaker, you'll need to use SPI programmer and you need to have firmware to flash. SPI programmer is available on aliexpress and ebay, but I made one myself based on FTDI board thanks to this awesome project: https://github.com/lorf/csr-spi-ftdi