cardem: use USART timeout for waiting time

the reset/ATR handling has been heavily updated/fixed.
instead of using the timer counter peripheral to handle
the waiting time and corresponding timeout, the USART peripheral
internal timeout mechanism is used.
this is particularly important for the SIMtrace board since the
clock signal is not connected to the timer counter.
thus this change adds card emulation support for SIMtrace boards.

Fi and Di have been properly rename to F and D since the "i"
stands only for an "indicated" value, not the actual value.
this does not change the USB protocol (the variable have just been
renamed).
additional variables store more information about the card
capabilities

NOTE: it has only be tested for the SIMtrace board

Change-Id: Ibcb2c8cace9137695adf5fb3de43566f7cfb93b5
14 files changed
tree: 6579c71f337a9367bd701767f845a2bb63595dc6
  1. contrib/
  2. debian/
  3. firmware/
  4. hardware/
  5. host/
  6. .gitignore
  7. .gitmodules
  8. clk_calc.py
  9. git-version-gen
  10. Makefile
  11. README.md
README.md

SIMtrace v2.0

This is the repository for the next-generation SIMtrace devices, providing abilities to trace the communication between (U)SIM card and phone, remote (U)SIM card forward, (U)SIM man-in-the-middle, and more.

This is under heavy development, and right now it is not surprising if things still break on a daily basis.

NOTE: Nothing in this repository applies to the SIMtrace v1.x hardware or its associated firmware. SIMtrace v1.x is based on a different CPU / microcontroller architecture and uses a completely different software stack and host software.

Supported Hardware

At this point, the primary development target is still the OWHW + sysmoQMOD device, but we expect to add support for a SAM3 based SIMtrace hardware board soon.

The goal is to support the following devices:

  • Osmocom SIMtrace 1.x with SAM3 controller ** this is open hardware and schematics / PCB design is published
  • sysmocom sysmoQMOD (with 4 Modems, 4 SIM slots and 2 SAM3) ** this is a proprietary device, publicly available from sysmocom
  • sysmocom OWHW (with 2 Modems and 1 SAM3 onboard) ** this is not publicly available hardware, but still supported

This Repository

This repository contains several directory

  • firmware - the firmware to run on the actual devices
  • hardware - some information related to the hardware
  • host - Programs to use on the USB host to interface with the hardware