Skip to content
rokathPublic

About

🟢 Super-fast, tiny C/C++ tracing with printf look-and-feel, even in interrupts ⚡, plus real-time PC logging 💻

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1.0k stars

Watchers

11 watching

Forks

Latest commit

 

History

5,241 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trice — Trace IDs for Embedded C

License Latest release Downloads Target library CI

Hi, I am Trice.0

Trice project mascot

Log and trace in as few as 6 CPU clocks per call.1
Printf-like calls.2 Compact records.3 Even from interrupt handlers.4
Compiler-independent.5 ID-free user code.6 Aliases for legacy code.7

Explore Trice in the Guide

See the moments that matter: a fleeting interrupt, a changing sensor value, or the response to a command.8 Trice brings them into view while your firmware runs. Read events as text,9 work with structured values,10 or watch measurements come alive in a plot.11

The Guide helps you choose your first experiment, discover the features, and find the details for your own project. Start on your PC, then explore what Trice can do on your hardware.

Small demo animation

Colored Trice output with source locations and timestamps


If Trice helps your work, support the project.


Footnotes:

  1. The name combines TRace IDs, C and Embedded systems.
  2. Record creation in an optimized configuration; transmission is handled separately. See the measurement and configuration.
  3. Printf-like syntax and supported formats.
  4. Compact binary records and transfer size.
  5. Trice calls can be used directly inside interrupt handlers. The example output shows interrupt-originated ISR: messages mixed with events from normal application code.
  6. Target-code portability and modularity.
  7. Bind keeps numeric IDs out of user log calls; see its supported constructs and compiler requirements.
  8. Aliases for existing logging and assert macros.
  9. Asynchronous Broadcast Commands and responses.
  10. Text output and event boundaries.
  11. Structured Logging with named values.
  12. Live visualization with the LabPlot demo.

About

🟢 Super-fast, tiny C/C++ tracing with printf look-and-feel, even in interrupts ⚡, plus real-time PC logging 💻

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1.0k stars

Watchers

11 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages