Press "Enter" to skip to content

Category: Life: Work and Techy

Smart Meters (2/2): Why you should get one

As a counter-argument to my previous post as to why you shouldn’t get a smart meter for your electricity and gas, here’s a list of reasons why you perhaps should.

I would suggest though waiting for your supplier (I use Bulb Energy and do recommend them – plus if you switch with my affiliate link we both get £50 credit and cheap gas and electricity) to roll out ‘SMETS2’ smart meters as these will continue working ‘in a smart manner’ no matter which supplier you are with whereas ‘SMETS1’ (the ‘current/previous’ generation) ones usually stop reporting meter readings when you switch suppliers or their in-home displays become inaccurate/stop working.

  1. Reducing running costs. Suppliers no longer need to send out meter readers to get accurate readings (especially from people who can’t/won’t provide readings themselves). This means they can keep their prices low and give you lower bills
  2. More accurate bills. Provided your meter reading a day or two early or unable to read your meter one month? Then you were probably getting an estimated bill – now with the data flowing to the supplier, you needn’t worry as they supplier can get the meter reading just when it is needed for your bill.
  3. Accessibility. A lot of people have no problems accessing and reading their meter, but others may have mobility problems, dyscalculia (‘dyslexia with numbers’), or the meter could be in a hard to access place (too low/high or in another building entirely under control of a nearly absent landlord). Smart meters means you don’t have to worry about reading it yourself.
  4. Detecting problems. Since the meter reports back to the supplier quite frequently, the supplier could notify you (or the local distribution network) if the usage is out-of-standard: left an electrical heater on in your garage for the last couple of days (whistles innocently) – then they could drop you an email saying ‘Check your appliances’. Likewise, elderly and disabled customers could have their power monitored and if it doesn’t have ‘customary peaks’ (i.e. kettle going on, tv usage) for 2 days, alert ‘next of kin/police/social services’ for a check-up.
  5. Customer education. Smart meters allow customers to easily see what is using their power/gas and adjust their usage in an intelligent manner (instead of just guessing) – we all ‘know’ filling your kettle to just the amount you need saves power, but if you’ve got an in-home display next to the kettle you can test it yourself and reinforce that knowledge.
  6. Flexible tariffs. Instead of having to get a physical meter swap to go between prepay, credit, Economy 7 – this can be remotely set by the supplier. Prefer to use a custom ‘smart meter’ tariff which has multiple rates during the day based on ‘grid demand’, then that can be done – allowing you to have cheaper power at lower demand times.
  7. Grid protection. Usually only applicable for heavy users (factories and the like) – under times of ‘unusually high demand’ (winter peak times for example), the supplier/national grid could then turn off the meters remotely to protect the National Grid from overdemand. This isn’t a new thing (the companies already have ‘shutoff’ agreements with heavy users), but it’s usually a manual process where they company is called and asked to cease operations. With smart meters, they can be provided with an ‘At risk’ notification (as they tend to do in the mornings now I believe) and if it comes to it, NG can shut things down and restart things just for the minimum time necessary.
  8. Environmental. I believe it’s easier to integrate ‘feed in’ items such as home solar panels and the like to smart meters rather than having to have multiple meters for it.
  9. Better home control. With smart meters supporting Zigbee (the same protocol used by ‘smart lights’), it is possible customers can have their in home systems integrate with it automatically – no need to bother manually adjusting storage radiators or timer switches on washing machines – with an integrated smart home, everything can come on at the cheapest time for you.
  10. Better flexibility for generators. At the moment, most Economy 7 and the like meters in a region are roughly the same time – but those times tended to be based on 60s-80s electrical usage patterns: but we don’t have many coal mines, steel factories, and other heavy usage factories nowadays – and in some areas, most people work 9-5 jobs meaning ‘peak times’ are now 9-5 instead of the traditional 6-2pm for factories. Smart meters will allow these times to be adjusted in smaller regions (or even nationwide) as the grid supply/demand curve changes: ensuring we don’t need too many generators ‘available’ at a time which then go idle 75% of the time.

On the flip side, have a look at my list of reasons why you perhaps shouldn’t get a smart meter.

No matter who you get your gas/electricity from, you do want it to be cheap and environmentally friendly – perhaps consider switching to Bulb Energy. I’ve been with them since December 2017 and am more than happy with them (in fact, the majority of this post has been copied from a post I originally wrote on their community forums), and if you switch using my affiliate link here, we’ll both be credited with £50 and you’ll get 100% renewable electricity, 10%+ green gas and lower costs than the ‘big six’ and most of the other suppliers.

NodeJS : UnhandledPromiseRejection handling

Are you programming Node JS Javascript and reached the dreaded:

(node:1984) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): xxxxx
(node:1984) 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.

but can’t figure out where the Promise is in NodeJS which is causing this? Just add the following bit of code near the top of your code (after the requires if used) which might help:

process.on('unhandledRejection', function(reason,promise) {
console.log('unhandledRejection', reason);
});

Snippet/Techy: Fixing Debian Signatures were invalid – Key Expired

If you are running Debian/Ubuntu and you are getting “The following signatures are invalid” when running apt-get commands (such as apt-get upgrade) and the error looks like:

Reading package lists... Done
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://repo.mysql.com jessie InRelease: The following signatures were invalid: KEYEXPIRED 1487236823 KEYEXPIRED 1487236823 KEYEXPIRED 1487236823

W: GPG error: http://nginx.org jessie InRelease: The following signatures were invalid: KEYEXPIRED 1471427554
W: Failed to fetch http://repo.mysql.com/apt/debian/dists/jessie/InRelease

W: Some index files failed to download. They have been ignored, or old ones used instead.

As root run:
for K in $(apt-key list | grep expired | cut -d'/' -f2 | cut -d' ' -f1); do sudo apt-key adv --recv-keys --keyserver keys.gnupg.net $K; done

Source: http://serverfault.com/a/615362/12514

[Techy] Getting cURL to work with Let’s Encrypt: unable to get local issuer certificate error

On my test Debian jessie 8.2 and a staging server Ubuntu trusty 14.04, I had problems being able to use cURL to fetch data from a remote HTTPs site which was secured using a free Let’s Encrypt certificate (this problem manifested itself via both PHP 7 cURL functions and curl directly).

An example of the error is:

curl --verbose https://helloworld.letsencrypt.org/
...
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: http://curl.haxx.se/docs/sslcerts.html

To fix this, I found the following steps worked:
sudo apt-get install --reinstall ca-certificates
to ensure you have the latest certificates by your distribution – this might help you, but it didn’t assist me 🙁

So I downloaded the Let’s Encrypt root certificates and forced a rebuild of the certificate store:

sudo curl https://letsencrypt.org/certs/isrgrootx1.pem.txt -o /usr/local/share/ca-certificates/isrgrootx1.crt
sudo curl https://letsencrypt.org/certs/letsencryptauthorityx1.pem.txt -o /usr/local/share/ca-certificates/letsencryptauthorityx1.crt
sudo curl https://letsencrypt.org/certs/letsencryptauthorityx2.pem.txt -o /usr/local/share/ca-certificates/letsencryptauthorityx2.crt
sudo curl https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem.txt -o /usr/local/share/ca-certificates/letsencryptx1.crt
sudo curl https://letsencrypt.org/certs/lets-encrypt-x2-cross-signed.pem.txt -o /usr/local/share/ca-certificates/letsencryptx2.crt
sudo curl https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem.txt -o /usr/local/share/ca-certificates/letsencryptx3.crt
sudo curl https://letsencrypt.org/certs/lets-encrypt-x4-cross-signed.pem.txt -o /usr/local/share/ca-certificates/letsencryptx4.crt
sudo dpkg-reconfigure ca-certificates

and everything worked!

If you are running Java, you may need to also add the certificates to the Java Keytool:
keytool -trustcacerts -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit -noprompt -importcert -file /usr/local/share/ca-certificates/isrgrootx1.crt
keytool -trustcacerts -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit -noprompt -importcert -file /usr/local/share/ca-certificates/letsencryptauthorityx1.crt

(change the storepass password [default of “changeme”] to whatever is relevant to you)

[Personal] Turns out I didn’t actually need a new NAS

drobo_nas_frontplateOn Friday, I (well, the company), purchased a brand new Synology DS1815+ 8 Bay Desktop NAS (Network Attached Storage) device as the 4-bay Drobo (non-networked) storage device we were using for backups/file storage just seemed to be eating through hard drives – every few months, a red light would appear next to a drive and so we replaced it… The Drobo is quite slow (USB 2 only – so to network it, it has to go from USB 2 to a RaspberryPi to the network: maximum of 20MB/s transfers if we were lucky).

As you can see from the diagram, a “steady red light” indicates “Add A Drive Here”. If the Drobo is fully populated with drives, do you:
a) Take that as an indication the Drobo no longer recognises the drive in that position for whatever reason (not properly inserted, drive failed etc). After all, if the light was blinking, it’ll indicate “Drive failure, replace”
OR
b) The drive is actually fine, but just needs replacing with a higher capacity drive.

For around 6 drive replacements, I’ve thought it was (a) – but it turns out, it is (b)…. So, I could have perhaps saved myself/the company over £1,000 in buying a new NAS and drives for it (okay, I perhaps couldn’t as the Drobo has got 3x4TB drives and 1x3Tb drives in it, so it would have only been a short term storage solution – the Synology does a lot more besides!)… If the “Drive capacity” lights at the bottom of the Drobo flashed/turned red or the drobom status reported “Drive at capacity, replace with *larger* drive” (instead of “Replace drive”), it would have been helpful…

Oh well, at least we have a file store, backup storage solution (with synchronisation to Amazon Glacier), in-house cloud-sync system, media service and a central “single store” for all our files instead of 4 different Drobo volumes….