Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
Looks like you are making progress. Did you setup the config file like it explains on that github page?
Finally, hey :D Which config file mate? I’ve looked at so many github pages and so many files and commands that everything now is a blur o_O:confused:
 

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
I’ll have a look tonight. Right now gotta clean up after 6 hours of making Ravioli - and after all that made far too little :rolleyes: If I thought installing Homebridge was difficult, ravioli is in a different league of pain!
 
  • Like
Reactions: Weaselboy

Weaselboy

Moderator
Staff member
Jan 23, 2005
34,206
15,761
California
I’ll have a look tonight. Right now gotta clean up after 6 hours of making Ravioli - and after all that made far too little :rolleyes: If I thought installing Homebridge was difficult, ravioli is in a different league of pain!
Now you have my interest! Is this homemade ravioli with your own fresh pasta?
 

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
Now you have my interest! Is this homemade ravioli with your own fresh pasta?
Absolutely. Homemade eggless pasta, spinach and ricotta filling and a Pomodoro sauce. I’m a vegetarian - and that includes no eggs (potential of life and all that stuff...). It was my first time and what a struggle it was!

We’ve digressed from Homebridge stuff to homemade stuff:D
 
  • Like
Reactions: Weaselboy

Weaselboy

Moderator
Staff member
Jan 23, 2005
34,206
15,761
California
When you login to the Pi, you should be in the ~ home folder. Your should see
pi@raspberrypi:~ $ then the cursor.

So if you run nano text editor like this "nano ~/.homebridge/config.json" (without the quotes) it should bring up the config file in the text editor. That ~ tilde is to the left of the 1 key and shifted.
 
  • Like
Reactions: scouser75

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
Thanks WB. So all that's left for me to do is enter that line you gave above, and then that's it's???

Well, apart from also trying to get the ring plug in to work!
 

Weaselboy

Moderator
Staff member
Jan 23, 2005
34,206
15,761
California
Thanks WB. So all that's left for me to do is enter that line you gave above, and then that's it's???

Well, apart from also trying to get the ring plug in to work!
Yes... I'm hoping once you get that default config file setup it will allow you to launch homebridge.
 
  • Like
Reactions: scouser75

JCoe13

macrumors 6502
Sep 9, 2014
351
507
Chicago, IL
Does anyone have experience getting Nest cams to work with Homebridge? i finally got Homebridge to stop crashing when i click on a camera, but it doesn't show a live feed. it just updates the image to that second and then the image freezes.
 

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
When you login to the Pi, you should be in the ~ home folder. Your should see
pi@raspberrypi:~ $ then the cursor.

So if you run nano text editor like this "nano ~/.homebridge/config.json" (without the quotes) it should bring up the config file in the text editor. That ~ tilde is to the left of the 1 key and shifted.
I’m back at it again. I entered as you advised above and here’s what I got What have I done wrong this time?
 

Attachments

  • 56F212A1-B562-4F0B-B2C5-6FA877E8251B.jpeg
    56F212A1-B562-4F0B-B2C5-6FA877E8251B.jpeg
    100 KB · Views: 219
  • 20E24D93-39E0-4239-9CEC-F3087E3AF886.jpeg
    20E24D93-39E0-4239-9CEC-F3087E3AF886.jpeg
    78.9 KB · Views: 149

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
nano ~/.homebridge/config.json

You need to run this with that ~ tilde there, not the word home.
Strange! I did run it exactly as you advised so no idea why it says 'home'!!!

I tried several times too. Should I try going through the whole apt-get update route again? Maybe start from scratch?

Edit - I had a thought - over here in the UK, the tilde key ~ is to the left of the Z. However, when entering it directly from the Pi, it's the key to the left of the Return key. So I used that key.
 

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
I'm back at it again. And a major good thing - I can FINALLY control the Pi via my Mac. What a relief! I was using the Pi on an ironing board connected to the TV next to it in my loft room (it is a proper room though, honest)! :eek:

And here is where I am right now. I'm falling down at Part 3 Create Docker Compose Manifest. I get this message:
pi@raspberrypi:~/homebridge $ mkdir /home/pi/homebridge

mkdir: cannot create directory ‘/home/pi/homebridge’: File exists




And this is the entire process up to Part 3:

pi@raspberrypi:~ $ sudo apt-get -y install python-setuptools && sudo easy_install pip && sudo pip install docker-compose

Reading package lists... Done

Building dependency tree

Reading state information... Done

python-setuptools is already the newest version (33.1.1-1).

python-setuptools set to manually installed.

The following packages were automatically installed and are no longer required:

libuv1 lxkeymap python-cairo python-gobject python-gobject-2 python-gtk2

python-xklavier

Use 'sudo apt autoremove' to remove them.

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Searching for pip

Best match: pip 9.0.1

Adding pip 9.0.1 to easy-install.pth file

Installing pip script to /usr/local/bin

Installing pip2.7 script to /usr/local/bin

Installing pip2 script to /usr/local/bin


Using /usr/lib/python2.7/dist-packages

Processing dependencies for pip

Finished processing dependencies for pip

Collecting docker-compose

Downloading https://files.pythonhosted.org/pack...fb/docker_compose-1.21.2-py2.py3-none-any.whl (123kB)

100% |████████████████████████████████| 133kB 1.2MB/s

Collecting PyYAML<4,>=3.10 (from docker-compose)

Downloading https://files.pythonhosted.org/pack...c635d36245a72a6a69b23b383a/PyYAML-3.12.tar.gz (253kB)

100% |████████████████████████████████| 256kB 619kB/s

Requirement already satisfied: requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1 in /usr/lib/python2.7/dist-packages (from docker-compose)

Collecting websocket-client<1.0,>=0.32.0 (from docker-compose)

Downloading https://files.pythonhosted.org/pack.../websocket_client-0.48.0-py2.py3-none-any.whl (198kB)

100% |████████████████████████████████| 204kB 1.0MB/s

Requirement already satisfied: ipaddress>=1.0.16; python_version < "3.3" in /usr/lib/python2.7/dist-packages (from docker-compose)

Collecting backports.ssl-match-hostname>=3.5; python_version < "3.5" (from docker-compose)

Downloading https://files.pythonhosted.org/pack...3/backports.ssl_match_hostname-3.5.0.1.tar.gz

Collecting docker<4.0,>=3.3.0 (from docker-compose)

Downloading https://files.pythonhosted.org/pack...b060371b6f9/docker-3.4.0-py2.py3-none-any.whl (122kB)

100% |████████████████████████████████| 122kB 1.5MB/s

Collecting dockerpty<0.5,>=0.4.1 (from docker-compose)

Downloading https://files.pythonhosted.org/pack...98fe8b06f44becc028d3ba/dockerpty-0.4.1.tar.gz

Collecting texttable<0.10,>=0.9.0 (from docker-compose)

Downloading https://files.pythonhosted.org/pack...84ef7abd30d1eae00a4d80/texttable-0.9.1.tar.gz

Requirement already satisfied: enum34<2,>=1.0.4; python_version < "3.4" in /usr/lib/python2.7/dist-packages (from docker-compose)

Requirement already satisfied: six<2,>=1.3.0 in /usr/lib/python2.7/dist-packages (from docker-compose)

Collecting jsonschema<3,>=2.5.1 (from docker-compose)

Downloading https://files.pythonhosted.org/pack...d2912da/jsonschema-2.6.0-py2.py3-none-any.whl

Collecting docopt<0.7,>=0.6.1 (from docker-compose)

Downloading https://www.piwheels.org/simple/docopt/docopt-0.6.2-py2.py3-none-any.whl

Collecting cached-property<2,>=1.2.0 (from docker-compose)

Downloading https://files.pythonhosted.org/pack...0e/cached_property-1.4.3-py2.py3-none-any.whl

Collecting docker-pycreds>=0.3.0 (from docker<4.0,>=3.3.0->docker-compose)

Downloading https://files.pythonhosted.org/pack...ab5/docker_pycreds-0.3.0-py2.py3-none-any.whl

Collecting functools32; python_version == "2.7" (from jsonschema<3,>=2.5.1->docker-compose)

Downloading https://files.pythonhosted.org/pack...f47c3502ef034365db/functools32-3.2.3-2.tar.gz

Building wheels for collected packages: PyYAML, backports.ssl-match-hostname, dockerpty, texttable, functools32

Running setup.py bdist_wheel for PyYAML ... done

Stored in directory: /root/.cache/pip/wheels/03/05/65/bdc14f2c6e09e82ae3e0f13d021e1b6b2481437ea2f207df3f

Running setup.py bdist_wheel for backports.ssl-match-hostname ... done

Stored in directory: /root/.cache/pip/wheels/99/7e/f7/a88a9bcf7a3bd6b12cf6a74eee8c89746aaa02f71ab7b33939

Running setup.py bdist_wheel for dockerpty ... done

Stored in directory: /root/.cache/pip/wheels/e5/1e/86/bd0a97a0907c6c654af654d5875d1d4383dd1f575f77cee4aa

Running setup.py bdist_wheel for texttable ... done

Stored in directory: /root/.cache/pip/wheels/99/1e/2b/8452d3a48dad98632787556a0f2f90d56703b39cdf7d142dd1

Running setup.py bdist_wheel for functools32 ... done

Stored in directory: /root/.cache/pip/wheels/b5/18/32/77a1030457155606ba5e3ec3a8a57132b1a04b1c4f765177b2

Successfully built PyYAML backports.ssl-match-hostname dockerpty texttable functools32

Installing collected packages: PyYAML, websocket-client, backports.ssl-match-hostname, docker-pycreds, docker, dockerpty, texttable, functools32, jsonschema, docopt, cached-property, docker-compose

Successfully installed PyYAML-3.12 backports.ssl-match-hostname-3.5.0.1 cached-property-1.4.3 docker-3.4.0 docker-compose-1.21.2 docker-pycreds-0.3.0 dockerpty-0.4.1 docopt-0.6.2 functools32-3.2.3.post2 jsonschema-2.6.0 texttable-0.9.1 websocket-client-0.48.0

pi@raspberrypi:~ $ mkdir /home/pi/homebridge

pi@raspberrypi:~ $ cd /home/pi/homebridge

pi@raspberrypi:~/homebridge $ nano docker-compose.yml

pi@raspberrypi:~/homebridge $ docker-compose up -d

ERROR: Top level object in './docker-compose.yml' needs to be an object not '<type 'NoneType'>'.

pi@raspberrypi:~/homebridge $ docker-compose up -d

ERROR: Top level object in './docker-compose.yml' needs to be an object not '<type 'NoneType'>'.

pi@raspberrypi:~/homebridge $ nano docker-compose.yml

pi@raspberrypi:~/homebridge $ docker-compose logs -f

ERROR: Top level object in './docker-compose.yml' needs to be an object not '<type 'str'>'.

pi@raspberrypi:~/homebridge $ ping raspberrypi

PING raspberrypi (127.0.1.1) 56(84) bytes of data.

64 bytes from raspberrypi (127.0.1.1): icmp_seq=1 ttl=64 time=0.125 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=2 ttl=64 time=0.104 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=3 ttl=64 time=0.055 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=4 ttl=64 time=0.090 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=5 ttl=64 time=0.096 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=6 ttl=64 time=0.048 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=7 ttl=64 time=0.075 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=8 ttl=64 time=0.102 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=9 ttl=64 time=0.104 ms

^X64 bytes from raspberrypi (127.0.1.1): icmp_seq=10 ttl=64 time=0.064 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=11 ttl=64 time=0.106 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=12 ttl=64 time=0.105 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=13 ttl=64 time=0.095 ms

64 bytes from raspberrypi (127.0.1.1): icmp_seq=14 ttl=64 time=0.092 ms

^C

--- raspberrypi ping statistics ---

14 packets transmitted, 14 received, 0% packet loss, time 13512ms

rtt min/avg/max/mdev = 0.048/0.090/0.125/0.021 ms

pi@raspberrypi:~/homebridge $
 

Weaselboy

Moderator
Staff member
Jan 23, 2005
34,206
15,761
California
pi@raspberrypi:~/homebridge $ ping raspberrypi

PING raspberrypi (127.0.1.1) 56(84) bytes of data.
This looks like you are logged in to the Pi and pinging itself, and that is what you get that internal 127.0.1.1 IP.

You need to run that comment from Terminal before you login to the Pi and it will give you the Pi's IP.
 

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
This looks like you are logged in to the Pi and pinging itself, and that is what you get that internal 127.0.1.1 IP.

You need to run that comment from Terminal before you login to the Pi and it will give you the Pi's IP.

So do I turn on the Pi first and then Ping? Or Ping first and then turn on the Pi?
 

Weaselboy

Moderator
Staff member
Jan 23, 2005
34,206
15,761
California
So do I turn on the Pi first and then Ping? Or Ping first and then turn on the Pi?
Yu need to turn on the Pi and let it boot up, then ping from your mac to get the Pi's IP. Then using that IP, login to the Pi using SSH.

Normally, once you have the IP, it will stay the same and you can just login at that IP all the time.
 
  • Like
Reactions: scouser75

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
Yu need to turn on the Pi and let it boot up, then ping from your mac to get the Pi's IP. Then using that IP, login to the Pi using SSH.

Normally, once you have the IP, it will stay the same and you can just login at that IP all the time.

Does this look correct? If so, what do I now do with the IP? And then, next step?

*******:~ ***$ ping raspberrypi

PING raspberry (**.***.***.**): 56 data bytes

64 bytes from **.***.***.**: icmp_seq=0 ttl=247 time=20.600 ms

64 bytes from **.***.***.**: icmp_seq=1 ttl=247 time=22.495 ms

64 bytes from **.***.***.**: icmp_seq=2 ttl=247 time=23.698 ms

64 bytes from **.***.***.**: icmp_seq=3 ttl=247 time=25.061 ms

64 bytes from **.***.***.**: icmp_seq=4 ttl=247 time=33.141 ms
[doublepost=1529750278][/doublepost]Note: To make reading this easier, anything underlined in this post are my comments and actions taken.

And I just tried again to install the Ringdoorbell plugin. It seems I'm not the only one struggling to install this plugin.


pi@raspberrypi:~/node-v4.3.2-linux-armv6l $ sudo npm install -g homebridge--platform-ring-video-doorbell

npm ERR! Linux 4.14.34-v7+

npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "homebridge--platform-ring-video-doorbell"

npm ERR! node v4.3.2

npm ERR! npm v2.14.12

npm ERR! code E404


npm ERR! 404 Not found : homebridge--platform-ring-video-doorbell

npm ERR! 404

npm ERR! 404 'homebridge--platform-ring-video-doorbell' is not in the npm registry.

npm ERR! 404 You should bug the author to publish it (or use the name yourself!)

npm ERR! 404

npm ERR! 404 Note that you can also install from a

npm ERR! 404 tarball, folder, http url, or git url.


npm ERR! Please include the following file with any support request:

npm ERR! /home/pi/node-v4.3.2-linux-armv6l/npm-debug.log

pi@raspberrypi:~/node-v4.3.2-linux-armv6l $

===========================================================================
I then tried this command: sudo npm install -g --unsafe-perm homebridge-platform-ring-video-doorbell

These are the results. Not sure if it has worked! :


pi@raspberrypi:~/node-v4.3.2-linux-armv6l $ sudo npm install -g --unsafe-perm homebridge-platform-ring-video-doorbell


> arp-a@0.5.2 install /usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/arp-a

> node-gyp rebuild


make: Entering directory '/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/arp-a/build'

SOLINK_MODULE(target) Release/obj.target/macos.node

COPY Release/macos.node

make: Leaving directory '/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/arp-a/build'

\

> socketwatcher@0.3.0 install /usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/pcap2/node_modules/socketwatcher

> node-gyp rebuild


make: Entering directory '/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/pcap2/node_modules/socketwatcher/build'

CXX(target) Release/obj.target/socketwatcher/socket_watcher.o

../socket_watcher.cpp: In static member function ‘static void SocketWatcher::Callback(uv_poll_t*, int, int)’:

../socket_watcher.cpp:77:60: warning: v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations]

Nan::MakeCallback(watcher->handle(), callback, argc, argv);

^

In file included from ../socket_watcher.hpp:8:0,

from ../socket_watcher.cpp:5:

../../nan/nan.h:929:46: note: declared here

NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(

^~~~~~~~~~~~

SOLINK_MODULE(target) Release/obj.target/socketwatcher.node

COPY Release/socketwatcher.node

make: Leaving directory '/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/pcap2/node_modules/socketwatcher/build'


> pcap2@3.0.4 install /usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/pcap2

> node-gyp rebuild


make: Entering directory '/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/pcap2/build'

CXX(target) Release/obj.target/pcap_binding/src/pcap_binding.o

CXX(target) Release/obj.target/pcap_binding/src/pcap_session.o

../src/pcap_session.cc: In static member function ‘static void PcapSession::packetReady(u_char*, const pcap_pkthdr*, const u_char*)’:

../src/pcap_session.cc:85:102: warning: v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations]

n::GetCurrentContext()->Global(), Nan::New(session->packet_ready_cb), 0, NULL);

^

In file included from ../src/pcap_session.h:4:0,

from ../src/pcap_session.cc:7:

../node_modules/nan/nan.h:929:46: note: declared here

NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(

^~~~~~~~~~~~

SOLINK_MODULE(target) Release/obj.target/pcap_binding.node

COPY Release/pcap_binding.node

make: Leaving directory '/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/node_modules/homespun-discovery/node_modules/pcap2/build'

homebridge-platform-ring-video-doorbell@0.6.5 /usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell

├── hap-nodejs-community-types@0.2.0-alpha0

├── underscore@1.8.3

├── doorbot@3.1.0 (debug@2.6.9)

└── homespun-discovery@0.1.26 (pluralize@3.0.0, uuid@3.0.0, arp-a@0.5.2, snmp-native@1.0.18, bonjour@3.5.0, multicast-dns@6.2.3, glob@7.1.2, xml2js@0.2.8, pcap2@3.0.4)

pi@raspberrypi:~/node-v4.3.2-linux-armv6l $
 

scouser75

macrumors 68030
Oct 7, 2008
2,753
557
Have I almost got it? I entered the code below on my iPhone 6 and in HomeKit / Rooms I can see 'Default Room Homebridge. The only thing I can't get right is the config file '~/.homebridge/config.json'


pi@raspberrypi
:~/node-v4.3.2-linux-armv6l $ homebridge

[6/23/2018, 10:39:42 AM] config.json (/home/pi/.homebridge/config.json) not found.

[6/23/2018, 10:39:42 AM] ====================

[6/23/2018, 10:39:42 AM] ERROR LOADING PLUGIN homebridge-platform-ring-video-doorbell:

[6/23/2018, 10:39:42 AM] SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode

at exports.runInThisContext (vm.js:53:16)

at Module._compile (module.js:373:25)

at Object.Module._extensions..js (module.js:416:10)

at Module.load (module.js:343:32)

at Function.Module._load (module.js:300:12)

at Module.require (module.js:353:17)

at require (internal/module.js:12:17)

at Object.<anonymous> (/usr/local/lib/node_modules/homebridge-platform-ring-video-doorbell/index.js:8:19)

at Module._compile (module.js:409:26)

at Object.Module._extensions..js (module.js:416:10)

[6/23/2018, 10:39:42 AM] ====================

[6/23/2018, 10:39:42 AM] No plugins found. See the README for information on installing plugins.

Setup Payload:

X-**://*************

Scan this code with your HomeKit app on your iOS device to pair with Homebridge:




Or enter this code with your HomeKit app on your iOS device to pair with Homebridge:



┌────────────┐

│ ***-**-*** │

└────────────┘



[6/23/2018, 10:39:42 AM] Homebridge is running on port *****.

The only thing I can't get right is the config file


pi@raspberrypi:~/node-v4.3.2-linux-armv6l $ ~/.homebridge/config.json

-bash: /home/pi/.homebridge/config.json: No such file or directory

pi@raspberrypi:~/node-v4.3.2-linux-armv6l $
 

Weaselboy

Moderator
Staff member
Jan 23, 2005
34,206
15,761
California
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.