Apple’s September 14th event introduced the new iPhone 13 and what caught my attention was a brief mention by Tim Cook of “new bands and antennas” for the iPhone 12 successor. Looking more closely at the specs shows that the iPhone 13 adds support for 26 GHz mmWave (n258), which builds on the 28 GHz and 39 GHz support (n261 and n260, respectively) my iPhone 12 Pro Max has.
I spent a lot of time characterizing mmWave performance during my LMDS days at Wavtrace, and I can tell you that rain and foliage are not kind to the higher frequencies, so the inclusion of 26 GHz in the new phones should make mmWave 5G more likely to work well especially as Seattle turns toward the rainy season.
This post serves as a brief summary of the technical specifications of the many radios in the Phone, iPad and the Apple Watch and as index for easier deeper exploration into each. Most of these are very broad categories (for example, there are many types of Bluetooth with differing data rates) and I’ll be linking each of these to more detailed breakdowns.
It’s an electric motorcycle… but it still needs an oil change 🙂
The spiral bevel gear primary drive (that rotates the motor output through 90 degrees to the belt drive) gets a special gear oil replacement after the first 1000 miles. Here’s a cool video of what my LiveWire, “ELVIRA” will be getting done next week:
TLDR: If at first you don’t connect, try, try and sometimes try again. I found my LiveWire would only connect to my phone roughly half the time, and waiting beyond 30 seconds for it to connect is unlikely to help.
I’m determined to uncover as much as I can as to what is undermining the Bluetooth connection between my new iPhone 12 Pro Max and my new Harley Davidson LiveWire electric motorcycle. It’s my thing – iOS and hardware, after all.
For this post, I decided to focus on a simple experiment. How often (and how quickly) does the phone connect to the bike when I power on the bike?
The results were kinda shocking honestly.
For the experiment, I placed my iPhone 12 Pro Max running iOS 14.7.1 on the seat of the bike. My Harley is running software version 01.02.00-02. My security fob was nearby, although not super close – it was in my thigh bag about 2m from the bike.
The only other devices connected to my phone were a Ford Mach-E and my Apple Watch.
I turned on the bike and started a stopwatch and waited to see how long until the Bluetooth indicator on the Harley turned from gray (not connected, see below) to blue (connected, see below.) If 90 seconds had passed, I gave up waiting and turned off the bike. If it did connect, I’d note the time, turn off the bike, and wait for the iPhone Settings > Bluetooth screen to also show it “Not Connected.”
If the bike didn’t connect, I’d wait until I heard the last relay click inside before during it back on, about 10 seconds or so (I didn’t measure this exactly.)
I repeated this 20 times.
9 out of 20 times it never connected. 11 times it did, but the time it took to connect varied quite a bit.
8 times out of 20 it connected in 24 seconds or less – the other three times it took 30, 35 and 44 seconds
And it isn’t as simple as waiting for 90 seconds turning it off and then getting it to connect. Twice it failed to connect 3 times back to back. Oooof.
So, the Traction Control and ABS lights toggle on, off and on again about every two second. They appear about 10 seconds after turning on the bike. One thing I’ll probably do until I sort this out is count 7-8 blinks and, if the Bluetooth hasn’t connected by then, turn off the bike and try again. Meh.
And something else peculiar came up during the experiment. Multiple instances of my LiveWire in Other Devices (see screenshot below). I’ll probably throw together a little app to see why that’s happening. iOS Settings > Bluetooth just shows the device name there.
I was excited to start setting up the Z-Wave bridge. That excitement has dimmed. I’m got the device in the mail, whipped out the installation instructions, plugged it into my Pi and…
The first step was to run a curl command to a http site and pipe it to sudo bash. Eeek.
I mean I know people joke that the “S” in IoT is for “Security” but this wasn’t funny.
I’d never ever do such a thing on a device and trust that device again. I proceeded against my better judgement to see how far the rabbit hole went. (I’ve since disconnected the Pi from the Ethernet and will reflash it soon.)
The next red flag was that although installing the bridge plugin went smoothly, the iOS Home app warned me that the bridge was not certified. Strike two.
I was about to try adding a Z-Wave device to the bridge when I just stopped. I was not going to trust this with access to my home’s devices.
Maybe I can write a bridge for this Pi peripheral myself and now I am curious about what Apple requires for certification:)
We’re moving away from Z-Wave tech and investing more deeply in Apple HomeKit. Part of that will include using a Raspberry Pi to act as a Z-Wave bridge until we (eventually) replace the Z-Wave devices with devices supported by HomeKit natively.
And because it would be boring just to plugin in a headless Raspberry Pi, I decided to have it do double duty as a digital picture frame using a neat little touchscreen by EVICIV.
This article covered most of the setup needed to use feh and xscreensaver, although I did need to do one tweak, probably because I am running a relatively new version of Raspbian (Raspbian GNU/Linux 10 (buster)) that was released after the article. Instead of finding the autostart file in ~/.config, it was in /etc/xdg/lxsession/LXDE-pi
Here’s what it looks like:
Yeah, I should put some real photos in there, not memes 🙂
Microsoft announced the release of .NET 5 today… and included an example with the quintessential “blink an LED” that is the Hello World of the embedded IoT space. Can’t wait to try it on one of my development boards.