HF-TMC9660 Driver 0.1.0-dev
Hardware Agnostic C++ Driver for the TMC9660
Loading...
Searching...
No Matches
telemetry_comprehensive_test.cpp File Reference

Comprehensive Telemetry monitoring test suite for ESP32-C6 DevKit-M-1 (noexcept) More...

#include "../../../inc/tmc9660.hpp"
#include "esp32_tmc9660_bus.hpp"
#include "TestFramework.h"
#include <memory>
#include <vector>
#include <algorithm>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
Include dependency graph for telemetry_comprehensive_test.cpp:

Classes

struct  TestDriverHandle
 

Functions

bool test_telemetry_basic_monitoring () noexcept
 
bool test_telemetry_temperature_monitoring () noexcept
 
bool test_telemetry_current_monitoring () noexcept
 
bool test_telemetry_voltage_monitoring () noexcept
 
bool test_telemetry_position_monitoring () noexcept
 
bool test_telemetry_velocity_monitoring () noexcept
 
bool test_telemetry_status_monitoring () noexcept
 
bool test_telemetry_performance_benchmarks () noexcept
 
bool test_telemetry_error_handling () noexcept
 
bool test_telemetry_multi_device () noexcept
 
std::unique_ptr< TestDriverHandlecreate_test_driver (bool use_uart=false, bool use_flash=false) noexcept
 
template<typename T >
Tget_driver (TestDriverHandle &handle)
 
TMC9660< Esp32Tmc9660SpiBus > * get_spi_driver (TestDriverHandle &handle)
 
TMC9660< Esp32Tmc9660UartBus > * get_uart_driver (TestDriverHandle &handle)
 
void log_telemetry_data (TMC9660< Esp32Tmc9660SpiBus > &driver, const char *context) noexcept
 
void log_telemetry_data (TMC9660< Esp32Tmc9660UartBus > &driver, const char *context) noexcept
 
bool verify_telemetry_ranges (TMC9660< Esp32Tmc9660SpiBus > &driver) noexcept
 
bool verify_telemetry_ranges (TMC9660< Esp32Tmc9660UartBus > &driver) noexcept
 
void app_main (void)
 

Variables

static const charTAG = "Telemetry_Test"
 
static TestResults g_test_results
 
static constexpr bool ENABLE_CORE_TESTS = true
 
static constexpr bool ENABLE_TEMPERATURE_TESTS = true
 
static constexpr bool ENABLE_CURRENT_TESTS = true
 
static constexpr bool ENABLE_VOLTAGE_TESTS = true
 
static constexpr bool ENABLE_POSITION_TESTS = true
 
static constexpr bool ENABLE_VELOCITY_TESTS = true
 
static constexpr bool ENABLE_STATUS_TESTS = true
 
static constexpr bool ENABLE_PERFORMANCE_TESTS = true
 
static constexpr bool ENABLE_STRESS_TESTS = true
 

Detailed Description

Comprehensive Telemetry monitoring test suite for ESP32-C6 DevKit-M-1 (noexcept)

This file contains comprehensive testing for TMC9660 telemetry features including:

  • Temperature monitoring and thermal protection
  • Current monitoring and overcurrent protection
  • Voltage monitoring and undervoltage protection
  • Motor position and velocity feedback
  • System status and error reporting
  • Real-time data logging and analysis
  • Performance metrics and benchmarking
  • Multi-device telemetry monitoring
  • Edge cases and fault injection
Author
Nebiyu Tadesse
Date
2025

Function Documentation

◆ app_main()

void app_main ( void )
Here is the call graph for this function:

◆ create_test_driver()

std::unique_ptr< TestDriverHandle > create_test_driver ( bool use_uart = false,
bool use_flash = false )
noexcept
Here is the call graph for this function:

◆ get_driver()

template<typename T >
T * get_driver ( TestDriverHandle & handle)

◆ get_spi_driver()

TMC9660< Esp32Tmc9660SpiBus > * get_spi_driver ( TestDriverHandle & handle)
inline
Here is the caller graph for this function:

◆ get_uart_driver()

TMC9660< Esp32Tmc9660UartBus > * get_uart_driver ( TestDriverHandle & handle)
inline
Here is the caller graph for this function:

◆ log_telemetry_data() [1/2]

void log_telemetry_data ( TMC9660< Esp32Tmc9660SpiBus > & driver,
const char * context )
noexcept
Here is the caller graph for this function:

◆ log_telemetry_data() [2/2]

void log_telemetry_data ( TMC9660< Esp32Tmc9660UartBus > & driver,
const char * context )
noexcept

◆ test_telemetry_basic_monitoring()

bool test_telemetry_basic_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_current_monitoring()

bool test_telemetry_current_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_error_handling()

bool test_telemetry_error_handling ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_multi_device()

bool test_telemetry_multi_device ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_performance_benchmarks()

bool test_telemetry_performance_benchmarks ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_position_monitoring()

bool test_telemetry_position_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_status_monitoring()

bool test_telemetry_status_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_temperature_monitoring()

bool test_telemetry_temperature_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_velocity_monitoring()

bool test_telemetry_velocity_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_telemetry_voltage_monitoring()

bool test_telemetry_voltage_monitoring ( )
noexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ verify_telemetry_ranges() [1/2]

bool verify_telemetry_ranges ( TMC9660< Esp32Tmc9660SpiBus > & driver)
noexcept
Here is the caller graph for this function:

◆ verify_telemetry_ranges() [2/2]

bool verify_telemetry_ranges ( TMC9660< Esp32Tmc9660UartBus > & driver)
noexcept

Variable Documentation

◆ ENABLE_CORE_TESTS

constexpr bool ENABLE_CORE_TESTS = true
staticconstexpr

◆ ENABLE_CURRENT_TESTS

constexpr bool ENABLE_CURRENT_TESTS = true
staticconstexpr

◆ ENABLE_PERFORMANCE_TESTS

constexpr bool ENABLE_PERFORMANCE_TESTS = true
staticconstexpr

◆ ENABLE_POSITION_TESTS

constexpr bool ENABLE_POSITION_TESTS = true
staticconstexpr

◆ ENABLE_STATUS_TESTS

constexpr bool ENABLE_STATUS_TESTS = true
staticconstexpr

◆ ENABLE_STRESS_TESTS

constexpr bool ENABLE_STRESS_TESTS = true
staticconstexpr

◆ ENABLE_TEMPERATURE_TESTS

constexpr bool ENABLE_TEMPERATURE_TESTS = true
staticconstexpr

◆ ENABLE_VELOCITY_TESTS

constexpr bool ENABLE_VELOCITY_TESTS = true
staticconstexpr

◆ ENABLE_VOLTAGE_TESTS

constexpr bool ENABLE_VOLTAGE_TESTS = true
staticconstexpr

◆ g_test_results

TestResults g_test_results
static

◆ TAG

const char* TAG = "Telemetry_Test"
static