Acceleration Sampling Frequency Issues
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- Meio dia
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- cpp
- Domínio
- embedded-iot
Direção de pesquisa
The problem is in the accelerometer chip driver, where the whole FIFO buffer is read on each sample instead of only the number of valid entries the chip reports. Start by finding the FIFO read path in that driver and check the linked PineTimeSD pull request #22 for the approach the reporter used. Done means each read fetches only the valid readings, so the sampling rate matches the requested 25 Hz; this needs hardware to verify fully.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Verification
- I searched for similar issues (including closed issues) and found none was relevant.
Introduce the issue
I use a fork of InfiniTime as a data source for my OpenSeizureDetector epileptic seizure detection project.
I noticed that although we were requesting 25 Hz accelerometer sampling frequency, we were receiving data at more like 28 Hz.
The cause seemed to be that each time we read it, we were reading the entire contents of the FIFO buffer on the accelerometer chip, rather than the number of valid readings stated on the chip.
I have fixed this in my fork, but thought you might like to implement the fix in the main InfiniTime firmware too. I also improved the error handling in the accelerometer chip driver as part of the change.
See https://github.com/OpenSeizureDetector/PineTimeSD/pull/22
Preferred solution
You might want to implement the same change (https://github.com/OpenSeizureDetector/PineTimeSD/pull/22) - I don't think it has been fixed in InfiniTime as far as I can see.
I think the 'best' option is to set up accelerometer handling as a separate task and use interrupts to drive the FIFO reading, but that is a bigger change to implement so I haven't done that yet.
Version
No response
- Linguagem predominante
- C
- Estrelas
- 3.4k
- Forks
- 1.1k
- Merge médio
- 6h 10min
- PRs com merge (30d)
- 5
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de InfiniTimeOrg/InfiniTime
-
Не выключение экранаAbertabug
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 56/100
InfiniTimeOrg/InfiniTime#2503 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 55/100
InfiniTimeOrg/InfiniTime#2496 · 5 comentários ·
-
BLE handlers use length fields from the packet without checking how much data arrivedTalvez já em andamento @DustinHab assumiu há 59 dias. Aberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 56/100
InfiniTimeOrg/InfiniTime#2485 ·
-
Screen doesn't go to sleep after reset countdown appTalvez já em andamento @SteveAmor assumiu há 100 dias. Abertabug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
InfiniTimeOrg/InfiniTime#2419 · 4 comentários ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
InfiniTimeOrg/InfiniTime#2410 ·
Todas as issues de InfiniTimeOrg/InfiniTime
Issues semelhantes
-
Signed/unsigned mix in the EOCD backward scan rejects valid archives with a 65535-byte commentAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
bug game: 01008BA02525A000 ios
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 1 dia
-
area/ysql kind/bug priority/medium status/awaiting-triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
yugabyte/yugabyte-db#37523 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 77/100
Mantenedores costumam responder em até 3 dias