ADXL345 3-axis accelerometer

The EzloPi smart devices provide automation through simple, customizable use with our open-source EzloPi platform, making daily life easier and improving human-machine interactions.

Before moving into this example, it is very important to know about the device registration, provisioning and converting the ESP32 device into an EzloPi device along with knowledge of Web Flasher, MiOS Mobile Application for Android/iOS and the MiOS Web Application.

1. About this example

This example demonstrates the interfacing of the ADXL345 accelerometer module with the EzloPi device, enhancing the capabilities of EzloPi as an IoT platform.

The ADXL345 accelerometer module measures static acceleration due to gravity as well as dynamic acceleration resulting from motion or shock. The ADXL345 is a powerful and highly sensitive 3-axis accelerometer offering precise and accurate real-time motion sensing capabilities in three dimensions (X, Y and Z). The digital output data is accessible through I2C serial communication protocols. By interfacing this advanced sensor with the EzloPi device, you can unlock a world of new exciting applications that leverage motion-based data for smarter automation, security, and control.

2. Project Video Demonstration

Welcome to the project demonstration video section. The following video showcases the key aspects of ADXL345 3-axis accelerometer, providing a visual walkthrough of its implementation.

3. Circuit Setup & Interfacing

The following components are required for interfacing the ADXL345 module with the EzloPi device:

  • ESP32 as EzloPi smart device.
  • ADXL345 3-Axis Accelerometer Module with 13-Bit Resolution.

The wiring diagram for ESP 32 pin is represented as follows:

The following connections are made in order to complete the entire circuit setup.

From ESP32 (32 pins) to ADXL345:

  • Connect the GND pin of the ESP32 to the GND pin of the ADXL345 module.
  • Connect the 3v3 pin from the ESP32 to the VCC terminal on the ADXL345 module.
  • Connect the D21 pin from the ESP to the serial data (SDA) pin.
  • Connect the D22 pin from the ESP to the serial clock (SCL) pin.

The wiring diagram for ESP 38 pin is also represented as below:

The following connections are made in order to complete the entire circuit setup.

From ESP32 (38 Pins) To ADXL345:

  • Connect the GND pin of the ESP32 to the GND pin of the ADXL345 module.
  • Connect the 3v3 pin from the ESP32 to the VCC terminal on the ADXL345 module.
  • Connect the IO21 pin from the ESP to the serial data (SDA) pin.
  • Connect the IO22 pin from the ESP to the serial clock (SCL) pin.

4. Interfacing the ADXL345 using EzloPi Web Flasher

1. Set up your device/hardware by visiting config.ezlopi.com

  1. Log in using the credentials which you just set earlier while signing up.
  1. Now click on Connect Device and a pop-up window will appear
  1. Now, select COM Port to which your ESP32 device is connected. In our case, the COM3 port is used.

Click Connect.

  1. If you are new to this and it’s your first time configuring, select Create new Device ID. Enter Wifi SSID and Wifi Password.
  2. In the Device Configuration, tab click on I2C.
  1. A Digital Input window will open for inputting the following parameters:
  • Set a device name of your choosing. In our case we set it to ADXL.
  • Select the Device Subtype as the sensor you are choosing. We set it to ADXL345.
  • Set Slave address according to the sensor you’re choosing, In ADXL345, it is 83 (decimal).
  • Set the GPIO pins of SDA and SCL, In our case, we set the SDA to 21 and SCL to 22 with pull-up enabled for both of them.
  • Now Click the Apply button. After clicking the apply button you can see a table of your setting in the Current configuration tab.
  • Press the Flash Device button.
  1. A window will appear on the bottom left side of the screen displaying “Please press BOOT button while flashing begins.”
  2. Hold the BOOT button down until the next window appears on the bottom left side of the screen which says “Installation prepared. Please release the boot button now.”
  1. Release the BOOT button from your ESP32 when this pop-up on the bottom right window appears.
  1. After some time, a popup will appear saying Device Flashed Successfully! This means that your device has been set up successfully.

5. MiOS App

You can download the MIOS Android app from the Google Play Store and Apple App Store.

Google PlayApple App Store
  1. After downloading the app, proceed to install the application and open it.
  1. Using the MIOS mobile application, create a new Ezlo Cloud account using the sign-up option. If you already have an account, you may proceed to log in.
  1. After successfully logging in, you will be able to see the number of controllers connected such as a lamp, fan, or any other device in the MiOS app. Tap on any controller of your desired ID:
  1. You will be able to see the status of your controller whether it is online or offline. Access the device dashboard, and tap the device. The following view of the dashboard will appear:
  1. After opening the dashboard, you will be able to see the tile of your connected device.
  2. Here, as you can see in the MiOS dashboard above, we can see the tiles of x-axis,y-axis, and z-axis all representing their respective readings.

6. MiOS Web Application

  1. After configuring the controller with the EzloPi web flasher, head to ezlogic.mios.com
Login MiOS
  1. Use the same credentials to log in that you used for configuring the controller with the web flasher.
  1. In the above figure, the ADXL345 module connected to the EzloPi device is displaying the respective readings 3-axes (X,Y and Z).
  1. When the position of the sensor is changed, the readings displayed for the 3-axes also vary as can be seen in the above image.
Buy Components

eZlopie Products A single-channel 5V relay module $00.00

eZlopie Products Momentary switch $00.00

eZlopie Products Level Shifter Module (BSS138) $00.00

eZlopie Products ESP32
$00.00

eZlopie Products AC Lamp and Holder
$00.00