Android Oreo Phone Service Notification

Just got the Oreo update. Now get alerted every time mobile service drops out. Intensely annoying on trains, in buildings, etc etc.

  1. Go to Settings.
  2. Select Apps and Notifications.
  3. Press see all apps.
  4. Press the three dots at the top and select Show System.
  5. Scroll down to Android System and select.
  6. Tap Notifications.
  7. Scroll down to Network Status and hit that. I suggest set to low so you are not notified at all.
  8. Done.

 

Advertisements

gpsbabel on ubuntu 16 LTS for Garmin GPSMap 60Cx

Argh! Why is Garmin so awful! They make excellent hardware, that (mostly) works brilliantly, but the software for connectivity and on the website… grrrr.

In the last two/three months I have had to de-upgrade Garmin Connect on my Android phone (it’s at 4.1.7 cos everything so far after that has utterly borked any connectivity to my Forerunner 235); swapped from browser to browser as first chrome, then chromium, and, finally today, firefox, failed to display anything except the headers and footers of any pages after logging into connect.

Deep breaths… breathing in calm, exhaling bullets.

Anyway, after an epic (for me) 50km off road day on my Sonder Camino Al (drop bars, 650Bs @ 30 psi, cable disc brakes, 11 spd SRAM – astonishingly good off-road, must write it up!), my buddy and I were talking about having a more accessible map easily visible without us fishing out the phones, or digging in the bag for the maps. Since we’re goldfish braining, probably due age and adrenaline, we both found ourselves checking nearly every flipping turn and wasting quite a lot of time. We weren’t worried about it, it was a beautiful day, between 16 and 24 deg C all day, and we were not inclined to try and race it. We just thought, at the end of the day, we’d have been more comfortable if we could have had a turn-by-turn available. And probably not stopped halfway down awesome downhills to check we didn’t have to hang a left.

I remembered having some old garmin kit from some years ago that did the job. A handheld GPS that is pretty ancient tech now looking at most phones, but is waterproof, has real buttons you can feel, and a chunky screen with a flipping great arrow or zoomed in map pointing you to the next waypoint. I went digging.

The GPSMap 60cx. I loved and hated it. Loved it for geocaching and tracking my commutes on my wannabe Brompton (Giant something or other). Hated it because getting data on or off it with my Mac (at the time) was an utter crapshoot, and invariably took re-re-re-researching because garmin had broken or repurposed whatever piece of software had kinda worked last time.

So I dug it out today. The mount is no good for getting around this day and age handlebars, so two removable cable ties and it’s firmly attached. And then… dramatic pause… I got it working on both the old Mac and the Ubuntu 16 LTS boxen using gpsbabel! I am so chuffed. It remains to be seen how long it works for, but here’s a cheat sheet of what I did.

Macbook

  1. Install GPSBabel from https://gpsbabel.org
  2. Make sure the GPSMap is switched off
  3. Plug it into the USB port on the Mac
  4. Turn it on
  5. Use GPSBabel making sure to leave it set to “usb:” on the Garmin device connection

So far so simple. Although it did take a lot of plugging in and out.

Ubuntu

Absolutely loads of info on the web from about 10 years ago. Nothing current. What I ended up doing was this:

  1. sudo modprobe -r garmin_gps #not sure whether this was necessary or not
  2. sudo apt install garmin-forerunner-tools garmin-plugin gpsbabel-gui
  3. sudo nano /etc/udev/rules.d/51-garmin.rules
    insert this line (without the single quotes): ‘SYSFS{idVendor}=="091e", SYSFS{idProduct}=="0003", MODE="666"
  4. reboot (yes really) the system and login again.
  5. making sure gpsmap is switched off, plug it into the usb port.
  6. Turn it on.
  7. Fire up gpsbabel and admire how you can import and export data simply and easily with hardly any hatred of garmin connectivity.

Oh happy day! Hope it helps someone.

Thanks to gpsbabel.org (I mean, like loads of thanks, give them some money!), and to this guy on askubuntu.com who got voted down sadly. Some of it didn’t make any odds, but it cracked it for me.

Chromebook Asus Flip C101 Won’t Boot

The Girl got an Asus Flip Chromebook c101 for Christmas, which she is chuffed as peanuts about. It’s quite nice. I have played with it using Google Keep, surfing a wee bit, messed with Google slides and casting to a big screen with presenter notes on the flip. Very good.

Last night an update asked for a reboot and then the thing locked. Long story short below.

Locked: screen blank, silver light on the side on, no response to any keys or to on off button.

With a Linux or Windows box in such a state, I’d start with the three fingered salute, then try pressing and holding the power button to proper switch off. Failing that, pull the power supply and battery. Needless to say, that doesn’t really work with Chromebooks.

This solution doesn’t factory reset or lose any settings.  It’s just a gentle hint to the blasted thing to restart properly please.

1. Press the power button and the refresh button (middle button, top row, cut circle with an arrow in it) at the same time for about 10 seconds, or until the screen flashes. After its flashed, let go of the buttons and you should see the silver light is out.

2. Give it a minute, then press the power button to turn on as usual.

3. You’re done. Should work normally now.

As far as I can tell, this is either a three fingered salute (ctrl-alt-del) equivalent for chrome OS, or a press and hold the power button equivalent. It makes a difference if the lock up isn’t sorted and remains locked. Then you have to get medieval on it’s arse and disconnect the battery I suspect.

It took me a hour to suss it last night, fearing hard resets, factory resets, etc. The guy who steered me right was thefakegeek. Thanks!

Running Apps Synchronisation

Replicator

Using mostly tapirik: https://tapiriik.com . It costs 2 dollars a year to have it auto-sync, or free if you do it manually whenever you remember. It will sync pretty much everything from a date you supply (or a default date of around 1868).

Garmin as master (mostly), syncs to Strava, runkeeper, and dropbox.

Have set dropbox as listener only. It gets tcx files from garmin or strava depending where the activity is recorded. This is dropboxed to my hard disk and forms my “oh crap, x service has died/borked/gone forever and I need to export everything. in theory I already have it all.

Have set runkeeper as listener only. It gets updated from garmin or strava depending where the activity is recorded.

FitBit
FitBit is an arse. It is (deliberately IMHO) made hard to get out of and, frankly, to get into as well. I use it for tracking my weight and for various family members on it.

Strava – have linked to FitBit through Strava’s integration.

Runkeeper – have linked to FitBit through Strava’s integration.

Limitations
Currently Garmin can’t get my weight, etc from FitBit. I suspect if I link Garmin using the official apis to/from either Strava or runkeeper it might update the weight.

Next Steps
1. let runkeeper get back populated by tapirik.
2. unlink runkeeper from tapirik and link using offical APIs to Garmin Connect. See if a: the data that gets sync’ed off a run is as good/better than tapirik; b: if teh weight data is pushing into Garmin from FitBit via RunKeeper.

#run
#makeitbetter

Playing with Meteor Again

It’s been awhile. I’m looking at Meteor again after my first look about 2 or 3 years ago. It seems to have matured into a rather cool web framework. It’s USP is real time updates between server and clients. Anything entered into the server database, is reflected (almost) immediately on each of the clients. If a client makes changes, those are reflected immediately on the local, and are background updated to the server, and then out to the other clients. It’s really slick.

It uses (by default) a mongodb as backend, and minimongos on each client, which live in the browser memory and have a subset of the full database cached locally. These listen for updates from the server and push updates to the server form teh minimongo. The client only reads and acts on the minimongo.

I decided to pay proper attention this time instead of skimming, so I’ve bought the Discover Meteor Book by Tom Coleman and Sacha Greif.

I’ve also done some digging into the architecture of Meteor because I have always wondered about how much control and scalability I might be sacrificing for the “magic”. This page from The Meteor Cookbook helped a lot (thanks). I now understand that I can remove the mongodb from the meteor server itself and deploy and admin as I wish in production. I am still a little hazy on scaling the meteor app itself, but that is coming in later chapters!

All in all, I’m enjoying myself. The long winter evenings will just fly.

Installing and Running Django Tutorial on Anaconda Python

So I want to do some more fluffy web based stuff with python, and, ultimately, mongodb. I’m doing things properly and starting with the Django tutorial. I’ve already installed Anaconda to provide me with a  full python 2.7 and the key data analysis packages pre-installed. The Anaconda windows installer works perfectly.

An aside, but the ipython notebook is brilliant. Runs a local webserver on your machine with the python command line running. You can record everything you do, download copies and send to others, inline graph generation, etc. It’s lovely.

Fire up a DOS command line.

So I started by checking to see if Django was already installed:

python -c "import django; print(django.get_version())"

It wasn’t. easy_install and pip often don’t work directly from the command line, with either python 2.7 installed manually  or with anaconda, so I went for the safe option that seems to work everytime and:

where python
C:\Users\me\AppData\Local\Continuum\Anaconda\python.exe
cd C:\Users\me\AppData\Local\Continuum\Anaconda\Scripts
pip install Django

That installed Django for me fine. I checked again to see what version was installed:

python -c "import django; print(django.get_version())"
1.6.2

So now I need the Django Tutorial for this version. Note that if your version of Django/python is different to mine, you will need to select the right Documentation version. You can do that with the control atthe bottom RHS of the tutorial page.

Next, it wants me to create the project. I have to cd to my source folder and run a command. That command blows up:

C:\me\projects\reporting\incubator>django-admin.py startproject mysite
Traceback (most recent call last):
File "C:\Users\me\AppData\Local\Continuum\Anaconda\Scripts\django-admin.py", line 2, in <module>
from django.core import management
ImportError: No module named django.core

Sad Face. But let’s work around those pesky path issues like we did with pip:

C:\me\projects\reporting\incubator>python C:\Users\me\AppData\Local\Continuum\Anaconda\Scripts\django-admin.py startproject mysite

Success. Happy Face. Mental note made. Continuing with the tutorial.

I didn’t have the sqlite3 shell installed, so downloaded it from sqlite.org.

 

Finding a WinSxs Solution For Windows Server 2008

On Windows Server 2008 R2 there is no real way to manage the growth of the folder C:\windows\winsxs. This is an issue if you have virtual machines with small system partitions. Hell, it’s an issue because install files from 3 years ago are in a security protected folder that you can’t get rid of without major surgery.

There are lots of articles online from MCEs and MVPs etc saying you do DISM /this /that or COMPCLN.exe. These are all missing the point. They cleanup the stuff prior to the last Service Pack. What about the ~7 gigabytes, and growing, of OS partition space taken by this flaming folder that has no use to it all?

This technet discussion is typical.

However, I did find an article on the microsoft blog about introducing some cleanup to winsxs on Windows 7 that is non-typical, and provides a little clarity. The author, Charity Shelbourne, engages with the commenters specifically about Windows 2008. Hurrah! A comment from GerVoeten on 30th Sept, 2013 is most accurate:

The answer is the only way to clean the winsxs folder up is to uninstall updates and software. There is no guarantee that this will return back to its original size as the files maybe hard linked somewhere.
For 99.9% of us uninstalling updates and software is not really an option, these articles on cleaning up odd files in the os and using disk cleanup is a joke.

In summary, after digging around for 2 days on and off, I think there should be a canonical answer:  if you have Server 2008 R2 and you want to safely cleanup some old install files, wash your hands, pull on your rubber gloves, <small voice of reason>make some backups</small voice of reason>, you’re going in.

Please note this is specific to Windows Server 2008 R2 and doesn’t include Windows 7, Windows 2012.