Skip to main content

Sessions & collaboration

When you open a live connection to a DUT through MIMICK, you're working in a session. Sessions are how MIMICK tracks who's using a piece of hardware, keeps a record of what happened, and lets a whole team work on the same device together.

What a session is

A session is an interactive connection to one of a DUT's interfaces, for example a serial console opened with:

mimick connect --peripheral /dev/ttyUSB0/tty0

Sessions belong to your organization. You can give a session a name and tag it with the DUT it involves, which makes it easy to find later.

Recording and history

MIMICK keeps a record of session activity: the data exchanged with the hardware, along with timestamps. Two things follow from this:

  • History for late joiners. When you attach to a session that's already in progress, MIMICK replays the most recent output first, so you have context before live data starts.
  • A durable record. Session activity can be logged so you can review what happened after the fact.

Working together

Several engineers can attach to the same hardware at the same time. For interactive consoles, MIMICK broadcasts the device's output to everyone connected and serializes everyone's input back to the device, so you're all looking at the same terminal. It also negotiates the terminal size down to the smallest connected window, so nobody sees output wrap off-screen.

This makes shared bring-up and debugging natural: one person can drive while others watch, and hand-off is just a question of who types next.