HardFOC Vortex V1 HAL
Unified HAL API for the HardFOC Vortex motor-control platform (ESP32-C6, TMC9660)
Loading...
Searching...
No Matches
Classes | Enumerations | Functions
TemperatureManager.h File Reference

Temperature sensor management for the HardFOC Vortex V1 platform. More...

#include <array>
#include <atomic>
#include <cstdint>
#include <optional>
#include <string_view>
#include "base/BaseTemperature.h"
#include "handlers/ntc/NtcTemperatureHandler.h"
#include "RtosMutex.h"
Include dependency graph for TemperatureManager.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Tmc9660TemperatureWrapper
 Adapter wrapping Tmc9660Handler's internal temperature into BaseTemperature. More...
 
struct  TempEntry
 A single temperature sensor entry in the fixed-size registry. More...
 
struct  TempSystemDiagnostics
 System-level temperature diagnostics (compatible with old API). More...
 
class  TemperatureManager
 Singleton manager for all temperature sensors on Vortex V1. More...
 

Enumerations

enum class  VortexTempSensorType : uint8_t { ESP32_INTERNAL = 0 , NTC_THERMISTOR = 1 , TMC9660_CHIP = 2 , SENSOR_COUNT }
 Identifies the physical temperature sensor type on the Vortex board. More...
 

Functions

constexpr const char * VortexTempSensorTypeToString (VortexTempSensorType t) noexcept
 Convert VortexTempSensorType to a human-readable string.
 
TemperatureManager & GetTemperatureManager () noexcept
 Convenience accessor — equivalent to TemperatureManager::GetInstance().
 

Detailed Description

Temperature sensor management for the HardFOC Vortex V1 platform.

The Vortex board has three temperature sources:

  1. ESP32 internal temperature sensor (on-chip)
  2. NTC thermistor via TMC9660 AIN3 ADC channel
  3. TMC9660 internal chip temperature sensor

Fixed-size array of TempEntry structs, no heap vectors or maps. Sensor handlers live in place (std::optional); the die sensor in the board binding.

Version
2.0

Enumeration Type Documentation

◆ VortexTempSensorType

enum class VortexTempSensorType : uint8_t
strong

Identifies the physical temperature sensor type on the Vortex board.

Enumerator
ESP32_INTERNAL 

ESP32 on-chip temperature sensor.

NTC_THERMISTOR 

External NTC thermistor via TMC9660 AIN3.

TMC9660_CHIP 

TMC9660 internal chip temperature.

SENSOR_COUNT 

Number of sensor types (not a valid sensor)

Function Documentation

◆ GetTemperatureManager()

TemperatureManager & GetTemperatureManager ( )
inlinenoexcept

Convenience accessor — equivalent to TemperatureManager::GetInstance().

Returns
Reference to the singleton TemperatureManager.
Here is the call graph for this function:

◆ VortexTempSensorTypeToString()

constexpr const char * VortexTempSensorTypeToString ( VortexTempSensorType  t)
constexprnoexcept

Convert VortexTempSensorType to a human-readable string.

Parameters
tSensor type to convert.
Returns
Null-terminated string representation.
Here is the caller graph for this function: