Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Qwiic Scale: Examples, Pinouts, and Specs

Image of Qwiic Scale
Cirkit Designer LogoDesign with Qwiic Scale in Cirkit Designer

Introduction

The Qwiic Scale is a digital weight measurement module designed by SparkFun, featuring the NAU7802 analog-to-digital converter (ADC). This component is part of the Qwiic Connect System, which simplifies integration with microcontrollers by using a standardized I2C interface. The Qwiic Scale is ideal for applications requiring precise weight measurements, such as kitchen scales, industrial weighing systems, robotics, and IoT projects.

With its high-resolution ADC and easy-to-use interface, the Qwiic Scale enables accurate and reliable weight sensing in a compact form factor. Its plug-and-play design makes it accessible for both beginners and advanced users.

Explore Projects Built with Qwiic Scale

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32-Based Smart Weighing Scale with HX711 and I2C LCD Display
Image of Gasometro teste: A project utilizing Qwiic Scale in a practical application
This circuit is a digital weighing scale system that uses an ESP32 microcontroller to read data from multiple load sensors via an HX711 interface, display the weight on a 16x2 I2C LCD, and sound a buzzer if the weight exceeds a certain threshold. A pushbutton is included to tare the scale, and the system is powered through the ESP32.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and ESP8266 Wi-Fi Enabled Load Cell Weight Measurement System
Image of Scale Project: A project utilizing Qwiic Scale in a practical application
This circuit is a digital weighing scale system that uses an Arduino UNO to read data from a load cell via an HX711 interface, display the weight on an LCD, and send the data over WiFi using an ESP8266 module when a specific key on a 4x4 membrane keypad is pressed. The system integrates multiple components to measure, display, and transmit weight data.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Smart Scale with LCD Display and Piezo Speaker
Image of CAPSTONE: A project utilizing Qwiic Scale in a practical application
This circuit is a weight measurement system that uses a load cell connected to an HX711 bridge sensor interface, which communicates with an ESP32 microcontroller. The ESP32 processes the weight data and displays it on an MKE-M08 LCD2004 I2C module, while also providing an auditory alert through a piezo speaker.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino-Based Bluetooth-Enabled Weighing Scale with HX711 and Load Sensor
Image of HX711 pro mini bluetooth: A project utilizing Qwiic Scale in a practical application
This circuit is a digital weighing scale system that uses a 50kg load sensor connected to an HX711 weighing sensor module, which interfaces with an Arduino Pro Mini for data processing. The Arduino communicates the weight data wirelessly via a Bluetooth HC-06 module, and the entire system is powered by a 12V battery.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Qwiic Scale

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Gasometro teste: A project utilizing Qwiic Scale in a practical application
ESP32-Based Smart Weighing Scale with HX711 and I2C LCD Display
This circuit is a digital weighing scale system that uses an ESP32 microcontroller to read data from multiple load sensors via an HX711 interface, display the weight on a 16x2 I2C LCD, and sound a buzzer if the weight exceeds a certain threshold. A pushbutton is included to tare the scale, and the system is powered through the ESP32.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Scale Project: A project utilizing Qwiic Scale in a practical application
Arduino UNO and ESP8266 Wi-Fi Enabled Load Cell Weight Measurement System
This circuit is a digital weighing scale system that uses an Arduino UNO to read data from a load cell via an HX711 interface, display the weight on an LCD, and send the data over WiFi using an ESP8266 module when a specific key on a 4x4 membrane keypad is pressed. The system integrates multiple components to measure, display, and transmit weight data.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of CAPSTONE: A project utilizing Qwiic Scale in a practical application
ESP32-Based Smart Scale with LCD Display and Piezo Speaker
This circuit is a weight measurement system that uses a load cell connected to an HX711 bridge sensor interface, which communicates with an ESP32 microcontroller. The ESP32 processes the weight data and displays it on an MKE-M08 LCD2004 I2C module, while also providing an auditory alert through a piezo speaker.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of HX711 pro mini bluetooth: A project utilizing Qwiic Scale in a practical application
Arduino-Based Bluetooth-Enabled Weighing Scale with HX711 and Load Sensor
This circuit is a digital weighing scale system that uses a 50kg load sensor connected to an HX711 weighing sensor module, which interfaces with an Arduino Pro Mini for data processing. The Arduino communicates the weight data wirelessly via a Bluetooth HC-06 module, and the entire system is powered by a 12V battery.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

Below are the key technical details of the Qwiic Scale:

Parameter Specification
ADC NAU7802
Interface I2C (Qwiic Connect System)
I2C Address Default: 0x2A (configurable)
Input Voltage 3.3V (via Qwiic connector)
Current Consumption ~1.5mA (typical)
Resolution 24-bit ADC
Gain Settings Programmable (1x, 2x, 4x, 8x, 16x, 32x, 64x, 128x)
Load Cell Support Single-channel load cell
Operating Temperature -40°C to +85°C
Dimensions 25.4mm x 25.4mm (1" x 1")

Pin Configuration

The Qwiic Scale uses the Qwiic connector for I2C communication. It also includes breakout pins for additional flexibility. Below is the pin configuration:

Pin Label Description
1 GND Ground
2 3.3V Power supply (3.3V input)
3 SDA I2C data line
4 SCL I2C clock line
5 DRDY Data ready output (optional, for interrupts)
6 AVDD Analog power supply for load cell (3.3V)
7 AIN+ Positive analog input for load cell
8 AIN- Negative analog input for load cell

Usage Instructions

Connecting the Qwiic Scale

  1. Hardware Setup:

    • Connect the Qwiic Scale to your microcontroller using a Qwiic cable.
    • If using a load cell, connect its wires to the AIN+ and AIN- pins on the Qwiic Scale.
    • Ensure the microcontroller operates at 3.3V logic levels to match the Qwiic Scale.
  2. Software Setup:

    • Install the SparkFun NAU7802 library for Arduino from the Arduino Library Manager.
    • Include the library in your Arduino sketch to communicate with the Qwiic Scale.

Example Code for Arduino UNO

Below is an example Arduino sketch to read weight data from the Qwiic Scale:

#include <Wire.h>
#include <SparkFun_Qwiic_Scale_NAU7802_Arduino_Library.h>

// Create an instance of the NAU7802 class
NAU7802 myScale;

void setup() {
  Serial.begin(9600); // Initialize serial communication
  while (!Serial);    // Wait for the serial port to connect

  Serial.println("Qwiic Scale Example");

  // Initialize the Qwiic Scale
  if (!myScale.begin()) {
    Serial.println("Failed to find Qwiic Scale. Check connections.");
    while (1); // Halt if initialization fails
  }

  Serial.println("Qwiic Scale initialized!");

  // Calibrate the scale
  if (!myScale.calibrateAFE()) {
    Serial.println("Failed to calibrate the scale.");
    while (1); // Halt if calibration fails
  }

  Serial.println("Scale calibrated. Ready to measure weight.");
}

void loop() {
  // Read the raw ADC value
  long rawValue = myScale.getReading();
  Serial.print("Raw ADC Value: ");
  Serial.println(rawValue);

  // Convert the raw value to weight (requires calibration for accuracy)
  float weight = myScale.getWeight();
  Serial.print("Weight: ");
  Serial.print(weight);
  Serial.println(" grams");

  delay(1000); // Wait 1 second before the next reading
}

Important Considerations

  • Calibration: For accurate weight measurements, calibrate the scale with a known weight using the calibrateScale() function in the library.
  • Power Supply: Ensure a stable 3.3V power supply to avoid noise in the ADC readings.
  • Load Cell Wiring: Connect the load cell wires securely to avoid inconsistent readings.

Troubleshooting and FAQs

Common Issues

  1. Qwiic Scale Not Detected:

    • Ensure the Qwiic cable is securely connected.
    • Verify the I2C address (default: 0x2A) matches the address in your code.
    • Check that the microcontroller operates at 3.3V logic levels.
  2. Inaccurate Weight Readings:

    • Perform a proper calibration with a known weight.
    • Ensure the load cell is not under physical stress or improperly mounted.
  3. No Data from the Scale:

    • Verify the DRDY pin is functioning if used for interrupts.
    • Check the power supply voltage and connections.

FAQs

Q: Can I use the Qwiic Scale with a 5V microcontroller?
A: The Qwiic Scale operates at 3.3V logic levels. If using a 5V microcontroller, use a logic level shifter to prevent damage.

Q: How do I change the I2C address?
A: The I2C address can be changed by modifying the address in the library code or using the setI2CAddress() function.

Q: What is the maximum weight the Qwiic Scale can measure?
A: The maximum weight depends on the load cell used. Refer to the load cell's datasheet for its capacity.

Q: Can I use multiple Qwiic Scales on the same I2C bus?
A: Yes, but each scale must have a unique I2C address. Configure the address using the library functions.

By following this documentation, you can effectively integrate the Qwiic Scale into your projects for precise weight measurement.