Raspberry Pi Sensor Shield

This documentation includes hardware info, installation guidelines and sample code for your hardware.

Overall Info

FeynLab Sensor Shield for Raspberry Pi orchestrates high-end components demanding in IoT scenarios. It combines sensors, relay, general purpose IO’s and user LED's on a single board. This combination allows you to create complex scenarios without the hassle of cable clutter. Whether you are a beginner or a professional, Sensor Shield will help you to develop the complete solution in the shortest possible time.



  • I2C Port: 3.3V, GND, SCL, and SDA connections of the I2C bus. Directly connected to the host device's headers.

    • 3.3V and GND: Power output from host device (Raspberry Pi).

    • SCL and SDA: I2C connections from host device.

  • IO1, IO2, IO3, and IO4: 3.3V, GND, GPIO connections.

    • 3.3V and GND: Power output from host device.

    • Digital Input/Output: 3.3V GPIO Pins directly connected to the host device's headers.

  • Relay: Solid state relay terminal.

    • GND: Ground connection of the relay. Connect it to the GND of power supply.

    • NO+: Normally open connection of the relay. Connect it to the target device.

There is no level convertion circuit on board. Raspberry Pi's GPIO pins and I2C connections are NOT 5V tolerant. You need to take care when you are connecting 5V devices or buses.


Sensor Shield's specifications are as follows:

Bosch SensorTec BME280 Environmental Sensor

Measures temperature, relative humidity and pressure including altitude.

  • Temperature: Measures -40C to 85C temperature with +/- 1C accuracy and 0.01C resolution.

  • Humidity: Measures relative humidity within 0% to 100% range, in 3% accuracy and 0.008% resolution.

  • Pressure: Measures air pressure from 300 to 1100hPa in 0.18Pa resolution.

  • Altitude: The driver calculates altitude from sea level if air pressure at the sea level is given.

The sensor uses 0x76 address over the I2C bus.

Sensor Shield will heat up as your Raspberry Pi warms up in hot environments. In this case, the sensor will read the temperature, humidity and pressure above normal levels. Keeping the device upright helps hot air to escape.

Broadcom APDS-9960 Ambient light, RGB, Gesture and Proximity Sensor

Measures ambient light, RGB values and proximity. Detects hand gestures.

  • Ambient Light: Measures ambient light with UV and IR blocking features.

  • Color Detection: Measures RGBC channels with UV and IR blocking features.

  • Hand Gesture Detection: Detects left, right, up and down directions within the range of 30cm to the sensor.

  • Proximity Detection: Detects distance to the object up to 30cm from the sensor.

The sensor uses 0x39 address on the I2C bus.

Vishay VEML6075 UV Sensor

Measures UVA and UVB. Calculates UV A Index, UVB Index and average UV Index.

  • UVA: Measures wavelengths between 315nm to 400nm in 16-bit resolution.

  • UVB: Measures wavelengths between 280nm to 315nm in 16-bit resolution.

  • UV Index: Calculates UV radiation.

The sensor uses 0x10 address over the I2C bus.

NXP MMA8491Q Accelerometer & Tilt Sensor

Measures 3 axis acceleration. Generates interrupt on tilt detect.

  • Acceleration: Measures +/- 8g acceleration data with 1 mg accuracy.

  • Tilt Detection: Generates interrupt over 0.688g acceleration or 43.5 degrees of tilt. Sensor Shield uses Z-axis interrupt output.

The sensor uses 0x55 address over the I2C bus.

LCA717S Solid State Relay

Turns DC devices on or off.

  • 1x Relay: DC30V 2A solid state relays can switch small devices.

Relay can be activated using Pin 38. Blue Led is included as a state indicator.

Do not use devices whose peak current consumption will be over 2A.

I2C and I/O Connectors

Board has 2x I2C and 2x I/O connection.

  • 2x I2C Connectors: Each connector provides I2C connection for external devices, such as sensors and displays in addition to 3.3V and ground.

  • 2x I/O Connectors: Each connector provides 2 GPIO pins, 3.3V and ground. GPIO pins are directly connected to the Raspberry Pi.

GPIO Pins on I/O connectors are connected to Raspberry Pi's GPIO 40, 15, 16 and 18 pins respectively. BCM Numberings are 21, 22, 23, 24.

User LED's

2 User controllable LED's are included for basic visual feedback.

  • LED 1: Blue, Pin 12 (BCM 18)

  • LED 2: Red, Pin 13 (BCM 27)


To get maximum performance from your hardware, please make sure you'll meet the following requirements.


We designed Sensor Shield to work with Raspberry Pi. Alternatively, you may wish to use any Raspberry Pi pin compatible device as host.

Operating System

You can use Sensor Shield with any operating system that supports I2C communication and GPIO control. We officially support Raspbian and Windows 10 IoT Core operating systems.

Development Environment

Sensor Shield's Raspbian library supports Python. You can write Python code in any text editor including terminal.

On the other hand, Windows 10 IoT Core library of Sensor Shield supports C#.

Follow documentation for requirements and installation.