Rockbox Development > New Ports
SanDisk Sansa c200v2, m200v4, clipv1, clipv2, clip+, and fuzev2
ranma:
--- Quote from: funman on February 11, 2010, 09:37:29 AM ---So the problem is the USB check gives a false positive ?
What happens if you power it with the USB cable ?
Some c200v2 might need something more to enable the backlight, just like what happened on the Clipv1
--- End quote ---
As said on irc, if I shine a bright flashlight on the display I can see that it's just the backlight that is not powered.
New info:
If I put an infinite loop into the as3525 reboot function, it stops at the 'usb inserted' logo, so that seems to be the point where it reboots. (USB is not attached at this point)
If I change usb_detect to always return USB_EXTRACTED it does not reboot and I can navigate the menu!
And it mp3 playback works on a first quick test. It even changed over to the next mp3 (now on the third one).
Now if only the backlight would work...
Maybe the GPIOs are different on this one? Since both USB_DETECT and BACKLIGHT don't work?
[edit]
Ok, I've got it. On my c200v2 backlight is controlled by A7 instead of A5.
I now have working backlight.
Also interesting:
Even though I've disabled the USB detection it reacts to USB plug/unplug as if a button was pressed.
i.e. the buttonlight goes on and display is switched on if it was off.
[/edit]
[edit3]
Ok, I've now found out that the reaction to USB plug/unplug is due to the SYS_CHARGER_CONNECTED and SYS_CHARGER_DISCONNECTED events.
[/edit3]
[edit2]
Here are modified binaries if someone wants to try (on his own risk!):
http://uguu.de/~ranma/rockbox-c200v2/
Index: firmware/target/arm/as3525/sansa-c200v2/backlight-c200v2.c
===================================================================
--- firmware/target/arm/as3525/sansa-c200v2/backlight-c200v2.c (revision 24590)
+++ firmware/target/arm/as3525/sansa-c200v2/backlight-c200v2.c (working copy)
@@ -30,7 +30,7 @@
bool _backlight_init(void)
{
- GPIOA_DIR |= 1<<5;
+ GPIOA_DIR |= 1<<7;
return true;
}
@@ -47,12 +47,12 @@
#ifdef HAVE_LCD_ENABLE
lcd_enable(true); /* power on lcd + visible display */
#endif
- GPIOA_PIN(5) = 1<<5;
+ GPIOA_PIN(7) = 1<<7;
}
void _backlight_off(void)
{
- GPIOA_PIN(5) = 0;
+ GPIOA_PIN(7) = 0;
#ifdef HAVE_LCD_ENABLE
lcd_enable(false); /* power off visible display */
#endif
Index: firmware/target/arm/as3525/usb-as3525.c
===================================================================
--- firmware/target/arm/as3525/usb-as3525.c (revision 24590)
+++ firmware/target/arm/as3525/usb-as3525.c (working copy)
@@ -61,9 +61,11 @@
int usb_detect(void)
{
#ifdef USB_DETECT_PIN
+ /*
if (GPIOA_PIN( USB_DETECT_PIN ))
return USB_INSERTED;
else
+ */
#endif
return USB_EXTRACTED;
}
[/edit2]
bertrik:
Regarding the power consumption issue: I asked jobec to check the contents of the SYSTEM and CVDD registers on his power-hungry clip v1. They were exactly the same as on my clip (SYSTEM=0x29 -> PVDD trimmed to 17/18 and CVDD=0x04 -> completely normal). So that doesn't explain anything, although it is slightly peculiar that PVDD is trimmed down a bit by default. We didn't check the USB_UTIL register yet though, it could still be that we're accidentally wasting power somehow on USB.
mtee:
Hi FlynDice,
I've been trying a little bit with the clip+ port, and I think I bricked mine. :(
I built a bootloader -> scrambled -> mkamsboot -> copied the binary image to the device's storage, then after a successful firmware upgrade, it went dead. Since it worked for you, then I'm sure I've missed something in the middle.
Anyway, I'll probably buy another one later, but until then, I'll try to help with other stuff.
FlynDice:
@ mtee:
Before you call it bricked try holding the pwr button for 10 sec straight to try to reset. Did you get a branch to the of with left or home pressed? As of now if you let it boot to the rockbox code the clip+ shows absolutely no response and appears bricked, but will reset with an extra long pwr press.
mtee:
--- Quote from: FlynDice on February 11, 2010, 06:12:45 PM ---@ mtee:
Before you call it bricked try holding the pwr button for 10 sec straight to try to reset.
--- End quote ---
Tried that once I did the firmware replacement, but the device still didn't work.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version