Skip to content

Trigger

Module ID: 8 (MODULE_TRIGGER) Sensor: 2× TMAG5273 (A1 + B1, Texas Instruments)

Moduł spustu (trigger). Wykrywa naciśnięcie i zwolnienie spustu za pomocą dwóch czujników Hall-effect. Dostępny tylko w wariancie ETU.

Data Frame

Header (12B)
Module ID Flags Frame Nr Sample Count Timestamp First Timestamp Last Δ
1B 1B 1B 1B 5B LE 3B LE
byte 0 byte 1 byte 2 byte 3 byte 4–8 byte 9–11
Pole Wartość
Module ID 8
Flags 0x00
Sample Count 1
Timestamp Last Δ 0 (zdarzenie — single sample)

Payload

Każda próbka składa się z 1 bajtu:

Trigger sample (1B)
State Changed
1B
byte 0
Offset Rozmiar Pole Format
0 1B state_changed trigger_state_changed_t

Wartości state_changed

typedef enum {
    TRIGGER_STATE_CHANGED_PRESSED  = 1,
    TRIGGER_STATE_CHANGED_RELEASED = 2,
} trigger_state_changed_t;

Parsowanie (TypeScript)

enum TriggerState {
  PRESSED  = 1,
  RELEASED = 2,
}

function parseTriggerSample(view: DataView, offset: number): TriggerState {
  return view.getUint8(offset) as TriggerState;
}

Control

Module-specific keys

Key Wartość Typ Opis
KEY_TRIGGER_SENSITIVITY 0x80 SET/GET Poziom czułości uint8_t (1–8)
KEY_TRIGGER_MODE 0x81 SET/GET Tryb triggera (trigger_mode_t)
KEY_TRIGGER_BASES 0x82 GET Bazowe wartości Z (2× int16_t LE = 4B)

Trigger modes

typedef enum {
    TRIGGER_MODE_SEMI               = 0,
    TRIGGER_MODE_THRESHOLD          = 1,
    TRIGGER_MODE_TWO_STAGE_THRESHOLD = 2,
    TRIGGER_MODE_TWO_STAGE_SEMI     = 3,
    TRIGGER_MODE_UI                 = 4,
} trigger_mode_t;

Calibration keys

Trigger obsługuje kalibrację — pozwala ustawić bazowe wartości pola magnetycznego.

Universal keys

  • KEY_CTRL_INFO (0x01) — informacje o module
  • KEY_CTRL_ENABLE (0x02) — włącz/wyłącz moduł