Giter VIP home page Giter VIP logo

raspberry-pi-i2c-svm4x's Introduction

Sensirion Raspberry Pi I2C SVM4x Driver

This document explains how to set up the SEK-SVM4x sensor module to run on a Raspberry Pi using the provided code.

The SVM4x evaluation kit covers evaluation of the SGP40 and SGP41 sensors.

Setup Guide

Connecting the Sensor

Your sensor has the five different connectors: VCC, GND, SDA, SCL, SEL (the sixth connector will not be used for now). Use the following pins to connect your SVM4x:

SVM4x Raspberry Pi Jumper Wire
VCC Pin 1 or 2 (3.3V or 5V) Red
GND Pin 6 Black
SDA Pin 3 Green
SCL Pin 5 Yellow
SEL Pin 9 (GND for I2C) Blue

If you don't have a suitable cable at hand, please find the SEK-SVM4x technical description here:

Pin Cable Color Name Description Comments
1 Red VDD Supply Voltage 3.3 or 5.0 V
2 Black Ground
3 Green RX UART: Receiving pin for communication
SDA I2C: Serial data, bidirectional
4 Yellow TX UART: Transmission pin for communication
SCL I2C: Serial clock
5 Blue SEL Interface select Leave floating or pull to VDD to select UART
Pull to GND to select I2C
6 Purple NC Do not connect

Raspberry Pi

  • Install the Raspberry Pi OS on to your Raspberry Pi
  • Enable the I2C interface in the raspi-config
  • Download the driver for the Sensirion Github Page and extract the .zip on your Raspberry Pi
  • Compile the driver
    1. Open a terminal

    2. Navigate to the driver directory. E.g. cd ~/raspberry-pi-i2c-svm4x

    3. Run the make command to compile the driver

      Output:

      rm -f svm41_i2c_example_usage
      cc -Os -Wall -fstrict-aliasing -Wstrict-aliasing=1 -Wsign-conversion -fPIC -I. -o svm41_i2c_example_usage  svm41_i2c.h svm41_i2c.c sensirion_i2c_hal.h sensirion_i2c.h sensirion_i2c.c \
        sensirion_i2c_hal.c sensirion_config.h sensirion_common.h sensirion_common.c svm41_i2c_example_usage.c
      
  • Test your connected sensor
    • Run ./svm41_i2c_example_usage in the same directory you used to compile the driver.

      Output:

      Serial number: 0FA3F1F7000003392A3D0240
      Firmware: 3.0 Debug: 0
      Hardware: 3.0
      Protocol: 1.0
      Temperature Offset: 0.00 °C
      Humidity: 47.34 % RH
      Temperature: 28.95 °C
      VOC index: 101.0 VOC index
      NOx index: 1.0 NOx index
      Humidity: 47.35 % RH
      Temperature: 28.98 °C
      VOC index: 101.0 VOC index
      NOx index: 1.0 NOx index
      ...
      

Troubleshooting

Initialization failed

  • Ensure that you connected the sensor correctly: All cables are fully plugged in and connected to the correct pin.
  • Ensure that I2C is enabled on the Raspberry Pi. For this redo the steps on "Enable the I2C interface in the raspi-config" in the guide above.
  • Ensure that your user account has read and write access to the I2C device. If it only works with user root (sudo ./svm41_i2c_example_usage), it's typically due to wrong permission settings.

raspberry-pi-i2c-svm4x's People

Contributors

leoniefierz avatar mbjoern avatar psachs avatar sensirion-bot avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.