FS#10273 - Enable OLED-Screen for Clip v1 (without FM chip?)

Attached to Project: Rockbox
Opened by Matthias Schneider (matsch) - Wednesday, 03 June 2009, 17:39 GMT
Last edited by Rafaël Carré (funman) - Sunday, 07 June 2009, 23:33 GMT
Task Type Patches
Category LCD
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Version 3.2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


Patch enables OLED-Screen for some Clip v1 which are different from
others (due to missing FM chip?). The DC-DC converter of AS3525 is
switched on. Parameter x of ascodec_write(AS3514_DCDC15, x) has no influence on screen contrast unless x = 0.
This task depends upon

Closed by  Rafaël Carré (funman)
Sunday, 07 June 2009, 23:33 GMT
Reason for closing:  Accepted
Comment by Thomas Martitz (kugel.) - Wednesday, 03 June 2009, 17:41 GMT
I think that should be toggled in backlight_on() and backlight_off() (or lcd_enable(), that's the same on the clip anyway). The DCDC doesn't need to be on without backlight.
Comment by Rafaël Carré (funman) - Wednesday, 03 June 2009, 18:59 GMT
I hesitate if we should cache radio_hardware_present() value and use it to enable/disable DCDC.

We would need to have at least one report of a Clip without a FM chip and with a display working without this patch
Comment by Rafaël Carré (funman) - Thursday, 04 June 2009, 11:43 GMT
According to bertrik, the power consumption is small enough to enable powering unconditionally, so the patch should go in when it disables DCDC in lcd_enable()
Comment by Matthias Schneider (matsch) - Thursday, 04 June 2009, 18:59 GMT
I tried to toggle the DCDC in lcd_enable. For a short time I see a bright screen when ascodec_write(..) is in lcd_init-device
like in the patch, but then the screen is black. If ascodec_write(..) is not in lcd_init_device the screen is black from start.

Comment by Bertrik Sikken (bertrik) - Thursday, 04 June 2009, 19:05 GMT
My reasoning is that the current battery life time is about 7 hours for a 350 mAh battery, so it's drawing about 50 mA on average.
For clips that don't need the DCDC15, I don't expect the 1.25 mA current to really run into anything. Even if it does, it's only 1.25/50 = 2.5% more current draw.
Comment by Bertrik Sikken (bertrik) - Thursday, 04 June 2009, 20:08 GMT
This is roughly what the OF does: enable DCDC15 just before enabling the display and disable it again after disabling it. The OF uses a small delay between enabling DCDC15 and enabling the display, possibly to avoid visual glitches.
Comment by Matthias Schneider (matsch) - Friday, 05 June 2009, 17:37 GMT
I can confirm that the patch works with my clip.
I ran battery_bench wit 7h30 running time.
Comment by Hilton Shumway (HIllshum) - Friday, 05 June 2009, 17:39 GMT
Can somebody with a Clip that doesn't need this patch run battery benches with it applied and without and post them to compare the difference?
Comment by Rafaël Carré (funman) - Friday, 05 June 2009, 17:46 GMT
i'll run the benchmarks and post the results this week end
Comment by Rafaël Carré (funman) - Saturday, 06 June 2009, 13:56 GMT
here are some results, but I had a problem : playback stopped itself while testing SVN so results might not be 100% reliable

EDIT: WRONG TEST : the LCD was off during both benches .. I feel stupid .. I'll retest again.
   clip.png (4.5 KiB)
Comment by Rafaël Carré (funman) - Sunday, 07 June 2009, 23:28 GMT
no effect on Clip not needing the patch