quiqueck / homebridge-homekit-proxy Goto Github PK
View Code? Open in Web Editor NEWThis project forked from martinpham/homebridge-homekit-controller
Control Apple's HomeKit devices via Homebridge
License: MIT License
This project forked from martinpham/homebridge-homekit-controller
Control Apple's HomeKit devices via Homebridge
License: MIT License
Hello, I god device Id trough scan and IP from my router list, but how can I find the port?
Thanks
Can command as just homekit pair
I found and selected my device, it's already removed from homekit and I get the below error readout. Any ideas?
/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/protocol/pairing-protocol.js:222
throw new Error(M4: Error: ${tlv.get(Types.kTLVType_Error).readUInt8(0)}
);
^
Error: M4: Error: 2
at PairingProtocol.parsePairSetupM4 (/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/protocol/pairing-protocol.js:222:19)
at HttpClient.finishPairing (/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/transport/ip/http-client.js:87:36)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async HttpClient.pairSetup (/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/transport/ip/http-client.js:102:9)
at async /usr/lib/node_modules/homebridge-homekit-proxy/cli.js:134:17
Hey, I'm getting an error with your program as well as the original repository by MartinPham.
It says that the address family is not supported by protocol. I assumed it was due to ipv6 but I tried disabling it with net.ipv6.conf.all.disable_ipv6 = 1
in sysctl.conf but as you can see below it's not fixing anything.
root@homebridge-vm:/var/lib/homebridge $ ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:91:92:49:2f txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.1.0.34 netmask 255.255.255.0 broadcast 10.1.0.255
ether 00:15:5d:00:66:00 txqueuelen 1000 (Ethernet)
RX packets 74439 bytes 24435769 (24.4 MB)
RX errors 0 dropped 234 overruns 0 frame 0
TX packets 5975 bytes 1856188 (1.8 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 140 bytes 21998 (21.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 140 bytes 21998 (21.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
root@homebridge-vm:/var/lib/homebridge $ homekitPair -i eth0
/opt/homebridge/lib/node_modules/homebridge-homekit-proxy/node_modules/@abandonware/noble/lib/hci-socket/hci.js:80
this._socket = new BluetoothHciSocket();
^
Error: EAFNOSUPPORT, Address family not supported by protocol
at new Hci (/opt/homebridge/lib/node_modules/homebridge-homekit-proxy/node_modules/@abandonware/noble/lib/hci-socket/hci.js:80:18)
at new NobleBindings (/opt/homebridge/lib/node_modules/homebridge-homekit-proxy/node_modules/@abandonware/noble/lib/hci-socket/bindings.js:25:15)
at module.exports (/opt/homebridge/lib/node_modules/homebridge-homekit-proxy/node_modules/@abandonware/noble/lib/resolve-bindings.js:13:12)
at Object.<anonymous> (/opt/homebridge/lib/node_modules/homebridge-homekit-proxy/node_modules/@abandonware/noble/index.js:2:51)
at Module._compile (node:internal/modules/cjs/loader:1105:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18) {
errno: 97,
code: 'EAFNOSUPPORT',
syscall: 'socket'
}
Just trying to find out the state of your plugin. It's a great concept and I see posts requesting similar functionality regularly! Thanks for the time in making this.
I've installed and tried it out. Discovery seems to work but the pairing fails on all devices with the same error:
(node:11449) UnhandledPromiseRejectionWarning: Error: M2: Error: 6
at PairingProtocol.parsePairSetupM2 (/usr/local/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/protocol/pairing-protocol.js:173:19)
at HttpClient.startPairing (/usr/local/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/transport/ip/http-client.js:64:37)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at async HttpClient.pairSetup (/usr/local/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/transport/ip/http-client.js:102:34)
at async /usr/local/lib/node_modules/homebridge-homekit-proxy/cli.js:134:17
(Use `node --trace-warnings ...` to show where the warning was created)
(node:11449) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:11449) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
I'm using homebridge-alexa to enable my devices on that service, which led to an intriguing problem. All my Homekit devices registered on HomeBridge are initially named C-8
. Now, I can change the name in different places on HomeBridge and the new name is picked up by the Google Smart Home plugin. However, iOS Home and Alexa still receive the device name as C-8
. In Home it isn't an issue. Alexa, however, needs the names to be unique and it is receiving all devices with the name C-8
. So only the first device is accepted and the rest are discarded.
Other plugins do this as well. One discussion on the homebridge-alexa page suggest that adding support for the configuredName
characteristic would solve the issue. I wish I knew how to do this ... otherwise I'd put in a pull request. :)
The suggestion is to do it something like this:
Line 367
(this.services[uniq_id].service.getCharacteristic(this.Characteristic.ConfiguredName) ||
Anyhow, thanks for your time.
homekitPair finds the device.
After entering the pin i get folowing error:
Enter PIN for MSS510-xxxx (XXX-XX-XXX or XXXX-XXXX or XXXXXXXX): 25502345
Pin: 255-02-345
(node:6438) UnhandledPromiseRejectionWarning: Error: M2: Error: 6
at PairingProtocol.parsePairSetupM2 (/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/protocol/pairing-protocol.js:173:19)
at HttpClient.startPairing (/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/transport/ip/http-client.js:64:37)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
at async HttpClient.pairSetup (/usr/lib/node_modules/homebridge-homekit-proxy/node_modules/hap-controller/lib/transport/ip/http-client.js:102:34)
at async /usr/lib/node_modules/homebridge-homekit-proxy/cli.js:134:17
(Use node --trace-warnings ...
to show where the warning was created)
(node:6438) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict
(see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:6438) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Any Suggestion?
Thx,
Martin
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.