Bosch Sensor BNO055

OP #4417319
Lesenswert?

Hallo Forum,

ich habe hier einen Sensor von Bosch, den BNO055. Ich habe das Problem, 
dass ich keinen Motion-Interrupt bekomme.
Der Anwendungsfall ist, den µC per Interrupt aufzuwecken, wenn eine 
Bewegung erkannt wird. Danach sollen die Sensordaten aufgenommen werden. 
Letzteres funktioniert auch schon, Beschleunigungswerte, Gyro- und 
Magnetfelddaten werden ausgelesen. Jedoch das Aufwecken funktioniert 
nicht. Genauer gesagt wird kein Interrupt im BNO055 generiert. Ich 
konnte nichts messen und auch durch pollen des Flag-Registers kam kein 
Interrupt.
Ich hab das ganze im Op-Mode ACC-Only, und AMG probiert, sowie in 
Power-Mode Normal und Low-Power.

Ich such nach einem Beispiel oder pseudo-Code, was ich in welche 
Register schreiben muss, um einfach nur einen Interrupt bei Bewegung zu 
bekommen.

Danke
Gast #4629837
Lesenswert?

Hallo Rangi,

Was für ein microcontroller Board verwendest Du? Ich nutze Adafruit 
Feather M0 mit Adafruit BNO055 und es funktioniert, allerdings hatte ich 
2 große Probleme:

1. Adafruit_BNO055 bietet keine APIs für Interrupt handling. Musst Du 
also selbst programieren
2. Die Doku vom Sensor war falsch, i.e. das SMNM bit (bit 0) in dem 
ACC_NM_SET (0x0B) muss auf 1 für No Motion gesetzt werden (und nicht auf 
0, wie es beschrieben war).

Ich bekomme jetzt INT signale für "No Motion" nach 5 Sek (kann ich 
einstellen) und "Any motion" sobald ich auf dem Tisck klopfe ;)

Viel Erforlg,

Sergiu

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren