Create (templateable) cameras that display qr codes in homeassistant

Overview

QRCam

License

hacs Project Maintenance

This custom component creates cameras displaying qrcodes. The QRCodes can be static or generated from templates. If you use a template as content the camera will update with a new qr code when the template updates.

This component will set up the following platforms.

Platform Description
qrcam Display QRCodes in Camera entites.

Installation

Configuration

Example configuration.yaml entry:

camera:
 - platform: qrcam
   name: "Test Camera"
   content: "Hello World"

another a bit more complicated example using a template:

camera:
 - platform: qrcam
   name: "Test Camera 2"
   content: "{{states('input_boolean.karl')}}"
   fill_color: "0,255,0"
   back_color: "0,0,0"

displaying a wifi qr code (replace {SSID} and {PASSWORD}):

camera:
 - platform: qrcam
   name: "WIFI"
   content: "WIFI:S:{SSID};T:WPA;P:{PASSWORD};;"

Following is configurable:

Name Description Required Type Default
name The name of the Camera Yes String -
content The content that shall be encoded (can be template) Yes Template -
version The "Version" of the qr code (which is basically the size) No int between 1 and 40 Auto
error_correction How much error correction the QRCode should have No see Error Corretion ERROR_CORRECT_M
box_size The size of the Black Boxes in pixel No Positive Integer 10
border Border arround the code No Integer > 3 4
fill_color RGB Color for the (normaly black) parts of the QRCode No String of form "r,g,b" "0,0,0"
back_color RGB Color for the background of the QRCode No String of form "r,g,b" "255,255,255"
edge_color RGB Color for the edge of the qr code (only used if color_mask is radial or square) No String of form "r,b,g" "0,0,0"
left_color RGB Color for the left side of the qr code (only used if color_mask is horizontal or vertical) No String of form "r,g,b" "0,0,0"
right_color RGB Color for the right side of the qr code (only used if color_mask is horizontal or vertical) No String of form "r,g,b" "0,0,0"
color_mask Mask for the Colors of the QR Code No See Color Mask "solid"
drawer Options on how to render the QR Code No See Rendering "square"

Error Correction

The error_correction parameter controls the error correction used for the QR Code.

Name Discription
ERROR_CORRECT_L About 7% or less errors can be corrected.
ERROR_CORRECT_M About 15% or less errors can be corrected.
ERROR_CORRECT_Q About 25% or less errors can be corrected.
ERROR_CORRECT_H About 30% or less errors can be corrected.

Color Mask

masks

Name Number in Image
solid 1
radial 2
square 3
horizontal 4
vertical 5
(WIP) 6

Rendering

drawers

Name Number in Image
square 1
gapped_square 2
circle 3
rounded 4
vertical_bars 5
horizontal_bars 6


Most of this Project is based on the qrcode module for python

You might also like...
A dashboard for Raspberry Pi to display environmental weather data, rain radar, weather forecast, etc. written in Python
A dashboard for Raspberry Pi to display environmental weather data, rain radar, weather forecast, etc. written in Python

Weather Clock for Raspberry PI This project is a dashboard for Raspberry Pi to display environmental weather data, rain radar, weather forecast, etc.

A ch341dll Wrap is for using in Python 32bits windows  to access I2C SPI and MDIO (by GPIO), and Demo with display PC sreen on OLED by i2c or SPI .
A ch341dll Wrap is for using in Python 32bits windows to access I2C SPI and MDIO (by GPIO), and Demo with display PC sreen on OLED by i2c or SPI .

ch341dll_wrap_typcal_app A ch341dll Wrap is for using in Python 32bits windows to access I2C SPI and MDIO (by GPIO). In addition, I provided 3 Demo. I

Pi-hole with Inky pHAT ePaper display
Pi-hole with Inky pHAT ePaper display

Pi-hole with Inky pHAT ePaper display This is my Pi-hole with an ePaper display.

Python information display framework aimed at e-ink devices
Python information display framework aimed at e-ink devices

My display, using a Raspberry Pi Zero W and Waveshare 6" e-paper hat infodisplay Modular information display framework aimed at e-ink devices. Built u

Python application, displaying currently played track from Spotify on OLED display connected via I2C
Python application, displaying currently played track from Spotify on OLED display connected via I2C

RaspberryPi Spotify OLED Display This application will display currently played track on SSD1306 OLED display connected to RaspberryPi. Displayed stuf

Tool to create 3D printable terrain with integrated path/road part files (Single material 3d printer)

BACKGROUND This has been an ongoing project of mine for a few months now. I run trails a lot and original the goal was to create a function to combine

Pihole-eink-display - A simple Python script to display PiHole statistics on an eInk Display
Pihole-eink-display - A simple Python script to display PiHole statistics on an eInk Display

Pihole-eink-display - A simple Python script to display PiHole statistics on an eInk Display

🐱 Petkit feeder components for HomeAssistant

Petkit for HomeAssistant Installing Download and copy custom_components/xiaomi_miot folder to custom_components folder in your HomeAssistant config fo

HomeAssistant - Polyaire AirTouch 4 Integration

HomeAssistant - Polyaire AirTouch 4 Integration Custom integration to add an AirTouch 4 AC Controller Installation: Copy contents of custom_components

HomeAssistant Linux Companion

Application to run on linux desktop computer to provide sensors data to homeasssistant, and get notifications as if it was a mobile device.

A python script for Homeassistant that counts down the days to birthdays, anniversaries etc
A python script for Homeassistant that counts down the days to birthdays, anniversaries etc

Date Countdown A python script for Homeassistant that counts down the days to birthdays, anniversaries etc Important note I no longer use homeassistan

Python Wrapper for Homeassistant's REST API
Python Wrapper for Homeassistant's REST API

HomeassistantAPI Python Wrapper for Homeassistant's REST API Please ⭐️ the repo if you find this project useful or cool! Here is a quick example. from

An IoT Trivia app that shows you how to take a JSON web API such as the opentdb.com API and stream and display it on a FeatherS2 in an OLED display.
An IoT Trivia app that shows you how to take a JSON web API such as the opentdb.com API and stream and display it on a FeatherS2 in an OLED display.

CircuitPython IoT Trivia ESP32-S2 OLED Version An IoT Trivia app that shows you how to take a JSON web API such as the opentdb.com API and stream and

Adjust the white point, gamma or make your XDR display darker without losing HDR peak luminance or the ability to adjust display brightness

XDR Tuner Adjust the white point, gamma or make your XDR display darker without losing HDR peak luminance or the ability to adjust display brightness

TB Set color display - Add-on for Blender to set multiple objects and material Display Color at once.
TB Set color display - Add-on for Blender to set multiple objects and material Display Color at once.

TB_Set_color_display Add-on for Blender with operations to transfer name between object, data, materials and action names Set groups of object's or ma

Create a low powered, renewable generation forecast  display with a Raspberry Pi Zero & Inky wHAT.
Create a low powered, renewable generation forecast display with a Raspberry Pi Zero & Inky wHAT.

GB Renewable Forecast Display This Raspberry Pi powered eInk display aims to give you a quick way to time your home energy usage to help balance the g

This project is a proof of concept to create a dashboard using Dash to display information about various cryptocurrencies.

This project is a WIP as a way to display useful information about cryptocurrencies. It's currently being actively developed as a proof of concept, and a way to visualize more useful data about various cryptocurrencies.

Home Assistant custom component for viewing IP cameras RTSP stream in real time using WebRTC technology
Home Assistant custom component for viewing IP cameras RTSP stream in real time using WebRTC technology

WebRTC Camera Home Assistant custom component for viewing IP cameras RTSP stream in real time using WebRTC technology. Based on: Pion - pure Go implem

 Frigate - NVR With Realtime Object Detection for IP Cameras
Frigate - NVR With Realtime Object Detection for IP Cameras

A complete and local NVR designed for HomeAssistant with AI object detection. Uses OpenCV and Tensorflow to perform realtime object detection locally for IP cameras.

Comments
  • Unable to find services.yaml for the qrcam integration

    Unable to find services.yaml for the qrcam integration

    Version of the custom_component

    v1.0.0.10-hotfix

    Configuration

    camera:
      - platform: qrcam
        name: "Guest WiFi"
        content: "WIFI:S:ssid;T:WPA;P:password;;"
        drawer: "rounded"
    

    Describe the bug

    On startup of Home Assistant the following warning appears in the log:

    2022-06-02 13:42:59 WARNING (SyncWorker_2) [homeassistant.helpers.service] Unable to find services.yaml for the qrcam integration
    

    As suggested here https://github.com/home-assistant/core/issues/23197 the way to fix this is to add an empty services.yaml file.

    Debug log

    n/a

    opened by exxamalte 0
  • Color Parameters not working

    Color Parameters not working

    camera:

    • platform: qrcam name: "GastWlanQRCode" content: "{{states('input_text.gastwlan_qr_code')}}" fill_color: "255,255,255" back_color: "0,0,0"

    wont change the color! still white background and black QRCode

    bug 
    opened by xXDjMikeXx 2
Releases(v1.0.0.10-hotfix)
  • v1.0.0.10-hotfix(Apr 3, 2022)

    This should fix #3. There are major flaws in the python-qrcode package and it does not seem like the developer is active anymore. I think that they have a dependency on pillow which is not bound to a version. This caused many problems. I will have to look into that in more detail. But generation of qr codes with only fill and back color should work fine.

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0(Jan 16, 2022)

  • v0.0.2(Jan 15, 2022)

  • v0.0.1(Jan 15, 2022)

Owner
Jannes Müller
CS Student
Jannes Müller
Play a song with a 3D printer.

MIDI to GCODE Play a song with a FDM 3D printer. SLA printers don't have motors, so they cannot play music. Warning: Be ready to turn off the 3D print

Patrick 6 Apr 11, 2022
Shotgrid Toolkit Engine for Gaffer

Shotgun toolkit engine for Gaffer Contact : Diego Garcia Huerta Overview Implementation of a shotgun engine for Gaffer. It supports the classic bootst

Diego Garcia Huerta 12 May 21, 2022
Programmable Rainbow Redstone Computer

Programmable Rainbow Redstone Computer Table of contents What is it? Program flasher How to use it What is it? PRRC is Programmable Rainbow Redstone C

Fern H 2 Jun 07, 2022
This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC

About This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC, issue #56 and f

Philippe Teuwen 28 Nov 21, 2022
Python para microcontroladores com MicroPyhton

MicroPython - PyBR2021 Python para microcontroladores com MicroPyhton Repositório de exemplos para tutorial "Python para microcontroladores com MicroP

gabriel aragão 1 Oct 18, 2021
LT-OCF: Learnable-Time ODE-based Collaborative Filtering, CIKM'21

LT-OCF: Learnable-Time ODE-based Collaborative Filtering Our proposed LT-OCF Our proposed dual co-evolving ODE Setup Python environment for LT-OCF Ins

Jeongwhan Choi 15 Dec 28, 2022
Automatic Watering System using Soil Moisture Sensor and RTC Timer with Arduino

Automatic-Watering-System - Technical Answers to Real-World Problems. Evolution of Watering Manually to Watering Automatically.

Vaishnavi Pothugunta 4 Dec 31, 2021
BoneIO is a compact IO controller for home automation.

Project description BoneIO is a compact IO controller for home automation. Main features of this controller are Compact size (27x11x6)cm - 15 DIN modu

Maciej Krasuski 120 Nov 30, 2022
Count the number of people around you 👨‍👨‍👦 by monitoring wifi signals 📡 .

howmanypeoplearearound Count the number of people around you 👨‍👨‍👦 by monitoring wifi signals 📡 . howmanypeoplearearound calculates the number of

Zack 6.7k Jan 07, 2023
A Home Assistant sensor that tells you what holiday is next

Next Holiday Sensor This sensor tells you what holiday is coming up next. You can use it to set holiday light colors or other scenes. The state of the

Nick Touran 20 Dec 04, 2022
Kwcpu - An unobtrusive CPU meter that fits in the default Windows 11 taskbar. Supports up to 32 cores.

kwcpu An unobtrusive CPU meter that fits in the default Windows 11 taskbar. Supports up to 32 cores. kwcpu is provided as a Rainmeter skin. By default

Jay Oster 2 Nov 07, 2022
Trajectory optimization package for Mini-Pupper robot

Trajectory optimization package for Mini-Pupper robot Purpose of this repository is to provide low-torque and low-impact trajectory for Mini-Pupper qu

Sotaro Katayama 38 Aug 17, 2022
iot-dashboard: Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things.

Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things. Written in Python. Flask applicati

2 Jul 29, 2022
Simple Python script to decode and verify an European Health Certificate QR-code

A simple Python script to decode and verify an European Health Certificate QR-code.

Mathias Panzenböck 61 Oct 05, 2022
a fork of the OnionShare software better optimized for lower spec lightweight machines and ARM processors

OnionShare-Optimized A fork of the OnionShare software better optimized for lower spec lightweight machines and ARM processors such as Raspberry Pi or

ALTPORT 4 Aug 05, 2021
Adafruit IO connected smart thermostat based on CircuitPython.

Adafruit IO Thermostat Adafruit IO connected smart thermostat based on CircuitPython. Background and Motivation I have a 24 V Heat-only system with a

Shubham Chaudhary 1 Jan 18, 2022
Home Assistant custom components MPK-Lodz

MPK Łódź sensor This sensor uses unofficial API provided by MPK Łódź. Configuration options Key Type Required Default Description name string False MP

Piotr Machowski 3 Nov 01, 2022
MPY tool - manage files on devices running MicroPython

mpytool MPY tool - manage files on devices running MicroPython It is an alternative to ampy Target of this project is to make more clean code, faster,

Pavel Revak 5 Aug 17, 2022
HomeAssistant - Polyaire AirTouch 4 Integration

HomeAssistant - Polyaire AirTouch 4 Integration Custom integration to add an AirTouch 4 AC Controller Installation: Copy contents of custom_components

7 Aug 05, 2022
MicroPython driver for 74HC595 shift registers

MicroPython 74HC595 A MicroPython library for 74HC595 8-bit shift registers. There's both an SPI version and a bit-bang version, each with a slightly

Mike Causer 17 Nov 29, 2022