Daily Position Cron

As you probably know from my blog, I have a number of Arduino’s around the house for monitoring household and weather metrics and I’m always looking for ways to add more devices and data sets.

My dad happened to find a map one summer on to view live lightning strikes and we decided to sign up for a lightning detector in December 2015 (I think!).  When you register you use your email address and can see where you are in the list of people who want a device by going back to and filling in your email + the other boxes.

After one year on the waiting list, our position in the queue had moved a bit, but it became tedious checking the list once a week, so I wrote a script that I’ve now made generic enough for anyone.  Simply add it to crontab and take the pain out of checking every week 🙂

GitHub gist:



epc=$(date +%s)
echo $epc

# Country does not seem to be important
res=$(curl --data "info_time=$epc&info_email=$email&info_country=United+Kingdom&info_text=TSqrb"
#echo "-----------------------------"
#echo "HTML Response"
#echo $res
#echo "-----------------------------"

html=$(echo "$res" | grep $email)
#echo "-----------------------------"
#echo "Position Text"
#echo $html
#echo "-----------------------------"

echo "textpositionstart: $textpositionstart"

position=$(echo $position | sed 's@^[^0-9]*\([0-9]\+\).*@\1@')
echo "position: $position"

lastposition=$(cat $lastpositionfilename)
echo "catresult $catresult"
if [ "$catresult" -eq "1" ]; then
    echo "didn't find last position file"
    echo "found last position file"
echo "lastposition: $lastposition"

if [ "$position" -lt "$lastposition" ]; then
    echo $position | mail -s " position" $email
    echo $position > $lastpositionfilename
    echo "position not less than $lastposition: $position"


The only input to the script is the email address you’ve used on the waiting list (assuming you haven’t hardcoded it in the script like I have).  You don’t need country as that doesn’t appear to be used by the site to verify the email address.

Monumental App Update Mess Up!

A few weeks back I received a request to add in the ability to select half days in the Retirement Countdown Clock app ( and I decided that this was a quick change that wouldn’t take too long, so why not 🙂

Well I made a complete mess up of the update… It started off as seeming like a simple update, but I’d just had a rather large problem on my laptop that killed the SSD, so had not much software installed on the new hard drive. After all the necessary apps were installed, I set about updating the app, adding in the ability to select the half days. It only took about 4 hours in total to make the code changes and test (most of which was updating the runtime target version). I packaged it, tested it on my laptop and old phone, both of which said they would install from fresh and then added a new submission to the store.

Job done 🙂 or so I thought…

Two days after the app was published to the store, I logged in and to my horror I’d received over 11,000 crash reports!!! O.M.G!

All the crash reports were for the new version ( and all were in exactly the same line of code… I wondered well how come it worked on my laptop and phone then? And the key answer was that it installed the app from fresh and didn’t do an update. I dashed around the house to find anoher phone I hadn’t tested on and updated the app from the store. Lo and behold, it crashed as soon as you tried to open the app from the start screen 🙁

I had all the info I needed in the crash reports to find the particular dodgy line of code – wasn’t handling the previously stored int and converting correctly into a decimal. Less than two hours later, a new submission was sent for approval to the store, but it takes a minimum of a day to get a submission approved… In that time the crash reports topped 20,000.

I learnt a very valuable lesson – don’t rush a change through, even if it seems simple and make sure you test it as if you’ve done an upgrade as well as a fresh install!

Sorry to all those people that downloaded the dodgy update, hopefully you’ve updated to and it’s now working again.

Outlook for Android – Can’t use it for Gmail account!

I used to have a Microsoft Lumia 550 phone, which although basic just worked and really well. Unfortunately I’m a little clumsey and managed to drop it around a dozen times when getting out of the car at work (yeah, you’d think I’d learn). It managed to survive those drops, but only just and ended up with a lovely set of cracks across the screen which I superglued to stop them completely distroying the screen and to prevent getting glass shards in my fingers.

Anyway, it’s got to the point where I needed to get a replacement phone and I would have gone for another Windows phone, but there haven’t been any new releases for a while and I refuse to pay £600+ for the HP one. So, I’ve reluctantly bought an Android…

Why reluctantly? Well I believe Google is getting a little scary in it’s acquisitions (Boston Dynamics) and the recent purchases of a couple of certificate authorities concerns me about personal privacy.

Anyway, I’ve set up my phone to remove a lot of the Android pre-installed crap from Google and set my default browser to Firefox. I thought nothing of doing this until just last week when Outlook refused to connect to my Gmail account and prompting to re-authenticate. I’d click ok, re-authenticate and get a 403 error from Google. After a couple of tries, I remove my Gmail account and tried to re-add it.

Much to my suprise, I can’t re-add my account unless I set Chrome as my default browser!!! Talk about anti-competitive behaviour from Google!

I absolutely refuse to use Chrome as my default Android browser just so that I can use my Gmail account from Outlook!