Diário de bordo / 01 · 2026
BIP: batimentos e vídeo na mesma sessão de pesquisa
Com Lucas Diniz e a equipe, ajudei a construir uma plataforma que conecta frequência cardíaca e vídeo para pesquisa em artes cênicas na UnB. O desafio foi preservar o tempo e o contexto de cada leitura.
01 / Diário de bordo
Acompanhar o corpo durante uma performance
O BIP nasceu de uma necessidade do grupo de pesquisa Criação em Coletivo para a Cena, da UnB/CNPq: acompanhar a frequência cardíaca de participantes e relacionar essas leituras ao que acontece durante uma performance de artes cênicas.
Para isso, precisávamos conectar equipamentos físicos a uma aplicação que mostrasse os batimentos e registrasse vídeo. Cada leitura precisava manter sua relação com a sessão de pesquisa para que, depois da coleta, o grupo pudesse analisar os dados junto do contexto da performance.
02 / Diário de bordo
Minha participação com a equipe
Participo como pesquisador externo voluntário desde março de 2026. Com Lucas Diniz, desenhei a arquitetura da solução e, junto da equipe, trabalhei na implementação. Também participei da preparação inicial do projeto, da configuração dos repositórios e da revisão de código.
A responsabilidade técnica passou por diferentes partes do sistema: a chegada dos dados do hardware, sua transmissão até o navegador e a gravação para consulta posterior. Essa visão do percurso completo foi importante para entender onde uma leitura poderia atrasar, perder contexto ou deixar de chegar ao próximo componente.
03 / Diário de bordo
Das pulseiras ao navegador
As pulseiras transmitem frequência cardíaca por Bluetooth Low Energy, ou BLE. Placas Adafruit CLUE, com o chip nRF52840, recebem essas leituras e as encaminham ao computador em mensagens JSON pela conexão serial USB.
No computador, o backend em FastAPI coordena a detecção das placas, a busca por dispositivos BLE e o envio dos dados para a aplicação web por WebSocket. Esse canal mantém a comunicação aberta para que novas leituras possam chegar ao navegador durante a coleta.
Um ponto importante foi a integração entre a thread que lê a porta serial e o processamento assíncrono do backend. O dado precisava atravessar essa fronteira para continuar seu caminho até a interface. No frontend, React e ECharts mostram a frequência cardíaca enquanto a webcam registra a performance.
04 / Diário de bordo
Preservar o contexto da coleta
A decisão central foi associar vídeo e batimentos a uma mesma referência de sessão. Assim, a leitura mantém uma ligação com a coleta da qual faz parte, permitindo relacioná-la posteriormente ao registro visual.
Para gravar os dados, usamos um buffer em memória: uma área temporária que recebe leituras antes da escrita em banco. A persistência acontece de forma assíncrona, em lotes ordenados no PostgreSQL. Essa separação exige cuidar da ordem dos dados e do que acontece quando o processo é interrompido; por isso, também estruturamos recuperação de sessão.
05 / Diário de bordo
O aprendizado que levo do BIP
Esse projeto ampliou minha atenção ao percurso de uma informação. Para a equipe de pesquisa, o valor de uma leitura depende também do momento em que foi obtida e da sessão à qual pertence. Essa necessidade orientou nossas decisões de aquisição, visualização e persistência.
O BIP é a ferramenta de coleta que ajudamos a construir. A análise dos dados e as conclusões da pesquisa pertencem ao trabalho do grupo. Na publicação sobre o BIP, conto mais sobre a arquitetura e a colaboração com a equipe.
06 / Explore as conexões
Como o sistema foi organizado
Selecione uma parte do sistema para entender sua responsabilidade.
Arraste para girar. Use as setas com a cena em foco.
Sessão de pesquisa
Tempo · Contexto · Leituras
Conectado a: Aquisição · Orquestração · Visualização · Persistência
07 / Diário de bordo
Entregas e resultados
batimentos acompanhados no navegador
Conectamos pulseiras, placas CLUE e a aplicação web para visualizar frequência cardíaca durante a coleta.
Publicação de Guilherme Faglioni sobre o BIP no LinkedIn.dados gravados por sessão
Estruturamos buffer em memória, gravação assíncrona e recuperação de sessão para lidar com interrupções da coleta.
Publicação de Guilherme Faglioni sobre o BIP no LinkedIn.