Skip to content

Latest commit

 

History

History
129 lines (94 loc) · 5.08 KB

File metadata and controls

129 lines (94 loc) · 5.08 KB

Telemetry 2.0 Documentation

Welcome to the Telemetry 2.0 framework documentation.

Quick Links

What is Telemetry 2.0?

Telemetry 2.0 is a lightweight, efficient telemetry framework designed for embedded devices in the RDK (Reference Design Kit) ecosystem. It provides real-time monitoring, event collection, and reporting capabilities for resource-constrained devices such as set-top boxes, gateways, and IoT devices.

Key Features

  • Lightweight: Optimized for devices with <128MB RAM
  • Flexible: Profile-based configuration via JSON or XConf
  • Efficient: Connection pooling and batch reporting
  • Secure: mTLS support for encrypted communication
  • Platform-Independent: Supports multiple architectures and platforms

Documentation Structure

docs/
├── architecture/          # System architecture and design
│   ├── overview.md       # High-level system architecture
│   ├── components.md     # Component relationships  
│   ├── threading-model.md # Threading and synchronization
│   └── data-flow.md      # Data flow and state machines
├── api/                  # API documentation
│   ├── public-api.md    # Public API reference
│   ├── internal-api.md  # Internal API reference
│   └── error-codes.md   # Error codes and meanings
├── integration/          # Integration and setup guides
│   ├── developer-guide.md # Getting started guide
│   ├── build-setup.md    # Build configuration
│   ├── platform-porting.md # Porting to new platforms
│   └── testing.md        # Testing procedures
└── troubleshooting/      # Debug and troubleshooting
    ├── memory-issues.md  # Memory debugging
    ├── threading-issues.md # Thread debugging
    └── common-errors.md  # Common error solutions

Component Documentation

Detailed technical documentation for individual components is located in source/docs/ following the source code structure:

Getting Started

For Developers

  1. Read the Architecture Overview to understand the system design
  2. Follow the Developer Guide to set up your environment
  3. Review the API Reference for available functions
  4. Check Testing Guide for test procedures

For Platform Vendors

  1. Review Platform Porting Guide for integration requirements
  2. Check Build Setup for compilation options
  3. Review Threading Model for resource planning

For Maintainers

  1. Review Component Documentation for implementation details
  2. Check Troubleshooting Guides for common issues
  3. Refer to Internal API for module interfaces

Project Resources

Documentation Conventions

Code Formatting

  • Functions: function_name()
  • Types: type_name_t
  • Constants: CONSTANT_NAME
  • Files: filename.c

Platform Tags

  • [Linux] - Linux-specific information
  • [RDKB] - RDK-B specific information
  • [Embedded] - General embedded platform info

Importance Indicators

  • ⚠️ Warning - Important information that could cause issues if ignored
  • 💡 Tip - Helpful suggestion or best practice
  • 📝 Note - Additional context or clarification
  • Deprecated - Feature or API scheduled for removal

Contributing to Documentation

Documentation improvements are welcome! When contributing:

  1. Follow the Documentation Style Guide
  2. Test all code examples
  3. Use Mermaid for diagrams
  4. Add cross-references to related docs
  5. Update the table of contents

Need Help?


Last Updated: March 2026
Version: 2.0