Package-level declarations
Types
Mutable per-device decode state carried across packets. Replaces the legacy per-device lastSample / batteryLevel fields that lived on the global singleton.
Immutable device configuration. Replaces the legacy mutable BADeviceConfig (which used var/MutableList shared as a per-type static).
Hardware generation of a headset, as the device itself reports it in the Device Information Service Model Number string (0x2A24): a decimal code shared with the BrainAccess C core (ba_device_model in device_model.h) and written by the firmware (device_information_api.h, device_number_list).
BrainAccess device montages. The channel layout + factory defaults are ported verbatim from the legacy BAHalo/BAMini/BAMidi/BAMaxi companion defaultConfigs; EXG8 (the 8-channel V3 board, advertised as "BA EXG8
One decoded sample (one time-point across all active electrodes), typed so consumers no longer reconstruct the legacy positional FloatArray [ch…, accX, accY, accZ, gyroX, gyroY, gyroZ, sampleIndex, dummyFlag, battery] by hand.
10-5 / 10-20 electrode coordinates, ported as reference data for consumers (montage, visualization). Values are unchanged from the legacy EEGPositions EXCEPT 8 entries whose names had absorbed the integer part of the x-coordinate (a data-entry bug): AFp10h, AFF10h, FFT10h, FTT10h, TTP10h, TPP10h, PPO10h, POO10h — reconstructed here.
Electrode impedance measurement mode — config blob byte 0 (codes are the wire contract, matching the vendor C SDK's impedance_measurement_mode.h). Non-OFF modes make the device inject a small AC test current through the bias electrodes at the given frequency; the device computes electrode impedance on-chip (Ohm's law, Z = Vpp / I) and streams it directly in kΩ.
Firmware-update control opcodes for GattUuids.FIRMWARE_UPDATE_SERVICE (vendor OTA contract, ported from the C SDK's ota_update.hpp).
What the device streams on its EEG channels — the one-byte value of the output-mode characteristic (GattUuids.OUTPUT_MODE_CHARACTERISTIC); codes are the wire contract, matching the vendor C SDK's output_mode.h. Firmware 3.7.0 and later expose the characteristic; older firmware has none and always streams NORMAL.
Wire codec for BrainAccess stream packets and the channel-config blob.
Properties
ADXL343 as the V2 firmware programs it (DATA_FORMAT = 0, ±2 g, right-justified): 3.9 mg/LSB.
ICM-42670-P gyroscope full scale as the firmware programs it (GYRO_UI_FS_SEL = ±250 dps).
ICM-42670-P at ±2 g full scale, 16-bit two's complement.
Standard gravity in m/s² per g — the C core's GRAVITY.