Zum Hauptinhalt springen

Fehlerbehebung

Beginnen Sie mit dem Symptom, das Sie beobachten können. Nehmen Sie jeweils nur eine Änderung vor und wiederholen Sie dann das kleinste Beispiel aus der Schnellstart-Anleitung.

SymptomPrüfenLösung
Arduino: Error: BMA400 not connected, check wiring and I2C address! wiederholt sich jede SekundeStromversorgung, Masse, SDA und SCL erreichen das Breakout, und die im Code verwendete Adresse stimmt mit dem Board übereinStecken Sie das Qwiic-Kabel neu auf oder prüfen Sie die Verdrahtung am Header. begin() verwendet standardmäßig 0x14; wenn Sie den Adress-Jumper JP1 geändert haben oder ADDR auf High legen, rufen Sie begin(BMA400_I2C_ADDRESS_SECONDARY) für 0x15 auf.
MicroPython: BMA400 not responding on address 0x14Die Pins in I2C(0, scl=Pin(9), sda=Pin(8)) sind die Pins, die Sie angeschlossen haben, und die Adresse stimmt mit dem Board übereinÄndern Sie die Pins scl und sda entsprechend Ihrer Verdrahtung. Für ein auf 0x15 eingestelltes Board übergeben Sie address=BMA400_I2C_ADDRESS_SDO_HIGH an BMA400().
MicroPython: BMA400 not found, chip ID 0x.. was read instead of 0x90Ein anderer Chip antwortet unter dieser AdresseStellen Sie sicher, dass kein anderes Gerät am Bus dieselbe Adresse verwendet, oder stellen Sie das Breakout auf die andere Adresse um.
MicroPython: Board not recognized, enter I2C pins manuallyBMA400() wurde ohne i2c-Objekt auf einem Board erstellt, das die Bibliothek nicht erkennt: Sie erkennt nur Firmware, die sich als esp32, esp8266 oder als eine ältere Soldered-Board-Firmware meldetErstellen Sie den Bus selbst mit I2C(...) und übergeben Sie ihn an BMA400(i2c), wie es die Beispiele tun.
Das Board antwortet weder unter 0x14 noch unter 0x15 oder nur manchmalDer Adress-Jumper JP1: ADDR darf niemals offen (floating) bleibenStellen Sie eine Seite von JP1 wieder her oder legen Sie den Pin ADDR von Ihrem Controller aus auf einen festen Pegel. Siehe Jumper.
Das Bewegungs- oder Schrittbeispiel gibt nach dem Start nichts ausINT1 ist mit dem Controller-Pin verbunden, den der Code nennt: 2 in den Arduino-Beispielen, 5 in den MicroPython-Beispielen, und dieser Pin unterstützt InterruptsVerbinden Sie INT1 mit diesem Pin oder ändern Sie interruptPin (Arduino) bzw. INT1_PIN (MicroPython) auf den von Ihnen verwendeten Pin.
Der Schrittzähler zählt nieDer Interrupt des Schrittzählers ist aktiviertBehalten Sie enableInterrupt(BMA400_STEP_COUNTER_INT_EN, true) (Arduino) bzw. enable_interrupt(BMA400_STEP_COUNTER_INT_EN, True) (MicroPython) in Ihrem Code bei; ohne diesen Aufruf zählt der Schrittzähler nicht, auch wenn Sie den Pin nicht verwenden.
Das Board wurde an 5 V angeschlossenDie Versorgung an 3V3Das absolute Maximum des BMA400 beträgt 4 V, und das Board hat keinen Spannungsregler. Versorgen Sie es ausschließlich mit 1,72 V bis 3,6 V.

Immer noch blockiert?​

Fragen Sie im Community-Forum nach. Geben Sie Folgendes an, damit jemand das Problem nachvollziehen kann:

  • Produktname und SKU: Soldered Ultra-Low-Power Accelerometer BMA400 Breakout, 333419
  • Controller-Board und Software-Umgebung
  • Version der Bibliothek bzw. des Moduls
  • vollständiger Fehlertext oder unerwartete Ausgabe
  • Anschlussart und Stromquelle
  • ein deutliches Foto der Verdrahtung