ADXL345 connection issue

Basic Information:

Printer Model: Ender 3 V3 SE
MCU / Printerboard: Stock MCU + OPI zero 2w 1GB for klipper
klippy (7).log (1.9 MB)

Hello, what i’ve done:

  1. Connected ADXL345 with dupont cables via spi to OPI
  2. Enabled spi in hardware menu of OPI
  3. Rebooted, checked all the necessery pins (they are working correctly)
  4. Connected to fluidd, it booted ok
  5. Pasted ACCELEROMETER_QUERY, waited couple of seconds command and got:

Lost communication with MCU ‘opi’
Once the underlying issue is corrected, use the
“FIRMWARE_RESTART” command to reset the firmware, reload the
config, and restart the host software.
Printer is shutdown

I’ve checked connection to OPI, active pins, printer.cfg file, orangeEnv.txt (i didn’t changed anything tho), ls /dev/spi*.

printer.cfg:

[mcu opi]
serial: /tmp/klipper_host_mcu

[adxl345]
cs_pin: opi:None
spi_bus: spidev1.0

[resonance_tester]
accel_chip: adxl345
probe_points: 100, 100, 20 # an example

Is your printer working regularly and reliably without the ADXL configuration?

It works as it should even with the ADXL345 connected, but if I run the ACCELEROMETER_QUERY command everything stops working. By the way, only reboot OPI helps in this situation

Unfortunately, the ease and success rate very much varies with the quality of the used Linux distribution.
According to my experience with older OPi releases, this is quite a hit-and-miss with a strong tendency to “miss”.

I have made quite good experience with an OPi 3 LTS and Armbian.

Another viable option is to not use dedicated SPI pins, but to define software SPI pins.

A user friendly alternative is also the ready made boards that combine a MCU with the IMU, e.g.

They also offer the big advantage of being portable and easily carried over from one Klipper installation to another

Just bought Pi Pico clone, flashed it (from klipper guide), connected it and everything worked! A bit of a crutch, but a solution

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.