Category Archives: Mac OS X

Ctrl-drag to Create Outlets in Custom Views

If anyone can tell me why Xcode (I’m using Xcode 7 beta 5) works this way, I’d greatly appreciate. I have created custom table view cells in the past and I’ve always control-dragged from my storyboard into the custom class to create the outlets. So, when I went to create outlets for a custom (ui)view I’m working on, I was stumped when I couldn’t ctrl-drag into the .h or .m file to create them (outlets or actions).

[Yes, I have all the relevant custom classes specified in the Identity inspector.]

The workaround is to type in the outlet/action code by hand. Once you have entered in your custom class file, you can connect the outlets/actions by dragging from the little dot (do these things have a special name?) Xcode puts in the line number gutter to the relevant UI element. What a pain in the ass.

</endOfXcodeRantForToday>

Handoff in iOS 8 and Yosemite (Beta)

I’ve been trying to get Handoff, one of of iOS 8’s Continuity features, to work since the betas of iOS 8 and Yosemite were available on the Apple Developer Site with very limited success. Now that iOS 8 is GM, it seems to finally work. Here are the steps I took to get it working.

First off, you need to make sure all of your devices are logged into the same Apple ID account. If you tap on the Settings app and scroll down to iCloud, iOS 8 now shows you which Apple ID you are logged in with, very handy. Same for OS X Yosemite, go to Settings > iCloud and on the left side beneath your photo is the active account. This was the case for me, so I moved on to the next step.

The main problem I had was my Mac and my iPad were not showing up in my iPhone’s Bluetooth settings panel. Restarting both my iPad and iPhone, as well as toggling Bluetooth off then on seemed to solve this issue. Note: It can take your iPad or iPhone a LONG time to see other devices (e.g. Mac, iPad, or iPhone) via Bluetooth, so you have to be patient.

Once both devices were restarted, all my other devices started to show up in the Bluetooth settings area. If this isn’t the case, try restarting again. Once you “see” them in Bluetooth settings, Handoff will work.

Of course, Handoff only works with apps that support this feature, such as Maps, Messages, Mail, Safari, Calendar, etc. I’ve already seen third party apps supporting it, so make sure to update (ideally via auto update) the apps on your devices. Also, I’ve only been able to activate Handoff (for iOS devices) from the Lock Screen. Maybe this is how it works. I really like how OS X Yosemite handles it, with a new icon on the left end of your Dock. If you know how to activate Handoff other than from the Lock Screen, I’m all ears!!!

[In iOS 8, a “grey” icon appears in the bottom left corner of the lock screen of your device. Swipe up (and possibly enter your passcode) to active Handoff.]

Finally, there still seems to be a few glitches. I noticed my iPhone or iPad didn’t always show the icon for the app I had activated on my Mac. For example, I’d bring Mail to the foreground, check my iPhone’s lock screen and see the little (grey) Mail icon in the lower left. Then I’d switch to Safari on my Mac. Sometimes the iPhone would update the icon to Safari, sometimes it wouldn’t. However, I’m sure this feature will just get better in future updates. For now, I’ve been able to get it work between Mac and iOS devices and between multiple iOS devices.

Not rocket science but hopefully this helps.

Norm

Garmin ANT USB Stick/Agent Issues

Virtually every triathlete I know owns a Garmin product of some kind and I’m no exception. I’ve been using Garmin hardware products for over 5 years now and am continually disappointed with several aspects of the experience. Here’s my latest issue. It’s probably not a big deal but if you have a Garmin USB stick plugged into your Mac and are running the Garmin ANT agent, you might want to check this out.

The Problem

I have a Mac Pro tower that I run as a server. It’s always on. I decided I would plug my Garmin USB stick into it and leave the agent software running. That way, whenever I came home, I would put my Garmin (310XT) on the computer table while I went to shower and my workout data would be downloaded and ready to go. This has been working well for about 6 months. This morning, completely unrelated, I was perusing my system log (via the Console app) and noticed a LOT of activity I had never seen before. There were literally hundreds of lines that said:

Jan 23 08:12:30 Mac-Pro kernel[0]: USBF: 3091688.364 AppleUSBUHCI[0xffffff80e1014000]::Found a transaction past the completion deadline on bus 0x3d, timing out! (Addr: 2, EP: 1)

I don’t know all the details behind what’s going on here but it appears if the Garmin USB stick is plugged in and the Garmin ANT Agent software is running, it polls the USB bus every 1-2 seconds. During this “activity” it seems the agent software does not quite clean up after itself, causing lots of system log entries. Surprise, surprise.

Now, this is probably not a big deal for my dual processor, quad core Mac Pro. However, I imagine there has to be some sort of performance hit, not to mention severely bloated log files (which make finding something you are really looking for quite difficult).

The Solution

Fortunately, there’s an easy fix. Just unplug your stick and the agent software stops polling. No idea if this affects Windows users and realistically, I doubt it affects many people but I thought I’d share.

Update Feb 2, 2013: I’m actually doing the reverse now. I leave the stick plugged in and just run the ANT Agent app when I want to download data.