wireband-edge 0.2.0

Lightweight Wire.Band client for IoT gateway hardware — Raspberry Pi, NVIDIA Jetson, industrial PCs
Documentation
//! Theta symbol constants for IoT semantic classification.
//!
//! Plain `u16` constants — no external dependencies.
//! Source of truth: emergent-symbols (private). Inlined here for zero-dep edge installs.

// ---------------------------------------------------------------------------
// Hardware Sensor (0xFC60–0xFC6F)
// ---------------------------------------------------------------------------
pub const SENSOR_TEMP:       u16 = 0xFC60; // S~t  Temperature reading
pub const SENSOR_VOLTAGE:    u16 = 0xFC61; // S~v  Voltage reading
pub const SENSOR_CURRENT:    u16 = 0xFC62; // S~a  Current (amps)
pub const SENSOR_FAN:        u16 = 0xFC63; // S~f  Fan speed
pub const SENSOR_PRESSURE:   u16 = 0xFC64; // S~p  Pressure
pub const SENSOR_HUMIDITY:   u16 = 0xFC65; // S~h  Humidity
pub const SENSOR_POWER_DRAW: u16 = 0xFC66; // S~w  Power draw (watts)
pub const SENSOR_VIBRATION:  u16 = 0xFC67; // S~x  Vibration
pub const SENSOR_NOISE:      u16 = 0xFC68; // S~n  Noise level (dB)
pub const SENSOR_ALTITUDE:   u16 = 0xFC69; // S~z  Altitude
pub const SENSOR_POLL:       u16 = 0xFC6A; // S?   Generic sensor read / poll
pub const SENSOR_SUBSCRIBE:  u16 = 0xFC6B; // S*   Subscribe to sensor stream
pub const SENSOR_THRESHOLD:  u16 = 0xFC6C; // S|   Threshold configuration
pub const SENSOR_ALERT:      u16 = 0xFC6D; // S!   Threshold alert triggered
pub const SENSOR_CALIBRATE:  u16 = 0xFC6E; // S=   Calibration event
pub const SENSOR_HISTORY:    u16 = 0xFC6F; // S[]  Historical data query

// ---------------------------------------------------------------------------
// Hardware GPIO (0xFC80–0xFC8F)
// ---------------------------------------------------------------------------
pub const GPIO_READ:         u16 = 0xFC80; // IO?  Read digital pin
pub const GPIO_WRITE:        u16 = 0xFC81; // IO=  Write digital pin
pub const GPIO_HIGH:         u16 = 0xFC82; // IO^  Set pin high
pub const GPIO_LOW:          u16 = 0xFC83; // IOv  Set pin low
pub const GPIO_TOGGLE:       u16 = 0xFC84; // IO~  Toggle pin
pub const GPIO_PULL_UP:      u16 = 0xFC85; // IO+  Enable pull-up
pub const GPIO_PULL_DOWN:    u16 = 0xFC86; // IO-  Enable pull-down
pub const GPIO_FLOATING:     u16 = 0xFC87; // IO|  Set floating
pub const GPIO_IRQ_RISE:     u16 = 0xFC88; // IO↑! Rising edge interrupt
pub const GPIO_IRQ_FALL:     u16 = 0xFC89; // IO↓! Falling edge interrupt
pub const GPIO_IRQ_BOTH:     u16 = 0xFC8A; // IO↕! Both-edge interrupt
pub const GPIO_PWM_SET:      u16 = 0xFC8B; // IO%  Set PWM duty cycle
pub const GPIO_PWM_FREQ:     u16 = 0xFC8C; // IO#  Set PWM frequency
pub const GPIO_ANALOG_READ:  u16 = 0xFC8D; // IOA? Analog read (ADC)
pub const GPIO_ANALOG_WRITE: u16 = 0xFC8E; // IOA= Analog write (DAC)
pub const GPIO_RES:          u16 = 0xFC8F; // IO?? Reserved

// ---------------------------------------------------------------------------
// Hardware Actuator (0xFC90–0xFC9F)
// ---------------------------------------------------------------------------
pub const ACTUATOR_MOTOR_START:   u16 = 0xFC90; // M▶  Start motor
pub const ACTUATOR_MOTOR_STOP:    u16 = 0xFC91; // M⏹  Stop motor
pub const ACTUATOR_MOTOR_SPEED:   u16 = 0xFC92; // M#  Set motor speed
pub const ACTUATOR_MOTOR_DIR:     u16 = 0xFC93; // M↔  Set motor direction
pub const ACTUATOR_SERVO_SET:     u16 = 0xFC94; // SV= Set servo position
pub const ACTUATOR_SERVO_HOME:    u16 = 0xFC95; // SV0 Servo home position
pub const ACTUATOR_RELAY_ON:      u16 = 0xFC96; // RL^ Relay on
pub const ACTUATOR_RELAY_OFF:     u16 = 0xFC97; // RLv Relay off
pub const ACTUATOR_RELAY_TOGGLE:  u16 = 0xFC98; // RL~ Relay toggle
pub const ACTUATOR_SOLENOID_OPEN: u16 = 0xFC99; // SL^ Solenoid open
pub const ACTUATOR_SOLENOID_CLOSE:u16 = 0xFC9A; // SLv Solenoid close
pub const ACTUATOR_STEPPER_STEP:  u16 = 0xFC9B; // ST→ Stepper step
pub const ACTUATOR_STEPPER_HOME:  u16 = 0xFC9C; // ST0 Stepper home
pub const ACTUATOR_BUZZER_ON:     u16 = 0xFC9D; // BZ^ Buzzer on
pub const ACTUATOR_LED_SET:       u16 = 0xFC9E; // LD= LED set
pub const ACTUATOR_RES:           u16 = 0xFC9F; // A?? Reserved

// ---------------------------------------------------------------------------
// IoT Protocol (0xFCA0–0xFCAF)
// ---------------------------------------------------------------------------
pub const PROTO_MQTT_PUB:    u16 = 0xFCA0; // MQ↑  MQTT publish
pub const PROTO_MQTT_SUB:    u16 = 0xFCA1; // MQ*  MQTT subscribe
pub const PROTO_MQTT_CONN:   u16 = 0xFCA2; // MQ→  MQTT connect
pub const PROTO_MQTT_DISC:   u16 = 0xFCA3; // MQ←  MQTT disconnect
pub const PROTO_COAP_GET:    u16 = 0xFCA4; // CP?  CoAP GET
pub const PROTO_COAP_PUT:    u16 = 0xFCA5; // CP=  CoAP PUT
pub const PROTO_COAP_POST:   u16 = 0xFCA6; // CP+  CoAP POST
pub const PROTO_COAP_OBS:    u16 = 0xFCA7; // CP*  CoAP observe
pub const PROTO_ZIGBEE_JOIN: u16 = 0xFCA8; // ZB+  Zigbee join
pub const PROTO_ZIGBEE_SEND: u16 = 0xFCA9; // ZB↑  Zigbee send
pub const PROTO_LORA_TX:     u16 = 0xFCAA; // LR↑  LoRa transmit
pub const PROTO_LORA_RX:     u16 = 0xFCAB; // LR↓  LoRa receive
pub const PROTO_BLE_ADV:     u16 = 0xFCAC; // BT*  BLE advertise
pub const PROTO_BLE_CONN:    u16 = 0xFCAD; // BT→  BLE connect
pub const PROTO_MATTER_CMD:  u16 = 0xFCAE; // MT→  Matter command
pub const PROTO_RES:         u16 = 0xFCAF; // P??  Reserved

// ---------------------------------------------------------------------------
// Edge Lifecycle (0xFCB0–0xFCBF)
// ---------------------------------------------------------------------------
pub const EDGE_OTA_START:    u16 = 0xFCB0; // OTA▶ OTA update start
pub const EDGE_OTA_CHUNK:    u16 = 0xFCB1; // OTA+ OTA chunk transfer
pub const EDGE_OTA_VERIFY:   u16 = 0xFCB2; // OTA= OTA verify
pub const EDGE_OTA_APPLY:    u16 = 0xFCB3; // OTA✓ OTA apply
pub const EDGE_WDT_KICK:     u16 = 0xFCB4; // WD♥  Watchdog kick
pub const EDGE_WDT_EXPIRE:   u16 = 0xFCB5; // WD✗  Watchdog expired
pub const EDGE_SLEEP:        u16 = 0xFCB6; // Zz   Enter sleep
pub const EDGE_WAKE:         u16 = 0xFCB7; // Z!   Wake from sleep
pub const EDGE_DEEP_SLEEP:   u16 = 0xFCB8; // ZZz  Deep sleep
pub const EDGE_PROVISION:    u16 = 0xFCB9; // ID+  Provision device
pub const EDGE_DEPROVISION:  u16 = 0xFCBA; // ID-  Deprovision device
pub const EDGE_TWIN_SYNC:    u16 = 0xFCBB; // DT=  Digital twin sync
pub const EDGE_TWIN_DELTA:   u16 = 0xFCBC; // DT∆  Digital twin delta
pub const EDGE_INFER:        u16 = 0xFCBD; // EI▶  Edge inference
pub const EDGE_RESET:        u16 = 0xFCBE; // HW0  Hardware reset
pub const EDGE_RES:          u16 = 0xFCBF; // E??  Reserved

// ---------------------------------------------------------------------------
// Geographic / GPS (0xFA00–0xFA7F)
// ---------------------------------------------------------------------------
pub const GEO_FIX:         u16 = 0xFA00; // GPS fix acquired
pub const GEO_MOVE:        u16 = 0xFA10; // Movement event
pub const GEO_FENCE_ENTER: u16 = 0xFA20; // Geofence enter
pub const GEO_FENCE_EXIT:  u16 = 0xFA21; // Geofence exit
pub const GEO_PROXIMITY:   u16 = 0xFA70; // Proximity event

// ---------------------------------------------------------------------------
// Metrics (0xF200–0xF2FF)
// ---------------------------------------------------------------------------
pub const METRICS_COUNTER_INC:   u16 = 0xF200; // Counter increment
pub const METRICS_GAUGE_SET:     u16 = 0xF210; // Gauge set
pub const METRICS_GAUGE_CURRENT: u16 = 0xF216; // Gauge current value
pub const METRICS_EVENT_EMIT:    u16 = 0xF230; // Event emit

// ---------------------------------------------------------------------------
// Fallback
// ---------------------------------------------------------------------------
pub const GENERIC_POLL: u16 = SENSOR_POLL;