We have found a strange issue with the MC34708:
Note: In our system OTG is always client.
The reset button (GLBRST) still works as expected, in both cases.
After power on reset, we set the MC34708 like this:
SW1AMODE = 0x0C
SW2MODE = 0x0C
SW3MODE = 0x0
SW4AMODE = 0x0C
SW4BMODE = 0x0C
SW5MODE = 0x0C
SWBSTMODE = 0x02 (but also tried 0x00, no difference)
SW1 VOLT = 1100 mV
SW1 STDBY = 850 mV
SW2 VOLT = 1300 mV
SW2 STDBY = 950 mV
Regulator Mode 0
VUSBSEL = 0x01
USB Control
SWHOLD = 0x0 (but also tried 0x01, no difference)
Power Control 2:
RESTARTEN = 1
PWRON1RSTEN = 1
STANDBYINV = 1
GLBRSTTMR = 1
WDIRESET = 1
The above settings are done in the bootloader, after that, the PMIC is not touched anymore.
OS = WEC7 (but for this question the OS shouldn't matter)
Anybody any idea what could cause this behavior and how to fix it?
Hi Michel,
I think that I know what is happening here, you mentioned that it is not possible to reset the MC34708 while VBUS is connected to a host when you press PWRON1 for 4 sec, correct?
First, is important to mention that even the system is reset by pressing the button on PWRON1 for 4 sec, MC34708 will be on automatically while 5V attached on USBIN or AUXIN.
Said that, please take a look at figure 20 on page 88 and table 87 on page 89 of the datasheet (http://cache.freescale.com/files/analog/doc/data_sheet/MC34708.pdf)...
Working on USBOTG, MOTG and M1 would be closed causing that VBUS (5V from the USB port of the host) supplies VINUSB (and USB regulator) internally.
So, it will never reset using PWRON1 (pressed for 4sec) in this mode since it will always be supplied from an external source (USB port from host).
Regards,
Jose
Jose, thanks for answering.
We figured this was the reason, but are looking for a workaround. Is there any way we can set up the MC34708 so that the power button 4 sec function still works, even with the USB OTG cable inserted?
From a user perspective not being able to turn off or reset the device while a USB cable is inserted doesn't make any sense of course...
reyes, could you please check?