A comunicação com o BITalino é feita inteiramente via Lab Streaming Layer (LSL), publicado pelo OpenSignals. O ComPasso não faz varredura Bluetooth: ele localiza a stream LSL pelo endereço MAC informado.
A conexão só funciona se o OpenSignals estiver compartilhando os dados via LSL. Faça isto antes de conectar no ComPasso:

Sem o LSL ativo e transmitindo, a conexão falha com uma mensagem de erro (a resolução da stream tem timeout de ~2 segundos).
Na barra de conexão (topo da janela):
XX:XX:XX:XX:XX:XX. São aceitos
os separadores :, espaço ou - (ex.: AA:BB:CC:DD:EE:FF, AA BB CC DD EE FF).Em caso de sucesso, o botão dá lugar a um indicador “● Conectado” com um pequeno equalizador animado, e um botão Desconectar fica disponível. Os campos de MAC, canal e sensor ficam travados enquanto a conexão estiver ativa.

O BITalino aceita sensores diferentes, cada um com sua própria unidade e faixa de valores. Escolha o tipo antes de conectar (o menu fica travado depois) — isso ajusta a unidade e a escala padrão do gráfico do sinal em tempo real:
| Sensor | Unidade | Escala padrão | Faixa do slider (passo) |
|---|---|---|---|
| EDA | µS (microsiemens) | ±6 µS | ±4 a ±30 µS (passo 2) |
| ECG (padrão) | mV (milivolts) | ±1 mV | ±0,4 a ±3 mV (passo 0,2) |
| EMG | mV | ±1 mV | ±0,4 a ±3 mV (passo 0,2) |
| EOG | mV | ±0,5 mV | ±0,1 a ±2 mV (passo 0,1) |
| EEG | µV (microvolts) | ±30 µV | ±10 a ±50 µV (passo 10) |
| EGG | mV | ±0,5 mV | ±0,1 a ±2 mV (passo 0,1) |
💡 A escolha do sensor não converte o sinal. O valor gravado no CSV/XLSX continua sendo o valor bruto lido do BITalino, exatamente como antes — o sensor só muda o rótulo da unidade e a janela padrão de exibição do gráfico. Trocar de sensor reseta a escala do eixo Y para o padrão daquele sensor (ajustável depois em Configurações → Gráfico).
Ao conectar, o ComPasso:
type corresponde ao MAC informado (timeout de 2 s).nominal_srate) e o número de canais anunciados. Se a taxa for
0 (irregular), um aviso é registrado — configure a taxa de aquisição (ex.: 100 Hz) no
próprio OpenSignals, pois o dejitter não suaviza timestamps de taxa irregular.Sobre o canal: a seleção “A1”–”A6” grava diretamente o índice numérico (A1 → 1, A2 → 2, …), usado para extrair o valor do sinal de cada amostra (
sample[canal]). A primeira amostra completa recebida é registrada no log no início de cada gravação, permitindo conferir qual índice corresponde ao sensor.
Após conectar, um watchdog (vigia em thread separada) monitora continuamente o fluxo de amostras:
PARADA_FORCADA —, o estado de conexão é resetado e uma mensagem de
aviso é exibida (“Conexão com BITalino perdida. Verifique o sensor.”).Durante a gravação de uma faixa, o watchdog não puxa amostras (para não competir com a gravação): ele lê o instante da última amostra registrada pelo gravador. Entre faixas (ocioso), faz uma sondagem leve para verificar se ainda há fluxo.
O botão Desconectar encerra manualmente a conexão e restaura a interface de conexão. Se um experimento estiver em andamento, a desconexão é bloqueada com um aviso — pare o experimento antes de desconectar.
Anterior: « Primeiros passos · Próximo: BITalino simulado »