I did some more work.
The FPF2005 has no reverse voltage blocker, this is why the 3.3V from the LDO
flows back into VCC_PHONE. It even damages the chip (so says the datasheet)
I corrected the double power source problem by disabling the LDO (see patch),
but still 1.8V does not work and 3.0-3.3V is used. I have to look for other
reasons.
Also SIMtrace has some issues with 5V signals. Rare are the SIM which only
support class A (5V), but the readers often use it (at least 2 of mine).
Sometime SIMtrace manages to sniff, but it is not reliable.
I will also add class A support in SIMtrace v2.
more details are coming in the next days,
kevin
Excerpts from Kevin Redon's message of Wed Nov 09 21:01:35 +0100 2011:
Hi,
I found out why class C (+1.8V) capable UICC are still used as class B (+3.3V).
This is because the board provides +3.0V on VCC_PHONE, forcing the phone
to use class B. this voltage is coming from VCC_SIM.
Normally VCC_SIM should only get the power from VCC_PHONE (in sniffing mode),
through the power switch FPF2005, or from the LDO AP3332 (in card reader).
Currently both are enabled (bug). This should be prevented in software as there
is no hardware mechanism to prevent that (fail).
Some power from the LDO is going backwards though the power switch, providing
+3.0V on VCC_PHONE (another hardware fail).
Also, SIMtrace will not be able to decode +1.8V traffic because Vih
(voltage input high level) is at +2.3V.
One solution would be to power VDDIO at 1.8V, but this is a bad solution
as the USB will not work anymore.
For the v2 board I intend to have the following:
- 1 translator/level shifter for SIM<->CPU, with selectable 1.8/3.3
- 1 translator/level shifter for PHONE<->CPU, with selectable auto/1.8/3.3
- VCC_SIM can be set to VCC_PHONE,1.8V,3.3V
- power forward with diode behaviour
any correction, comments or recommendation are welcome,
kevin