Ersa Wearable Platform
Embedded smartwatch firmware and application framework
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions
ersa::hal Namespace Reference

Classes

struct  CompanionCapabilities
 
class  Esp32AppleClient
 
class  Esp32Bluetooth
 
class  Esp32PowerManagement
 
class  IBattery
 
class  IBluetooth
 
class  ICompanionSource
 
class  IConsole
 
class  IDisplay
 
class  IDnsServer
 
class  IHttpClient
 
class  IHttpServer
 
class  IInput
 
class  INtpTimeSource
 
class  IPlatformDiagnostics
 
class  IPowerManagement
 
class  IRtc
 
class  IWifiRadio
 
class  PerformanceScope
 
struct  RtcDiagnostics
 
struct  TimePoint
 

Typedefs

using BleConnectionCallback = void(*)(bool connected, void *userData)
 
using CompanionCallCallback = void(*)(CompanionCallAction, const char *, const char *, void *)
 
using CompanionMediaCallback = void(*)(bool, const char *, const char *, void *)
 
using CompanionTimeCallback = void(*)(uint32_t, void *)
 
using CompanionAvailabilityCallback = void(*)(bool, void *)
 
using CompanionNotificationCallback = void(*)(const char *, const char *, const char *, uint32_t, bool, void *)
 
using DisplayBusyCallback = void(*)(void *userData)
 
using HttpHandler = void(*)(void *context)
 

Enumerations

enum class  CompanionCallAction : uint8_t { Incoming = 0 , Answered , Rejected , Ended }
 
enum class  CompanionMediaAction : uint8_t {
  Play = 0 , Pause , Toggle , Next ,
  Previous , VolumeUp , VolumeDown
}
 
enum class  Color : uint8_t { Black = 0 , White = 1 , Inverse = 2 }
 
enum class  FontFace : uint8_t {
  Default , MiSansRegular8 , MiSansBold8 , MiSansRegular10 ,
  MiSansBold10 , MiSansBold17 , MiSansLight17
}
 
enum class  HttpMethod : uint8_t { Get , Post , Any }
 
enum class  PerformanceProfile : uint8_t { Interactive , DisplayRefresh , Compute }
 
enum class  WifiState {
  Off , Disconnected , Connecting , Connected ,
  AccessPoint
}
 

Functions

void installEsp32Storage ()
 

Typedef Documentation

◆ BleConnectionCallback

using ersa::hal::BleConnectionCallback = typedef void (*)(bool connected, void* userData)

Notification that the BLE link state changed; callback context is caller-owned.

◆ CompanionAvailabilityCallback

using ersa::hal::CompanionAvailabilityCallback = typedef void (*)(bool, void*)

◆ CompanionCallCallback

using ersa::hal::CompanionCallCallback = typedef void (*)(CompanionCallAction, const char*, const char*, void*)

Provider callback function types. String pointers are borrowed only for callback duration and must be copied by consumers. Providers may invoke callbacks on a radio/worker thread, so consumers should enqueue work rather than mutate UI state directly.

◆ CompanionMediaCallback

using ersa::hal::CompanionMediaCallback = typedef void (*)(bool, const char*, const char*, void*)

◆ CompanionNotificationCallback

using ersa::hal::CompanionNotificationCallback = typedef void (*)(const char*, const char*, const char*, uint32_t, bool, void*)

◆ CompanionTimeCallback

using ersa::hal::CompanionTimeCallback = typedef void (*)(uint32_t, void*)

◆ DisplayBusyCallback

using ersa::hal::DisplayBusyCallback = typedef void (*)(void* userData)

◆ HttpHandler

using ersa::hal::HttpHandler = typedef void (*)(void* context)

Enumeration Type Documentation

◆ Color

enum class ersa::hal::Color : uint8_t
strong
Enumerator
Black 
White 
Inverse 

◆ CompanionCallAction

enum class ersa::hal::CompanionCallAction : uint8_t
strong

Companion providers report normalized call actions independent of transport. A provider may be ANCS over BLE, an Android protocol, MPRIS, or a host fake.

Enumerator
Incoming 
Answered 
Rejected 
Ended 

◆ CompanionMediaAction

enum class ersa::hal::CompanionMediaAction : uint8_t
strong

Transport-neutral controls requested for companion media playback.

Enumerator
Play 
Pause 
Toggle 
Next 
Previous 
VolumeUp 
VolumeDown 

◆ FontFace

enum class ersa::hal::FontFace : uint8_t
strong
Enumerator
Default 
MiSansRegular8 
MiSansBold8 
MiSansRegular10 
MiSansBold10 
MiSansBold17 
MiSansLight17 

◆ HttpMethod

enum class ersa::hal::HttpMethod : uint8_t
strong
Enumerator
Get 
Post 
Any 

◆ PerformanceProfile

enum class ersa::hal::PerformanceProfile : uint8_t
strong

Workload class used to acquire temporary performance guarantees.

Enumerator
Interactive 

Keep input and short event handling responsive while callbacks run.

DisplayRefresh 

Hold the platform's display-safe frequency through drawing and refresh.

Compute 

Hold the platform's maximum CPU frequency for compute-heavy work.

◆ WifiState

enum class ersa::hal::WifiState
strong

Radio state shared by station and access-point lifecycle code.

Enumerator
Off 
Disconnected 
Connecting 
Connected 
AccessPoint 

Function Documentation

◆ installEsp32Storage()

void ersa::hal::installEsp32Storage ( )

Install the ESP32 NVS implementation of the generic storage contract.