Hobart City Council's use of CCTV

In a recent post I set out some predictions about how CCTV recordings will change in the coming years and how this will provide new and exciting opportunities for companies to monetise our personal lives. I concluded that an old-school council-operated CCTV network hits the sweet spot between law enforcement benefits and maintaining ordinary people’s privacy. Although you can observe the footage live or access a recording if required, nobody has the time or motivation to stalk anybody.

Fastmail/DAV on KDE & Akonadi

The CalDAV and CardDAV services are my favourite bonus features of Fastmail. For 40 bucks a year I get hosted email, contacts and calendars. It’s the bits of Exchange I actually use, except delivered with open protocols, run by a reputable Australian company. The sad thing is that client support is not widely available. Apple has extremely good integration on both iOS and OSX. Other companies are weird about it—for example, Google provides a CardDAV service for iOS users but Android requires third party apps to use CardDAV.

RenewAustralia Launch

Today the Greens launched their new RenewAustralia policy, a plan to convert our energy sector to 90% renewables by 2030. Richard Di Natale described it as an “ambitious policy” and it really is. Any progress we can make in that direction is excellent. Unfortunately it seems overoptimistic about energy storage capabilities. Let’s start with the big picture. The policy is to build lots of new renewable electricity generation, to build lots of electricity storage, to decommission non-renewable power stations, and to convert fossil fuel-dependent systems like public transport to run on renewable electricity.

The Cloud Age of CCTV

Cameras near the Sydney Observatory Whenever I visit Melbourne or Sydney the thing that strikes me most is the huge array of CCTV cameras pointed at me. I don’t know how many of them are active or how many are recorded. There are so many that even if only 20% of them were functional it’s likely that my trips on foot could still be mapped out accurately. Would you think twice about walking into a political or religious bookstore if you knew that might be held against you?

Tapping the discriminator

Exciting news this week is the upcoming launch of the Fox-1A CubeSat on October 8th. The folks at AMSAT have produced a shiny piece of software called FoxTelem that will decode telemetry data that is encoded in the bottom 200 Hz of audio in the FM downlink. They’re encouraging people around the world to give this a go and upload the data they receive to AMSAT’s servers. The trick with this is that you need to hear the bottom 200 Hz of audio.

AX.25 Client and Server Programming

Recently I’ve been experimenting with getting computers to talk to each other purely using AX.25 over VHF radio. That is, establishing connections and passing messages back and forth without any assistance whatsoever from TCP/IP. The BSD networking API in Linux is very convenient for this. I’ve been able to write C programs that listen for connections, create connections and exchange data using code that doesn’t look all that different from what you would write for TCP/IP.

Xcode 7's New Linker Rules

The other day I received a new error from Xcode 7. I was building an iOS project for simulator, linking in a fat static library with i386 and x86_64. The error looked like this: ld: in /Users/tk/Code/.../libtest.a(TestLib.o), building for iOS simulator, but linking in object file built for OSX, for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) This is a pretty strange thing for a linker to say.

Reliable data transfer with iOS Bluetooth LE

Bluetooth Low Energy characteristics are only 20 bytes in size but I want to send more than 20 bytes of data. It’s a common problem. Obviously BLE isn’t designed for that purpose but it’s still pretty compelling for iOS-to-iOS communication. You don’t need to pair the devices first. We have plenty of battery power so sending lots of packets isn’t a big deal. Apple has published a sample project that solves this problem but it has some issues.

/dev/world 2015 Wrap-up

What a great conference! I’ve just come back from the magical land of aluminium laptops and Twitter, otherwise known as /dev/world. It’s an iOS and OSX developer event run by the AUC and this was my second year attending. RMIT hosted it again, this time in their academic building on Swanston St. I hereby nickname this building “the one with comfy chairs”. Their Design Hub was pretty and all but they decided to forgo padded seating in their auditorium.

We've reached peak Bula

“Bula, mate,” a voice behind me said to the reception staff. The cross-cultural greeting came from an Australian with a drawl so strong he seemed insecure about his nationality. We were standing in the lobby of one of the resorts on Denarau Island, Fiji. The reception area was open to the outdoors at both ends, letting the warm winter breeze roll through. I was waiting for a bus, surrounded by cheerful staff wearing brightly coloured shirts and dark sulus.

Baofeng interface, now with PTT control

My first experiments connecting my handheld radio to my computer relied on VOX control for transmit, which has a bunch of shortcomings. This week I got around to adding some real transmit control and putting it in a little box. I noted last time that PTT is triggered by connecting the two grounds together. This is why I needed a transformer in one of the connections—my soundcard has the mic and speaker grounds connected.

kissattach and its QST packet

In my last post I was wondering about a transmission that Linux always makes when I connect my radio. It shows up in Dire Wolf as a bunch of unintelligible binary. It’s addressed to “QST”, which is not a real call sign but an amateur radio Q Code that signifies a broadcast. In hindsight I feel like I should been able to guess what it was. Wireshark told me the full story: it’s a gratuitous ARP packet.

Dire Wolf, BBSes and Beyond

After playing with packet on my little handheld radio I decided I wanted to be able to connect to Danny VK7HDM. He runs a BBS out at Gagebrook—the last BBS in Tasmania that’s accessible via radio. (I note that the number of BBSes could certainly go up again. The ongoing costs of a radio BBS are much lower than phone line rental.) We’re about 10 km apart, which is not a long way for 2 metres, but my cheap little handheld wasn’t going to cut it.

Packet Radio Interface for UV-B5

Update 25/7/2015: I later added PTT control. The full circuit is here. After many years my Yaesu VX-6R was beginning to pack it in so I picked up a Baofeng UV-B5 cheap on eBay. This week I made a computer interface for it and managed to send and receive my first AX.25 packets. The UV-B5 has a Kenwood-style pair of 3.5 mm and 2.5 mm jacks (pinout). The PTT is triggered by joining the sleeves of each plug.

Cloud password managers still good

LastPass announced today that attackers got onto their network and user account information including salts and authentication hashes was compromised. The irony is a little funny unless you’re a customer. We all know if you put data into the cloud it’s at some level of risk, and well—here we are. Still, it would be a shame to take away the wrong message. Unless you’re a business, a cloud password manager with two-factor authentication is probably the best thing for your password needs.

Scale Does Matter

If you’ve been watching the steady advance of digital surveillance in the western world you might be wondering what the next frontier is. The ubiquity of internet-connected smartphones introduced a new range of surveillance opportunities, all of which are now exploited by our governments. When you consider that information about most phone calls, text messages, emails and web browsing patterns is now captured by various schemes like Tempora, it does seem as though we’re just about finished with communications.

The Rust 1.0 Experience

The new programming language Rust finally debuted on May 15 with their 1.0 release. In case you missed it, Rust is being developed by Mozilla as a systems programming language that fills the role of something like C or C++ but is safer to use. It’s great to see it come together. I fiddled with it a couple of times pre-release and this was a difficult time. Documentation was incomplete and the standard library was changing rapidly.

Why Rick Falkvinge's rambles about public libraries don't make sense

On Torrentfreak a few days ago Rick Falkvinge, founder of the Swedish Pirate Party, mused upon the relationship between libraries and file-sharing. He claims that you can’t support public libraries while being opposed to file-sharing, by which he appears to mean copyright infringement. It’s one of those frustrating reads in which the author gleefully tears nuance from the issue until he is left with a strawman that can be batted down with a single puff of logic.

Periscope in Self Defence

Going by the streams on offer Periscope is an amusing toy for most. People are broadcasting anything from their lunch break to their holiday destinations to simply talking to the camera. For all its novel unedited spontaneity, the app is wandering into a minefield of new and exciting issues that we haven’t had to deal with at this scale before. One of those is live broadcast of crime. Sooner or later some users will turn to Periscope when they’re being raped.

What Coles means by "Purchases monitored to ensure better service"

On Easter Monday I was doing some shopping when I noticed a message for the first time on the Coles self-serve checkout: Since “ensuring better service” is so often a euphemism for “we’re doing something shitty for commercial benefit” this immediately set my spidey senses tingling. What manner of monitoring are we talking about here? Human supervision? Hidden cameras? Storing our purchases for perpetuity and indexing them by credit card number?

Book review: The Internet Is Not The Answer by Andrew Keen

It’s a provocative title. I was dubious at first but I have decided that Andrew Keen’s writing lives up to it. What I feared to be some sort of rant turned out to be a nuanced critique that seriously challenges some of my attitudes toward Internet-based technology. Some years ago I appeared briefly on national television to ask a panel whether the Internet could have its own sovereignty—whether it could be impervious to the regulations of traditional governments.

Anonymity to learn

Today social media was expressing its usual preoccupations with Australia Day. I witnessed a depressing sight that became more so as I read. A young white Australian woman had commented on a heavily-trafficked Facebook post, essentially criticising the zeitgeist of white guilt on the grounds that nobody living in Australia today perpetrated genocide on the native Aborigines. It was a fairly eloquent post but ignorant of the challenges facing Aboriginal people today—and the criticism came thick and fast.

Sending authenticated SMTP alerts from Zabbix

I like to use SMTP wherever possible for automatic emails because it’s usually simpler and has fewer security gotchas than running a local MTA. Zabbix does have SMTP support but it’s currently limited to unauthenticated connections—not much help to a home user like me. I don’t have a mail server on the local trusted network. Fortunately it’s a pretty easy to hook up a script so that Zabbix sends email via Mutt, which does support authenticated and encrypted SMTP.

Monitoring a Ubiquiti NanoBridge with Zabbix

I have a couple of point-to-point WiFi links. One of these uses a 5 GHz NanoBridge, the other a 900 MHz Loco M900. The web interface on these has all kinds of interesting statistics that I would like to get into my Zabbix server for logging and graphing. The good news is that these devices support SNMP and also at least part of Mikrotik’s “experimental” SNMP module. This means if you do a walk over enterprises.14988 you get 7 OIDs containing interesting information about each connected client.