Skip to content

feat: adicionar detecção de vibração via IMU QMC6500 com interrupção - #3

Open
pedrolopesc wants to merge 1 commit into
codex/update-architecture-for-agent-additionfrom
codex/add-qmc6500-imu-sensor-for-vibration-detection
Open

feat: adicionar detecção de vibração via IMU QMC6500 com interrupção#3
pedrolopesc wants to merge 1 commit into
codex/update-architecture-for-agent-additionfrom
codex/add-qmc6500-imu-sensor-for-vibration-detection

Conversation

@pedrolopesc

Copy link
Copy Markdown
Owner

Motivation

  • Integrar um sensor IMU QMC6500 para detectar vibrações via interrupção GPIO e priorizar o tratamento do evento no laço principal da aplicação, mantendo testabilidade em host e atualizando artefatos arquiteturais e de pinagem conforme as regras do repositório.

Description

  • Adiciona driver src/driver/imu.h e src/driver/imu.cpp com inicialização I2C (Wire), configuração de limiar, attachInterrupt em pino de INT e leitura de status via registrador (imu_has_vibration_event).
  • Integra o IMU na aplicação incluindo driver/imu.h, chamando setup_imu() em setup_app() e verificando imu_has_vibration_event() no início de loop_app() para registrar e interromper o fluxo normal quando houver vibração.
  • Cria mocks host src/host/mocks/mock_imu.h / mock_imu.cpp e estende os testes unitários em tests/host/unit/test_loop_app/test_loop_app.cpp para cobrir os cenários sem vibração e com evento de vibração.
  • Atualiza artefatos de arquitetura architecture/DIAGRAM.md, architecture/TECHNICAL_BASELINE.md e o FIRMWARE_GPIO_MAP.md (adiciona D4 SDA, D5 SCL e D3 como INT do QMC6500) sem alterar arquivos em governance/ para respeitar a exigência de aprovação explícita.

Testing

  • Executado pio test -e host, que falhou no ambiente atual por ausência do comando (pio: command not found).
  • Executado git diff --check como verificação estática, que passou com sucesso.

Codex Task

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant