Hi all,
I have meanwhile solved the first half of the bug that was causing a lot of problems during the CCC Camp 2011.
In git commit fa7297b93f4187bce9439bb676874815f66d8f21 to openpcd.git, I have made the following changes: * make sure SIMtrace remains completely passive even in case of (alleged) parity errors * prevent an IRQ storm by properly clearing error flags in the USART, which have lead to a watchdog triggered reset which in turn caused a USB disconnect
So right now, you should not see the "No SIM card" or "SIM card error" in the display of your phone, no matter what phone / simcard is used.
However, the data logged by SIMtrace still is incorrect in those cases. I hope to release a fix for that soon.
The updated 'main_simtrace.bin' firmware is attached to this mail. You can install it by using
"dfu-util -d 16c0:0762 -a0 -D ./main_simtrace.bin -R" which should produce something like:
======= dfu-util - (C) 2005-2008 by Weston Schmidt, Harald Welte and OpenMoko Inc. This program is Free Software and has ABSOLUTELY NO WARRANTY
dfu-util does currently only support DFU version 1.0
Opening USB Device 0x16c0:0x0762... Claiming USB DFU Runtime Interface... Determining device status: state = appIDLE, status = 0 Device really in Runtime Mode, send DFU detach request... Resetting USB... Opening USB Device... Found Runtime: [0x16c0:0x0762] devnum=41, cfg=0, intf=0, alt=0, name="SimTrace DFU Interface - Application Partition" Claiming USB DFU Interface... Setting Alternate Setting #0 ... Determining device status: state = dfuIDLE, status = 0 dfuIDLE, continuing Device returned transfer size 256 bytes_per_hash=415 Copying data from PC to DFU device Starting download: [##################################################] finished! state(7) = dfuMANIFEST, status(0) = No error condition is present state(2) = dfuIDLE, status(0) = No error condition is present Done! can't detach: error sending control message: Broken pipe Resetting USB to switch back to runtime mode ========
After that, the new firmware has been programmed into your SIMtrace and you can immediately use it again (no reset/re-plug/... needed)
Regards, Harald
Hi all,
On Mon, Aug 15, 2011 at 11:06:40PM +0200, Harald Welte wrote:
However, the data logged by SIMtrace still is incorrect in those cases. I hope to release a fix for that soon.
some more investigation results in the following observation: Some ATR seem to be without the final TCK (checksum) byte. So far I thought, that the TCK is always present.
As it seems, ISO 7816-3 indicates that TCK is _not_ present if a card only supports the T=0 protocol.
So SIMtrace was working for all cards that e.g. support T=0 and T=1, but failed for those that only do T=0 like our 16in1 SIM cards used on 27C3 and the CCC Camp 2011.
I've again attached an updated firmware image. Please follow the dfu-util instructions from my last message to install it in your SIMtrace device.
I'd appreciate if this new firmware solves the commonly-observed bug resulting in USB disconnect and the "No SIM card" error observed in some phones.
Regards, Harald
On 08/16/2011 10:26 AM, Harald Welte wrote:
Hi all,
[snip]
I'd appreciate if this new firmware solves the commonly-observed bug resulting in USB disconnect and the "No SIM card" error observed in some phones.
Both phones I have here are now running without any crashes. Swedish 3G-operator Tre in an HTC and a SE W810i with CCC-sim (the last one complains about no network coverage, well well ;) )
No analysis yet.
Good work, Harald.
/Stefan