Skip to content

dcmartin/feeva

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌡 - feeva

Perform facial detection and provide thermal measurement for humans. Put in bathroom for automated and touchless temperature estimation.

  1. Use raspi-config to enable I2C interface
  2. Connect display, camera, and thermal sensor
  3. Install docker and git
  4. Clone this repository
  5. Change directory and run make

🚧 UNDER CONSTRUCTION 🚧

Status

Build Status Coverage Status

Parts

Step 1 - Enable I2C interface

The serial connection may need to be enabled; use the raspi-config command-line program; for example:

% sudo raspi-config

A terminal-based interface will launch and provide menu options to enable the I2C interface; for example:

Step 2 - Connect thermal sensor

The thermal sensor has standard GPIO labeled connections as well as small receivers on either side of the board.

The thermal sensor connects to the GPIO pins on the RaspberryPi using a STEMMA cable.

This cable connects to the RaspberryPi using four (4) GPIO pins; the recommended connections are:

Raspberry Pi PIN Color Termal
3.3V current 1 RED VCC
Serial data 3 BLUE SDA
Serial clock 5 YELLOW SCL
Ground 9 BLACK GND

Step 3 - Connect OLED display connection

The OLED display connects to the GPIO pins on the RaspberryPi using the provided cable which attaches the side of the OLED display; see table and image below.

Raspberry Pi PIN Color RGB OLED
3.3V current 17 RED VCC
GPIO24 18 GREEN DC
MOSI 19 BLUE DIN
Ground 20 BLACK GND
GPIO25 22 WHITE RST
SCLK 23 YELLOW CLK
CE0 24 ORANGE CS

Step 4 - Connect V2 camera module

Install the Raspberry Pi Camera module by inserting the cable into the Raspberry Pi.

The cable slots into the connector situated between the Ethernet and HDMI ports, with the silver connectors facing the HDMI port.

✅ - Assembly complete

Step 5 - Install software

Setup a RaspberryPi 3/4 with Raspbian Buster and access using ssh over the WiFi or wired Ethernet connection; once connected, run the following commands:

# appropriate for older devices which may need firmware upgrade
sudo rpi-update 
# enable I2C interface
sudo raspi-config
# update and upgrade everything
sudo apt update -qq -y
sudo apt full-upgrade -qq -y
# install minimal tooling
sudo apt install -qq -y git curl jq make
# install docker
curl -fsSL https://get.docker.com -o get-docker.sh
chmod 755 get-docker.sh
sudo ./get-docker.sh
# create local repository clone
mkdir -p ~/GIT/feeva
cd ~/GIT
git clone http://github.com/dcmartin/feevat.git
# build it
cd ~/GIT/feeva
make
# start it
make start

Further Information

RaspberryPi GPIO reference

Changelog & Releases

Releases are based on Semantic Versioning, and use the format of MAJOR.MINOR.PATCH. In a nutshell, the version will be incremented based on the following:

  • MAJOR: Incompatible or major changes.
  • MINOR: Backwards-compatible new features and enhancements.
  • PATCH: Backwards-compatible bugfixes and package updates.

Authors & contributors

David C Martin (github@dcmartin.com)

CLOC

Language files blank comment code
C 25 1305 1744 18279
Bourne Shell 11 1792 2941 15879
C/C++ Header 13 439 1383 4904
m4 2 114 28 1082
Python 3 118 28 428
Markdown 2 69 0 206
make 4 23 5 66
-------- -------- -------- -------- --------
SUM: 60 3860 6129 40844

Stargazers

Stargazers over time