Tag Archives: iPhone

Fixing dual-SIM provisioning for T-Mobile and GigSky

When Apple announced dual-SIM support for the new iPhone XS, I immediately decided to buy one instead of the iPhone XR that I really wanted. My reasoning was simple: both the XS and XR had a much improved camera, but the XS would allow me to provision a data-only SIM for my international travel. I ordered one and happily started using it, even knowing that dual-SIM support wouldn’t be available at launch.

It’s important to understand what Apple actually supports: you can have one or two SIMs in your iPhone XS or XS Max. One of them may be a physical SIM; the other is a virtual SIM called an eSIM. There’s no requirement that the eSIM be data-only; you can have two phone numbers, provided by two different carriers from two different countries, if you want. All I wanted was international data, so I planned to buy an eSIM from GigSky. Keep in mind that, as of this writing, only a handful of carriers support eSIM. For example, T-Mobile in the US won’t sell you an eSIM, but T-Mobile in Austria will.

It’s also relevant that this phone came from Apple’s iPhone Update Program (IUP). IUP phones aren’t locked to a particular carrier, or at least they aren’t supposed to be.

I downloaded the GigSky app, bought a plan, and tried to flip the switch that enables the secondary SIM. No dice– when I did, the phone screen briefly flashed up the “Hello!” activation screen, then I got a dialog that said, simply, “Actication required.” Not super helpful.

After trying a few random things, like rebooting the phone, I filed a support ticket with GigSky. “Your phone must be locked,” they said. “Contact T-Mobile.”

So I did; TMO looked up my IMEI and said “nope, we don’t have it locked. Call Apple.”

So I did. Apple fooled around for a bit, had me try removing the existing GigSky eSIM and readding it (which you can’t do; I had to buy another one), then told me to verify that T-Mobile supports eSIM. As I mentioned earlier, they support using eSIMs on phones locked to them (which this one wasn’t anyway), but T-Mo US can’t sell you one– not relevant in this case.

I then called Apple back and spoke to a very helpful gentleman named Matt. He suggested that I back up the phone and erase it, then reactivate it, to force it to get a new activation profile. I dutifully did this, whilst sitting in my Swiss hotel room. After a long cycle of reset-related stuff (new FaceID, resyncing with my Apple Watch, &c), I bought a third GigSky eSIM and was able to activate it without error. The picture below tells the story: I’m roaming on Swisscom (through T-Mobile’s normal international roaming for voice and SMS) on my primary SIM (thus the small “P” icon) and using GigSky for data.

Long story short, Apple still has some work to do to make this process work more smoothly, but I am hopeful they and their carrier partners will file down the rough edges to make it less painful in future.

Leave a comment

Filed under General Tech Stuff

An offer for Tim Cook

[note to readers: I encourage you to repost, retweet, and otherwise spread this offer. It’s legit; I am happy to help Apple in any way that I can. Since I don’t have any Apple execs on speed dial, perhaps social media will get this to the right folks. ]

Dear Mr. Cook:

We’ve never met. You’ve almost certainly never heard of me. But I’m going to make you an offer that I hope you’ll accept: I want to help you quit making such a mess of the world’s Exchange servers. More to the point, I want to help the iOS Exchange ActiveSync team clean up their act so we don’t have any more serious EAS bugs in iOS. The meeting hijacking bug was bad enough, but the latest bug? the one that results in Exchange servers running out of transaction log space? That’s bad for everyone. It makes your engineers look sloppy. It makes Exchange administrators into the bad guys because they have to block their users’ iOS devices.

These bugs make everyone lose: you, Microsoft, and your mutual users. They’re bad for business. Let’s fix them.

You might wonder why some dude you’ve never heard of is making you this offer. It’s because I’m a long-time Apple customer (got my first Mac in 1984 and first iPhone on launch day) and I’ve been working with Exchange for more than 15 years. As a stockholder, and fan, of both companies, I want to see you both succeed. Before there was any official announcement about the iOS SDK, I was bugging John Geleynse to let 3Sharp, my former company, help implement Exchange ActiveSync on the phone. He was a sly devil and wouldn’t even confirm that there would be an EAS client for the phone, but the writing was on the wall– the market power of Exchange Server, and the overwhelming prevalence of EAS, made that a foregone conclusion.

I’m an experienced developer and a ten-time Microsoft Most Valuable Professional for Exchange Server. I have experience training developers in Exchange Web Services, and I know EAS well; in fact, I was an expert source of evidence in the recent Google/Motorola vs Microsoft case in the UK. As a long-time member of the Exchange community, I can help your developers get in touch with experts in every aspect of Exchange they might want to know about, too.

It’s pretty clear that your EAS client team doesn’t know how Exchange client throttling works, how to retry EAS errors gently, or all the intricacies of recurring meeting management (and how the server’s business logic works). If they did, the client wouldn’t behave the way it has. They could learn it by trial and error… but look where that’s gotten us.

I’m in Mountain View, right up the road. Seriously. Have your people call my people.

Peace and Exchange 4eva,


Filed under Security, UC&C

iOS 6 and Exchange ActiveSync misbehavior

Brace yourself for a surprise: there’s at least one major bug in Apple’s Exchange ActiveSync client in iOS 6.

cue shocked silence…

This is not surprising, of course; EAS is a fairly complex protocol and Apple has displayed a somewhat cavalier attitude towards verifying that their EAS clients behave properly. If you don’t believe me, all you have to do is look at this list of known EAS issues with third-party devices and see how many of them involve iOS.

Anyway, the latest widely reported  issue is that meetings sometimes appear to be hijacked– Alice will send out a meeting invitation to Bob and Carole, but somehow Carole will end up as the meeting organizer, thus gaining the ability to cancel or change meetings.

The hijacking bug isn’t the only one; users have reported a few other iOS 6 EAS issues, including its apparent failure to handle the case where the user’s primary SMTP address is different from the user name (e.g. an SMTP address of paul@robichaux.net coupled with a UPN of paul.robichaux@robichaux.net, for example), but these other issues all have easy workarounds; meeting hijacking is the most pestiferous.

The usual pattern for these bugs is fairly predictable:

  1. Apple (or another EAS licensee) releases an update.
  2. People start complaining in various fora that some EAS-related functionality is broken. However, these reports are only rarely made directly to either Microsoft or the vendor.
  3. A critical mass of reports accumulates and begins to draw attention. This is often accelerated by the opening of support cases with either Microsoft or the ISV.
  4. The source of the problem is identified, a resolution is developed, and everything is fixed.
  5. GOTO 1

Now, stop laughing. That really is what usually happens. Note that Microsoft’s hands are somewhat tied during this process. Until they get feedback from customers that something is broken, they can’t very well investigate it. I imagine that it is very frustrating for the EAS team to see people blaming Exchange for what end up being bugs in the EAS client implementation. But I digress.

Tony points out a few nuances of how the process works, including suggestions for figuring out which devices are actually in use. (Note that one improvement in iOS 6 is that it reports a value for the DeviceOS property returned by Get-ActiveSyncDeviceStatistics; older versions just left that field blank.) Leaving that aside, though, it’s interesting to consider what’s known about the calendar hijacking bug. The best explanation I’ve seen, ironically, comes from the Z-Push development team. (Z-Push, you may recall, is an open-source EAS implementation that has nothing to do whatsoever with Exchange.) However, they are apparently first to market with a public explanation of the problem with iOS 6 that causes meeting hijacking. I won’t repeat it here; it’s worth reading the original. The root of the problem appears to be that iOS 6 emits meetings with zero attendees, and that Exchange accepts these as valid. I’m not sure whether Exchange’s acceptance is a desired behavior or not but I’m pretty sure that the device should never be emitting a zero-attendee meeting. It’s possible that there are cases where this is not true, which is why the Z-Push folks are holding their patch in QA for now instead of pushing it into the main tree of their product.

The tricky issue here, of course, is how to get the problem fixed for those of us who aren’t using Z-Push. Microsoft could conceivably make a change to Exchange’s business logic for calendar items, preventing ill-formed meeting items from being propagated. Apple could likewise fix their client so that it doesn’t send out ill-formed items in the first place. Both sides have an interest in providing a smooth EAS experience for iOS users, but each side has a different set of engineering and delivery constraints that make the process of actually getting the fix out to customers a challenge.

Microsoft hasn’t publicly said much about this bug, other than that it is being investigated. (And Apple, AFAIK, has said absolutely nothing about it, which is regrettably typical.) Your best bet is to keep an eye on KB 2563324 for updates so you’ll know when Microsoft believes they have a solid understanding of the problem and the best way to fix it.

Meanwhile, the Z-Push team claims that turning off the Exchange calendar attendant feature would eliminate the problem, at the cost of some useful functionality. The iOS 6 bug is rare enough in most environments that I’d advise living with it rather than giving up the attendant functionality, but that’s a choice you’ll have to make based on your users and their needs.

I wonder whether Emtrace’s MoxierMail client has this problem? I’ve got an evaluation copy but haven’t been able to evaluate it yet; might be time to move that up a couple of notches on the priority scale….


Filed under UC&C

Advice to Exchange ActiveSync developers

Now the folks at Apple, Google, and other ISVs who develop Exchange ActiveSync clients no longer have excuses for bugs and misfeatures in their clients. Why? Because Katarzyna Puchala of Microsoft (already one of my favorite Microsofties thanks to her work as part of the Exchange unified messaging team) has posted three very detailed articles on how clients should behave when synchronizing with Exchange servers:

That means, third parties, that there are no longer any credible excuses for why your clients do things like randomly delete meeting requests, or fail to work with EAS autodiscover. Sadly these articles come after the release of OS X Lion, and past the point at which EAS bugs are likely to meet the release bar for iOS 5… but I can always hope that the first service release for each of those operating systems will include fixes to make their EAS implementations act right.

Leave a comment

Filed under UC&C

Some must-have iPhone apps for the kids

[ Update: rewritten because the original’s links were bad. I deleted it, and now people who clicked on the original link are getting 500’d ]

Arlene and I upgraded our iPhones to the 3GS model last night, and David got a 3G 8GB to replace his ooold Nokia flip. Tom is awaiting the arrival of his iPod Touch. With that in mind I wanted to link to a few apps that I frequently use. This isn’t a complete or exhaustive list, but it’s a start.

  • The Scriptures, a free app that renders the standard works of the LDS Church (Old Testament, New Testament, Book of Mormon, and Doctrine and Covenants), complete with footnotes and a really helpful search feature.
  • The Mormon Channel, which provides a number of LDS Church-sponsored audio and information feeds, including full text of Church magazines, scriptures, and content from General Conference sessions. Interestingly, this is a community-developed app— I’m signing up to work on it. (It’s free.)
  • The Weather Channel: all the local forecasts you could possibly want, supported by ads. There’s an ad-free Max version for $4 that adds beach forecasts, radar maps, and some other stuff
  • feX for Facebook: syncs your Facebook friends list with your iPhone address book (and thus, by extension, with Exchange or whatever you’re using on the back end). This is the fastest way to get pictures of your contacts, not to mention their birthdays and so on. It’s well worth the $0.99 cost.
  • TweetDeck: a great free Twitter client. It’s supposed to be able to sync with the desktop version, but I haven’t gotten it to work properly yet.
  • Blog with iBlogger is $10. However, it’s by far the best blogging client I’ve found for the iPhone. It handles multiple blogs with aplomb and can easily post text and photos. I haven’t tried posting any videos yet, though.
  • Shazam, a free app that identifies songs for you then lets you quickly buy them from iTunes. Perfect for places where they often play music you don’t recognize.
  • iPhlix for remotely controlling my Netflix queue (including adding and removing items; well worth its $3 price) and its partner in crime, the free U-verse TV remote control app. Between these two I can remotely record or request shows or movies no matter where I am (e.g. in the back of an airplane somewhere).

Comments Off on Some must-have iPhone apps for the kids

Filed under Friends & Family, General Tech Stuff

The iPhone as a mail device, 3.0 edition

[ Updated on 23 June 2009 to fix a couple of mistakes and add a few new tidbits ]

Last summer I wrote a post about the utility of the iPhone 2.0 as an e-mail device for people, like me, who are heavy e-mail users. Now that the 3.0 release of the iPhone OS is upon us, I wanted to post an update to see what Apple’s fixed, or not, from the original complaints. I had hoped to get some hands-on time with a Palm Pre as well, but haven’t quite made it there yet. However, I have spent some time using the version of Outlook Mobile from Windows Mobile 6.5, so that’s now my baseline standard for comparison.

Executive summary: Apple invested a ton of time in the 3.0 release, but most of it went to other aspects of the OS, not into the messaging and calendaring experience.

Policy and account control

I didn’t spot any changes here. The big one I was hoping for was the ability to create and manage multiple Exchange ActiveSync accounts. Sadly, Apple didn’t include this. The extended policies in EAS version 12 (like forced disablement of the camera or Bluetooth) still aren’t supported. You still can’t install your own certificates, either.

[Update]: As Chris Haaker pointed out in the comments, you can indeed disable the camera using Exchange 2007 EAS; for a complete list of the policies 3.0 supports, see this doc at Apple’s site; and, of course, you can install your own certs by e-mailing them to the device, using the over-the-air configuration utility, or distributing profiles with the utility. In addition, Apple improved certificate support quite a bit: 3.0 adds the ability to provide client certs for authentication, and it now uses OCSP for checking certificate validity online instead of depending on static CRLs.


In my initial review, I started with basic e-mail operations. These are essentially unchanged: the look and feel of the Mail application is identical to the 2.0 version for the most part. The annoying automatic expansion of EVERY SINGLE FOLDER YOU HAVE is still there. You still cannot delete messages while the iPhone is offline. Instead of fixing this issue, Apple has chosen to deactivate the “delete” icon on the message toolbar. However, when you’re in the message list view, you can still use the swipe-to-delete gesture, or the Edit button, to delete a message… and then you get the same error that the message can’t be moved to the trash. Fail.

You can queue replies or forwards while offline, which is a welcome improvement.

One area where Windows Mobile 6.5 really shines in comparison to the iPhone is in the new conversation view for e-mail. There are a number of other WM 6.5 mail improvements that I won’t cover here; suffice to say that the new Outlook Mobile extends Microsoft’s lead by providing a better pro-level e-mail experience than the iPhone 3.0 does. Apple could definitely improve things just by using the correct EAS verbs for reply and forward, though, which they still don’t do

Oh, that bug with not properly sending IMAP EXPUNGE commands to remove deleted messages: still there. I guess Apple thinks it’s a feature.


If you didn’t like the iPhone 2.0 calendaring experience, you won’t find much to change your mind here. You can now create meeting invitations for your Exchange calendar (but not for your MobileMe calendar, a baffling omission given that MobileMe is marketed as a service useful for families). I am hopeful that the forthcoming Exchange support in Apple’s Snow Leopard OS will force Apple to make iCal more useful, and that those changes will ripple out to the iPhone. Until then, though, Windows Mobile still kills the iPhone in calendaring usability.

Speaking of usability: since my original review I found a few more annoyances:

  • meeting cancellation notices show up on your calendar as “Canceled:whatever“; there’s no way for you to use the cancellation notice to remove the event.
  • If you receive an invitation on the device, then accept it from the desktop or OWA, it will still show up in the calendar app as a pending invite until you try to open it.
  • You still can’t see .ics files that arrive in IMAP-connected Exchange accounts. Fortunately, Exchange 2010 includes an OWA link in meeting invites, so you can click the link to jump into OWA and accept the invitation there.

[Update] One nice addition that I forgot to mention: when you get an invitation, you can see where it falls on your calendar, and there’s a new disclosure chevron next to meetings you create that lets you view the status of the invitees (provided you’re using Exchange 2007).

IMG_0105.PNG IMG_0106.PNG  


Nope. This is another promised Snow Leopard feature that will hopefully make an appearance on the iPhone at some point. In the meantime, I’ve been using imTasks, which works flawlessly with all of my Exchange accounts. I also tried TaskTask, which has a somewhat nicer interface but which hasn’t worked very well for me.


Steve Foskett summarizes this better than I could. Bottom line: it’s like the Mac OS X Address Book in your pocket, with all the good and bad that entails. No support for contact public folders, no way to add a GAL contact to your own contact list, and a 100% chance of getting duplicates if you use Entourage + Sync Services to sync contacts to the device through MobileMe.

New iPhone 3GS features [UPDATE]

Apple says that the 3GS has “hardware encryption”. It’s not really clear exactly what this means. In the enterprise deployment guide, This blog entry suggests that remote wipe is so much faster on the 3GS because it’s essentially a decommissioning operation– erase the master encryption key for the device and you’ve effectively erased all its data. I haven’t seen any confirmation of that, though, and it’s not clear what other value there is to encrypting data on the device given that apps are sandboxed and there’s effectively no external storage. (You also can’t force encryption on with EAS, as you can on Windows Mobile).


Filed under UC&C

Lotus to license Exchange ActiveSync (updated)

Apparently IBM has decided that the best way to get mobile e-mail out of Notes/Domino is to license their primary competitor’s protocol! Network World ran a story today (“Lotus Notes/iPhone users to get their wish: real-time e-mail access“) claiming that IBM will include Exchange ActiveSync (EAS) support in a future release of Lotus Notes Traveler, IBM’s existing mobility solution. (Ed Brill mentioned it this morning, when I was revising this draft, too.)

This is fascinating for several reasons. First, it further solidifies EAS’ position as the dominant mobile sync protocol for e-mail, calendar, and contact data. When your biggest competitors (like Apple and Nokia in mobile devices and now IBM in collaboration software) come hat in hand to license your stuff, that’s a good sign. The original decision to license EAS to outside parties some years ago looks better and better– especially in light of the EU’s continued and bizarre insistence that Microsoft isn’t documenting and opening its protocols enough.

Second, this move implies some things about the state of the relationship between IBM (or at least the Lotus division) and Apple. IBM certainly has enough skilled developers to build their own equivalent of EAS, and to get it to run comfortably on the iPhone. Apparently, though, they don’t have the market leverage to get Apple to ship that protocol as a peer of EAS, or to allow IBM to evade the SDK restrictions on backgrounding. Of course, Apple only added EAS support in the first place to give them another attack (a submission, if you will, to borrow a little BJJ lingo) against RIM and WM. Apple apparently doesn’t feel the need to have a similar move up their sleeve for those shops running Notes.

Third, follow the money. I couldn’t find any evidence of an IBM-Microsoft cross-license for patents (which makes perfect sense given the companies’ respective stances on Linux). IBM doesn’t break out many separate numbers for sales of individual products, but given what I know about EAS licensing I expect that they’ll have to pay Microsoft a per-unit fee for the server software that implements EAS on the Domino side. That in turn gives Microsoft some interesting data they didn’t have before: how many licenses of Traveler IBM is selling. Oh, and cash money, too.

Fourth, can you imagine the field day Microsoft’s sales and marketing team is going to have with this? This is like one of those “write your own caption” contests.

Fifth, this represents a win for Windows Mobile too. Now they too can work seamlessly with Domino installations with no additional client software.

Meta-thought: IBM must have really wanted to get Notes on the iPhone. Why? It’s hard to imagine that it’s because of the huge overlap between Notes users and iPhone users, because I don’t believe such an overlap exists. Could this be an attempt by IBM to cash in on some of the halo generated by the iPhone? Does the iPhone coattail effect make up for having to license a protocol from the hated Redmondites? I guess we’ll have to wait and see…

Update: IBM’s actual press release is here. I like the phrase in the intro paragraph: “…intended support for Microsoft Active Sync”. I wonder what “intended” means in this context?

Comments Off on Lotus to license Exchange ActiveSync (updated)

Filed under UC&C