Hive Active Heating (British Gas) – some of my experiences

Back in September I ordered myself a Hive heating system. This was on the back of the announcement that the Amazon Echo would shortly be available in the UK.

Since it was installed I have had a number of problems with the hub going offline. After a few discussions with British Gas first line support I was passed over to second line support, mostly because I have a “non-standard” network – ie it’s not just a sky router.

Problems included –

  • The hub going offline with an orange light. Rebooting the hub generally brought everything back to life.
  • Door/window sensors appeared offline after rebooting the hub. Initially removing and replacing the battery fixed this but toward the end even this didn’t work.
  • At one point I think I rebooted the hub too often and I got a flashing red/amber light and no network connectivity. It took a couple of days of leaving it unplugged/rebooting it to get it to come back to life.
  • Push alerts stopped working. I tried adding email alerts but they didn’t work either (I got the occassional email telling me the house was too warm but never any alert emails).
  • The hub appearing to go offline but the light on the hub was green.

The second line engineer decided to just send me a new hub rather than troubleshoot the problems. This was mid-October. It took me some time to install the new hub (Christmas got in the way) but I finally did this on 31st December 2016.

To do this I had to make three calls to Hive support, as each time I spoke to somebody they talked me through what I had to do there and then, but there was no discussion re: what I would have to do next. So I post these steps here in the hope that they are useful to somebody else.

To swap your hive hub for a new one –

1/ Firstly, you will need to call Hive support to have the old hub removed from your account. There doesn’t seem to be any way you can remove it yourself.

2/ Once this is done, you can log into your hive account and then you will need to enter the ID of the new hive hub.

3/ Then you need to put all your devices into pairing mode. Without this they won’t be picked up when you click “install new device”.

Thermostat – I had to press and hold the left (back) and middle (menu) buttons together for a short while. I can’t remember if this is everything I did or what the resulting lights were, but after this I was able to “install new device” in the console and hive detected it.

Receiver – I had to press and hold the button in the bottom right hand corner of the receiver (central heating) until it turned pink and started flashing. I then had to press it again until it turned amber. Then I could add new device in the console and hive detected it. These instructions might also be a little shaky as these two devices were installed whilst hive support were on the phone.

Socket – I had to hold the button on the top of the socket until it flashed. Then I was able to “install new device”.

Light bulbs – to put these devices into pairing mode you have to turn them on and off a number of times until they occassionally “blink” at you. The Hive support operative said we had to do it six times, so he likes to do it seven times to be sure. When I tried it later with my other lightbulbs it only needed four iterations.

Door/window senors – I was told to take the lid off, remove and replace the battery, then hold the button I found inside until the light flashed green. This didn’t work. After some conferring I was told to instead press the button a number of times – again this didn’t work. Eventually I worked out that I needed to press-and-hold a number of times – four seemed to do it.

What nobody told me is that this process would wipe all the data from my console, so my schedules and the first four months worth of data was now missing. If somebody had mentioned this I would have taken some screen shots, but there you go.

But… finally I had installed the new hub and all my devices. Everything was showing as online in the console, push alerts were back and also email alerts now worked. Maybe this time it would be much better!

Less than 24 hours later I woke up to find that the hub had gone offline again (although resetting the hub – which had an orange light on it – did bring everything back). So I’ve written this to keep a record of what occurs from here!

One other point to note is that around mid November I decided to purchase an Energenie MiHome hub and a remote controlled socket. The idea here that if hive went offline I could remotely reboot the hive hub. I installed this toward the end of November and – unlike the hive hub – it hasn’t gone offline at all!

Plesk – extract all email addresses from database

I recently needed to email everybody on my Plesk server. Traditionally I’ve done this by maintaining an “all@domain.com” list for each subscription but of course that requires constant maintenance.

So instead I did a bit of searching, amended what I found (on the plesk forum I believe), and came up with this (which requires ssh access) –

# log into mysql
mysql -uadmin -p`cat /etc/psa/.psa.shadow`

# Once logged into mysql 
use psa;
select concat(mail.mail_name,"@",domains.name) as address from mail,domains,accounts where mail.dom_id=domains.id and mail.account_id=accounts.id order by address INTO OUTFILE '/tmp/emailaddresses.csv' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
exit

# This will create a file /tmp/emailaddresses.csv, which you can email yourself as follows
mail me@domain.com < /tmp/emailaddresses.csv

# and then delete the source file for good measure!
rm /tmp/emailaddresses.csv -f

Iomega StorCenter – Enable ssh access, install MediaTomb server, set up random (shuffled) music and video playlists

To enable SSH –

Go to http://1.2.3.4/diagnostics.html (cloud edition), or http://1.2.3.4/support.html for the non-cloud edition. From there you can enable SSH on port 22. Password will be soho<admin pw>.

To enable package system –

Eventually I gave up on compiling my own MediaTomb, as I still cannot compile despite installing gcc via the package system. However, this might be useful in the future…

Easy way to add [package management] is [to] cut and paste following [on the command line] –

cat <<EOF > /etc/ipkg.conf
src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable
src native http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/native/unstable
EOF

Then type

ipkg update

After that you can check the list of available packages by typing

ipkg list | less

To install packages type

ipkg install <package_name>

To install MediaTomb –

I found static binaries for MediaTomb here – http://mediatomb.cc/pages/download#static – and (knowing it was an arm5 device from my previous attempts to install mediatomb) I downloaded the arm4 version. There is very little space on the root partition and the database will grow to quite a size, so I ultimately installed mediatomb into \boot\apps\mediatomb – \boot has 4gb disk space allocated and 3.2gb available.

From here I was able to run mediatomb by changing to \boot\mediatomb then running ./mediatomb.sh. I hacked the mediatomb.sh load line to include the -p <port> parameter (to assign a static port) and tried the -d (daemon) paremter but it didn’t like this.To enable auto-starting of medatomb  I added “cd /boot/mediatomb” and “./mediatomb.sh” to /etc/rc.local.

Via the GUI (now on my custom port) I found my media at /mnt/pools/A/A0/MEDIA and added this location as a watch location to be updated using inotify, and so far it’s worked just fine.

I did modify the mediatomb config.xml file to enable PS2 support (which tells MediaTomb to advertise itself as a DNLA server, even though it isn’t) for one device (a Pinnacle ShowCenter) to be able to see the MediaTomb server. My Asus O!Play HD2 and Zyxel DMA1100 (or similar) can both see it just fine without this amendment. I also amended the server string within here to reflect the name of the StorCenter.

Random playlists

How to randomly sort the contents of a text file – eventually I gave up and wrote my own scripts to generate random playlists…

# create media playlist
find /mnt/pools/A/A0/MEDIA/ -name *.avi > /tmp/inputfile.txt
find /mnt/pools/A/A0/MEDIA/ -name *.mpg >> /tmp/inputfile.txt
sort -R /tmp/inputfile.txt > /tmp/outputfile.txt
cp /tmp/outputfile.txt /mnt/pools/A/A0/MEDIA/PLAYLISTS/media.m3u

…which I’ll run daily via /etc/crontab –

# regenerate random playlists for mediatomb
00 6    * * *   root    /boot/apps/playlists/create_playlists.sh

References –

http://blog.vuksan.com/2010/04/28/customizing-iomega-storcenter-ix4-200d-with-ipkg/
http://www.krausam.de/?p=33

http://www.pkguild.com/2010/01/shell-access-to-your-ix2ix4-exposed-get-yer-red-hot-ssh-here/

http://hivearchive.com/2007/10/18/bash-one-liner-to-randomize-lines-in-file/

http://biocrystallography.blogspot.com/2008/04/recursive-m3u-index-generating-shell.html