Let any device connect to HomeKit.

Overview

homekit-bridge

license

Introduction

A HomeKit gateway specially designed for embedded devices, it allows you to connect non-HomeKit devices to HomeKit through simple configuration.

Code style

HomeKit bridge supports code style checking, the checker is cpplint, a command line tool that checks for style issues in C/C++ files according to the Google C++ Style Guide.

Build

Clone the repo

Add --recursive to initialize submodules in the clone.

    git clone --recursive https://github.com/KNpTrue/homekit-bridge.git

Platform Linux (Ubuntu)

  1. Install dependencies:

    $ sudo apt install cmake ninja-build clang libavahi-compat-libdnssd-dev libssl-dev python3-pip
    $ pip3 install cpplint
  2. Compile and run:

    $ mkdir build
    $ cd build
    $ cmake -G Ninja .. && ninja
    $ ./platform/linux/homekit-bridge
  3. Run the example

    $ ./platform/linux/homekit-bridge -d example_scripts

Platform ESP

  1. Set up the host environment and ESP-IDF (v4.3-beta3) as per the steps given here.

  2. ESP-IDF currently uses MbedTLS 2.16.x, whereas HomeKit ADK requires 2.18. A branch mbedtls-2.16.6-adk is being maintained here which has the required patches from 2.18, on top of 2.16.6. To switch to this, follow these steps:

    $ cd $IDF_PATH/components/mbedtls/mbedtls
    $ git pull
    $ git checkout -b mbedtls-2.16.6-adk origin/mbedtls-2.16.6-adk
  3. You can use homekit-bridge with any ESP32 or ESP32-S2 board. Compile, flash and connect to console as below:

    $ cd /path/to/homekit-bridge/platform/esp
    $ export ESPPORT=/dev/tty.SLAB_USBtoUART  # Set your board's serial port here
    $ idf.py set-target <esp32/esp32s2>
    $ idf.py flash
    $ idf.py monitor
  4. Use join command to configure Wi-Fi:

    esp32 > join "<ssid>" "<password>"

Usage

TODO

License

MIT © 2021 KNpTrue and homekit-bridge contributors.

Owner
Zebin Wu
Zebin Wu
Control your older LG TV via HomeKit

LG TV Controller for HomeKit Flash to an M5Atom RS232 Kit, and add your LG TV to your HomeKit home. Should work with most other ESP32 kits as well. Qu

null 5 Nov 7, 2021
Dummy code for using an ESP32 as a lightbulb in Apples HomeKit.

ESP32 HomeKit Lightbulb A dummy implementation of a HomeKit lightbulb using the ESP HomeKit SDK by Espressif for the ESP32. Prerequisites PlatformIO U

Louis Meyer 2 Apr 27, 2022
HomeKit connected smart thermostat based on Arduino using HomeSpan.

HomeSpan Thermostat HomeKit connected smart thermostat based on Arduino using HomeSpan. Background and Motivation I have a 24 V Heat-only system with

Shubham Chaudhary 4 May 18, 2022
BMI_automatics-faceshielding-device - this is a project utilizing STM32, MATLAB,Softmax classifier to achieve a portable face shielding(mask) device

BMI_automatics-faceshielding-device this is a project utilizing STM32, MATLAB,Softmax classifier to achieve a portable face shielding(mask) device in

Lyu Tian 2 Dec 23, 2021
Add virtual monitors to your windows 10 device! Works with Oculus software, obs, and any desktop sharing software

License MIT and CC0 or Public Domain, whichever is least restrictive -- Use it AS IS - NO IMPLICIT OR EXPLICIT warranty This may break your computer,

Rashi Abramson 162 Jun 21, 2022
Doom port to the Ikea Tradfri RGB1923R5 and any device using Silicon labs EFR32MG21 based modules

MG21DOOM Doom port to the Ikea Tradfri RGB1923R5 lamp and any device using Silicon labs EFR32MG21 based modules. Coded by Nicola Wrachien. WARNING Do

null 17 Apr 27, 2022
control any electrical device.

let's build something together ?? You get: ?? Requirements: arduino IDE bread board NodeMcu8266 cp2102 1Chanel 5v relay Female female 20cm jumper wire

Milad Dehghan 13 Mar 5, 2022
I modified the colmap,when it reconstructs from known pose ,only let it optimize rotation ,fixing position!

Mapping-base-lidar-pose-or-vslam-pose I simply modified the colmap,when it reconstructs from known pose ,only let it optimize rotation ,fixing positio

李城(大橙子) 19 Jun 20, 2022
Let's make a text editor like in the 70's

baracle Let's make a text editor like in the 70's Installation Arch Linux and derivatives (AUR) Stable package: baracle Use an AUR helper or git clone

Mirko Rovere 3 Feb 27, 2022
Crafter-C- - This might be a game, let's find out

Crafter Status update: This was a nightmare so I'm not going to finish it, but feel free to use the code This is Crafter, I'm not sure if I'll finish

null 2 Dec 23, 2021
Let's upgrade cheap off-the-shelf robotic mowers to modern, smart RTK GPS based lawn mowing robots!

OpenMower Join the Discord server for OpenMower discussion: HERE About the Project ⚠️ DISCLAIMER: IF YOU ARE NOT 100% SURE WHAT YOU ARE DOING, PLEASE

Clemens Elflein 3.1k Jun 26, 2022
Loads a signed kernel driver which allows you to map any driver to kernel mode without any traces of the signed / mapped driver.

CosMapper Loads a signed kernel driver (signed with leaked cert) which allows you to map any driver to kernel mode without any traces of the signed /

null 103 Jun 20, 2022
Automatically load dlls into any executables without replacing any files!

Automatically loaded dll using xinput9_1_0 proxy. Please put the modified xinput9_1_0.dll in the executable's directory.

null 11 Apr 17, 2022
Create a calculator of any kind in any language, create a pr.

calculators Create a calculator of any kind in any language, create a pr. Create a calculator of any type using the programming language of your choic

Akshay Gautam 2 Dec 1, 2021
ESP32 software USB host through general IO pins. We can connect up to 4 USB-LS HID (keyboard mouse joystick) devices simultaneously.

esp32_usb_soft_host esp32 USB-LS pure software host thru general IO pins. Up to 4 HID devices simultaneously. board ~$3 :https://www.aliexpress.com/pr

Samsonov Dima 260 Jun 16, 2022
Learn how to connect your Flexispot (LoctekMotion) desk to the internet. This repository contains a collection of scripts to get your started, combined with research and instructions.

(image source: Windows Central) Turn your LoctekMotion/FlexiSpot desk into a smart desk Recently I acquired a new standing desk from FlexiSpot. During

Mick Vleeshouwer 147 Jun 21, 2022
Dongle to connect a bluetooth PS3 controller to the Gamecube 🎮

GamecubeBT An arduino based bridge to connect a bluetooth PS3 controller to the Gamecube. Homemade Wavebirds, because the TV is too far from the couch

Jeannot 18 Jun 18, 2022
ESP8266 software USB host through general IO pins. We can connect up to 2 USB-LS HID (keyboard mouse joystick) devices simultaneously.

esp8266_usb_soft_host Test for esp8266 usb host . Works with ESP-IDF v3.4 80MHz and 160MHz. WorkInProgress Test run with mouse & combined mouse & keyb

Samsonov Dima 25 Apr 21, 2022