|| One kind of LCD is working, the other one has been implemented solely by reverse engineering but remains untested. Still lacking partial updates, lcd sleep, inversion, ... Backlight does some strange things on fade.
|| Physical keys are handled (see (1)). Touch pad RMI driver has been implemented, some basic gesture analysis has been written but need to be enhanced.
| Music playback
|| Works but needs more testing.
| FM Radio
|| Not implemented.
|| Not implemented.
| Power Management
|| No battery charging yet.
|| DMA works
|| SSP works
|| MMC works, I can switch the internal flash to 8-bit bit @48 MHz
|| A few commands implementeds, only the general SD part is missing, detection works
|| The code works but we are still lacking code to handle voltage; also switch cpu speed is non-trivial and requires careful switching of clock and voltages
|| Everything is implemented and should work
- (1) The volume down key is wired to a GPIO but volume up and power button are wired to the PSWITCH pin for power up/down/recovery. The detection is made by the chip and is voltage based which means that one can detect when either one of those is down but it's impossible to distinguish between when volume up is down and when both are down. Is there another way to handle this ?
Building the bootloader
The bootloader can be built using three different methods. The recommend one is the automatic method using RockboxUtility
when available. The semi-automatic and manual methods require a working cross-compiler and a copy of the Rockbox source code.
(not available yet).
This method requires the following things:
- a working cross-compiler (arm-elf-eabi), see HowToCompile
- a copy of the source code, see HowToCompile
- a copy of the latest firmware for the Fuze+, you need to decompress it, it is be named
First you need to compile the bootloader, to do this follow the instructions from HowToCompile
and when running the configure script, select the Fuze+ and bootloader build. After the build, you should get a
file (you don't need to go further than the 5. Build step in HowToCompile
Then you need to build the mkimxboot tool in
. To do so, just cd into
. It should produce a
Finally, you need to run the tool with the correct parameters. Assuming you are in
./mkimxboot -i sandisk-firmware.sb -b bootloader-fuzeplus.sansa -o firmware.sb -t dualboot
You should replace
by the path to the firmware you downloaded from Sandisk and extracted from the archive, and replace
by the path to the
file produced by the compilation. Note that this command will produce a file called
so if you put a copy of the
file from Sandisk in this directory, rename it to something else like
before running the command.
Finally, plug your Fuze+ and put the
file at the root of the file system, unmount and unplugged just like a regular firmware update.
Of course, to run rockbox, you will also need to do a normal build of rockbox and put rockbox on your device (see HowToCompile
but this time to a normal Fuze+ build and go until the 6. Install step).
If you want to boot to the OF, press Volume Down on boot (hold it, press power, wait a few seconds and release it).
- 01 May 2011
Copyright © by the contributing authors.