Monday, November 07, 2005

Stop Dashboard widget

Cool OSX Apps: Stop Dashboard widget

A review of AC power adapters for Mac portables

TidBITS#803/31-Oct-05 has an unsual review -- of power adapters.

MBS: Hardware Monitor for OS X

ThermographX is a nice app, but for slightly more money MBS: Hardware Monitor is very impressive indeed. I use it now to constantly look for problems with my iMac 2GHz ALS rev B overheating. There's also a free app called Temperature Monitor.

Note the drive check may wake the drive from sleep, so be careful about using it. (There are two ways to check drive temp, maybe one doesn't wake the drive?)

Sunday, November 06, 2005

Sync disaster #257 - New Missing Sync 5.0 wipes out address book on my i500 cell phone

Computers have caused me vast pain over the years, but nothing has hurt so much as synchronization. I had disaster #257 when an attempt to sync my Samsung i500 PalmOS 4.1 address book with my OS X Address Book using Missing Sync 5.0 locked up and then wiped out my phone book.

Why does sync cause so much pain?

I think it's one of those marvelous problems that is:

1. Actually quite trickly and complex, since it involves syntax, semantics, data model reconciliation, mapping and more. To anyone who's worked in the knowledge representation industry these are words to inspire deep fear.

2. Thought by management to be quite simple.

That's an equation for disaster. The only thing worse than a fundamentally hard problem is a hard problem that's grossly underestimated. Mapping disasters killed Palm (Outlook data model reconciliation issues). It won't kill OS X, but it's interesting to see how Apple bodged this one.

They made a big deal about iSync, which was really pathetic and confusing, but now they have 'Sync Services' in Tiger as well as iSync (probably because they want iTunes on Windows to sync Outlook data to iPods, so they had to move sync into a layer that could be shipped on Windows). Add in something like Missing Sync 5.0 and disaster is well nigh unavoidable (MS 5.0, for example insists on including an iPod in the sync melange, as though two device sync wasn't hard enough!

So, now I'm trying to recover my address book. addressbook.data tiger - Google Search helped. The file is AddressBook.data in Tiger and it's easy to find using Spotlight. There are previous versions too, so I'll try swapping one of those, or just restore from my backups. Don't be fooled by all the cache files that contain addresses; those are generated to help Spotlight work.

Update 11/7/05: I'm not sure this wasn't due simply to the fact that the i500 appears to be USB 1.0, I have about 3000 contacts, and there seems to be a lot of work going on with each contact synched. I let the thing run overnight and it might have completed.

iMac heating problems and the curse of the Canon printer driver

Apple's forum has a not-yet-deleted thread on heat concerns with the iMac (ambient light sensor Rev B) model.

Some excerpts:
Apple - Discussions - OVERHEATING (of new iMac & version-B)

... fans started revving higher over the last couple of weeks. Didn't change after I installed 10.4.3. I reset the smu, no change. Then i remembered some one mentioning a dust factor in the bottom vent. So I took off the back and looked. No blistering (actually I've only heard of one case of als blistering yet many seem to have this belief that the rev b hardrives blister from excessive heat.), no capacitors messed up and clean as a whistle. However when I took some air to the vent there was quite a bit of dust in the vent. I made sure all of it was out and the inside were clean, closed it up, reset the smu again and for the last week its been even quieter than when new. temps are normal, except the harddrive is cooler and the fans have been great. If they do start to get louder do to a load, they come back down very quickly after. In short, its behaving better than when I got it.

... I've had more fan noise in the past few weeks. (machine specs as in footer, 3-4 month old ALS G5 2GHz 400MB 1.5GB RAM 20")

I can't tell why, but I think the system runs hotter. I had upgraded from 512 to 1.5GB and I wonder if that's tipped something to a higher temp. I switched to 10.4.3 and did some system maintenance (reset the SMU

Using ThermographX I find:

- low speed mode: CPU 145 F, drive 114 F
- high speed mode: CPU 192 F, drive 126 F with a noticeable persistent fan hum
- automatic: behaves like high speed mode, for some reason I don't seem to stay at the low speed temp once I go to automatic

By your note my system is running consistently ABOVE the "critical point" for the CPU (187F) you referred to.

... AppleCare is not a panacea however. My impression from Macintouch reading is that Apple outsources AppleCare and that the 'repairs' can be questionable. If time is an issue one may be better off going with the extended warrantees that are available with some credit cards and using them to pay for repairs done by a non-Apple authorized service center -- if you can find one! We do have one such in the twin cities.

In the meantime I think persons who bought a Rev B thinking Apple had fixed the design problems with the Rev A need to assume that the Rev B is similarly flawed. Clean the air filters, monitor temperature (themographX is $7), set the machine to sleep when not in use, don't use it as a media server, set the CPU to lower speed.
Update 11/7: This was solved.

When I set Activity Monitor to show ALL processes, not just my processes, I discovered that PrintJobMgr was occupying 90% of my CPU. A google search revealed this is a known problem; a stuck Print Job can drive CPU utilization up, shift the iMac to highest CPU setting, and drive system heat up. The print job was stuck because my Canon IP 4000 ink jet has been flaky ever since I attached it to my Airport Extreme USB print server. I don't like print servers! In this case my wife initiated the print job and I had no idea it never completed. I've also read a comment from an expert source that Canon printer drivers in OS X seem to be very CPU intensive and can cause heat spikes.

The CPU is now running abou 100-110 F and the hard drive about 100-110 F.

In Print Center I found the stuck print job and removed it. The machine started to cool down almost instantly. In automatic mode again the temperature continued to drop, as tracked by 'Hardware Monitor' (which I will buy).

When I figured this out I felt a bit guilty about lambasting Apple for their iMac Rev B persistent heat problems. After further consideration, however, I think a bit of basting is in order (I'll take my lumps too.) There's something wrong when an errant print job can cook a $2000 computer. Four things in particular:
  • Why did this job hang in the first place? Why is printing to Apple's Airport Extreme print server unreliable with the Canon IP4000? How much of this is Canon's fault vs. Apple's fault?
  • Why does PrintMgr hog so much of the CPU?
  • Why didn't some process notify the user of a rogue job?
  • Lastly, of course, this does emphasize that the iMac G5 remains vulnerable to overheating with CPU intensive processes.
So Apple does have something to answer for.

BTW, this issue of heat and computation, and monitoring systems for thermal burden, isn't going away. Heat production and power consumption are the key drivers now of system and CPU design -- and this will be so until we cook the planet. (The physical limits of computation are, I dimly recall, somehow related to the ability to dump heat ...)

Update 11/8: A few odd thoughts and tips related to managing heat output on all iMacs
  • via Macintouch: turn down LCD brightness
    "The LCD brightness setting has a significant effect on power consumption: minimum 82 W; midpoint 88 W; maximum 106 W. With this in mind, I've set the brightness to minimum, which is perfectly adequate (the factory setting is maximum). This should reduce component thermal stress issues and extend display life, because much of that power is being dissipated as heat, rather than going into actual light output."
  • have machine sleep often and rest hard drive aggressively
  • this is not a great machine to use as a video server!
  • run at temperature monitor and activity monitor routinely -- look for spikes and rogue processes (caveat: I'm seeing some odd system instability doing this, I need to investigate further.)
And a thought on fan noise:
  • If the fans are loud -- ask is the system hot (appropriate fan activity) or not (OS bug). Just put your hand in the exhaust stream and feel if it's hot.
  • If the system is cool, reset the system management unit (SMU) or even zap pram or reset the open firmware, repair permissions, do a safe start, sacrifice a chicken beneath the full moon, etc.
  • If the air exhaust is hot, find out why. Check active processes. Clean the intake vents. Consider the preceding voodoo -- but it likely won't help. Don't let the system run hot -- this is bad.

Thursday, November 03, 2005

Microsoft Office SP2 disables ability to edit an Excel spreadsheet via Access

This morning a routine tool I use stopped working. My access query that appends to an Excel spreadsheet gave me this unhelpful error message: Operation Must Use an
Updateable Query.

I spent an hour fruitlessly trying to figure out what had happened, then I gave up and rebuilt it using another approach. I asked around on usenet and got a quick and accurate response

The response pointed to this Microsoft kb article:
You cannot change, add, or delete data in tables that are linked to an Excel workbook in Office Access 2003 or in Access 2002

...This expected behavior occurs when either of the following conditions is true:

• You have installed Microsoft Office 2003 Service Pack 2 (SP2).
• You have installed the update for Access 2002 (KB904018) that is dated October 18, 2005.

...
MORE INFORMATION

Because of legal issues, Microsoft has disabled the functionality in Access 2003 and in Access 2002 that let users change the data in linked tables that point to a range in an Excel workbook. However, when you make changes directly in the Excel workbook, the changes appear in the linked table in Access.
The kb article includes a set of workarounds that are pretty humorous, along the lines of 'open Excel and type in the data'. Evidently Microsoft has fallen afoul of a patent (a stupid patent I'd wager).

Wow. I wonder how great a productivity hit this is around the world. I would really like to know why Microsoft didn't put a prominent warning in the installer for SP2 or on their SP2 web site. Did the courts forbid notification? Did Microsoft think no-one would notice?

This combination of non-notification and loss of functionality from a "service pack" is unprecedented. Microsoft seems to have become a very troubled company very quickly.

Wednesday, November 02, 2005

Working around iTunes lack of multi-user support

Update 2/28/06: Geez, this is complex. I ended up giving up on the sync approach when I found I could do just as well by dragging and dropping a music folder from my Public folder onto my wife's copy of iTunes. (I only need an update sync, not a true sync.) However, some things didn't work. My wife couldn't select a bunch of tunes and edit ratings and preferences across the group, she could however set preferences on one file at a time. I had a hunch permissions were an issue. She could read from but not write to the Public folder.

So, I next used Sharepoints to create a new Group called Parents (grrrr. OS X should have an easy bundled GUI app to do this -- in this regard OS X is as bad as XP Home.) and added Emily and I to that Group. Then I set permissions on the Music folder within my Public folder so Parents could read and write to the Music folder. This fixed the problem.

Why is write access required to set ratings using one method, but not with another method? I don't know, but I'd bet I've uncovered some hacked designs in iTunes.

Update 11/8/05
: MacOSX Hints has a version of this that's at least comparable if not better. I might integrate the two some day or leave it up to the reader! The MacOSXHints submission includes an AppleScript that looks like it may update the Client's Library database when tunes are added to the Master Library. That sound great and I'll try it.

Update 11/10/05: The synchronization script referenced in Mac OS X Hints didn't work when two users were on the same machine and used Fast User Switching. I figured out how to revise it to support FUS (my first ever AppleScript project). I posted the sample code to the comments section on the Mac OS X Hints article. I may create a web page for this sometime; the techniques are apparently undocumented. (Parenthetically, I think AppleScript's days are numbered -- the lack of documentation is impressive.)

Update 12/11/05: It turns out there's a much easier approach that just works with iTunes. After adding new tunes to the 'master user', switch to the 'client user'. Then click on the folder containing all the music. Drag and drop to the left side of iTunes. iTunes compares and only adds references to the new music. View by date added and add to playlists as desired.

Here's my original article with its updates:

There's a "design flaw" in iTune when it comes to multi-user support.

Here's a brief version of the hack to work around it. I'll write more when I'm less tired.
1. Move iTunes Library to Public folder of iTunes owner. (If you don't know how to do this you shouldn't be trying a hack like this!).
2. User 2 opens Public Folder. Copy 'iTunes Library' file to User 2 music folder.
3. Open iTunes. Change advanced prefs on Library to 'don't copy when add'.
User 2 now has their own database pointing to the music repository. They can rate songs, create playlists, etc -- all independently. They can sync with their own contacts and calendar and their own version of iPhoto. (Ahh, but you want to use the shared iPhoto library? Tough luck! Similar set of problems as with iTunes. I'm still working this one. For now I export the images that will go on my wife's Nano.)

But what about songs I add to my collection in future? I have experience with this in another setting. You keep track of what you added and you drag and drop the folder into iTunes for User 2. iTunes will add the songs by reference (since pref is set to 'no copy'.) A bit tedious, but not that hard really. We only add songs occasionally. When you do this drag and drop by the way, iTunes does not create duplicates, it's very good at resolving these conflicts.

Can user 2 do damage? Not to the music library. They have read but not write privileges on the Public folder. [see 2/28 update for why this doesn't quite work]

Update 11/3: A longer version of the above that I submitted to MacOSXHints:

iTunes is designed to support multiple iPods, but not multiple users. In particular attributes like "last played" and "ratings" are meaningful only for a single user. Contacts and Calendars are also user specific.

That's fine, unless your spouse (SO, daughter, son, etc) has their own iPod. Each time they sync they'll mess up smart playlists that depend on "last played", and "ratings wars" may occur.

Of course they could have their own music collection and sync in their own user account. That's presumably what music owners would like. Communal property is not their favorite topic. Apple could readily fix this (see below) but their music partners would likely object.

There's a workaround. I used something similar to this in the past and it works reasonably well if you have a mature music collection and are not adding a ton of new music.
User 1 moves iTunes Library Music to User 1 Public Folder (iTunes will do this for you if you change Library location then tell it to consolidate). Copy User 1 iTunes database there to for the moment using the Finder (ignore the xml file, iTunes recreates that).

User 2 copies the iTunes database file to their default location, deleting their old database. Start iTunes. Change advanced options to uncheck import into iTunes when adding music.

User 2 now switches to their account when syncing. They set ratings, etc. They have their own Playlists.
What about new music?
User 1, Administrator, handles all new music import.

After new music is added Administrator switches to user 2 account (need to know pw of course, otherwise user 2 has to do this) and uses Finder to navigate to newly added music.

Administrator starts user 2 iTunes and drags and drops new music folder into user 2 iTunes.
iTunes is very good at adding references to the new music, but it does not move the music into iTunes because we unchecked the 'move into library' option.

Note that User 2 cannot delete music (read-only privileges on Public folder). User 1 can delete, but User 2 will have dangling references. So, periodically Administrator must delete dangling references in shared libraries, though in fact they don't really do anything -- they just look unsightly. (I think there's an AppleScript that might do this.)

OS X users and groups: not much progress since 2001!

I have a scheme in mind to get around the DRM-constrained design "flaws" in iTunes for a multi-user family.

The first step is to create a shared folder that's read-only for most of the family. That's where the iTunes music files will live. Problem is, that's not easy to do in OS X. As near as I can tell this 2001 article is still true today: The Mac Observer: Hot Cocoa - Unlocking The Power Of Groups In Mac OS X. I think there are some more GUI utilities one can buy (ex: Sharepoints), but Apple has not addressed this -- probably because this is the province of OS X server. Mac Classic was far more useful as a home file server.

Microsoft did the same yucky thing; in many ways Windows 95 was a better fileshare than Windows XP Pro. In this case, though, Apple is even worse than Microsoft.

Anyway, getting the file share working is the least of my concerns! I can do the command line stuff or use sharepoints. This will be interesting ...

Update 2/27/08: I put my iTunes Library in my Public folder, which grants read access to everyone, but no write access. The Shared folder grants read and write access to everyone. That seemed to work, but I discovered that iTunes actually uses a mixed model to store metadata. Some is stored in the internal database, some stored in the local file system. It's complex, I think there are some significant deep design problems with this in iTunes. I need to experiment with granting write access to one user but not the children. Looks like I'll be donating money to Sharepoints if it works!

Fix for 10.4.3 fan problems: unplug and restart and resetting the SMU (PMU?)

[Via macintouch]

Interesting! Seems to work for many who get roaring fans: Turn off, unplug, push power button to drain (capacitor issue?!) then plug and restart.
Macintouch - Mac OS X 10.4.3

10.4.3 Fan Problems: A big thank you to Peter Trondsen for his tip of disconnecting the power cord and pushing the power button. My rip roaring iMac G5 is quite again.
Anything that involves capacitors in the iMac worries me, and the pushing power button to drain sounds like a capacitor to me (I'm no EE though.).

An Apple kb article talks about the same sort of thing -- another bizarre embedded smart device management unit is causing trouble, and has its own exotic reset:

The SMU (System Management Unit) is a microcontroller chip on the logic board that controls all power functions for your computer. If your computer is experiencing any power issue, resetting the SMU may resolve it. The SMU controls several functions, including:

* Telling the computer when to turn on, turn off, sleep, wake, idle, and so on.
* Handling system resets from various commands.
* Controlling the fans.

Note that resetting the SMU does not reset the PRAM. Resetting the SMU will not resolve issues in which your computer is unresponsive—in these situations, restarting your computer will generally suffice. If your computer isn't responding, perform these steps one at a time, in this order, until the issue has been resolved:

1. Force Quit (Option-Command-Escape).
2. Restart (Control-Command-Power).
3. Force Shut Down (press the power button for 10 seconds).

Resetting the SMU can resolve some computer issues such as not starting up, not displaying video, sleep issues, fan noise issues, and so on. If your computer still exhibits these types of issues even after you've restarted the computer, try resetting the SMU. To reset the SMU on an iMac G5 (Ambient Light Sensor) computer, simply do the following:

1. Turn off the computer by choosing Shut Down from the Apple menu, or by holding the power button until the computer turns off.
2. Unplug all cables from the computer, including the power cord.
3. Wait 10 seconds.
4. Plug in the power cord while simultaneously pressing and holding the power button on the back of the computer.
5. Let go of the power button.
6. Press the power button once more to start up your iMac.

Unlike earlier iMac G5 computer models, the iMac G5 (Ambient Light Sensor) and iMac G5 (iSight) computers do not have a button on the main logic board for resetting the SMU. This eliminates the need to remove the computer's back cover to reset the SMU.
Not to be confused with the Power Management Unit! Arggghhh. Apple's embedded OS devices drive me crazy. I wonder if the 10.4.3 update tries to update the SMU logic and that causes the fans to roar. The SMU reset article suggests that owners of 1st generation iMacs won't benefit from the unplug trick -- they'll have to open the iMac and push the internal reset button.

I'm getting similar problems though with 10.4.2 and my iMac; I dropped the CPU to "low" to reduce heat and the system quieted. That happened after a memory update; I wonder if installing the memory somehow confused the SMU, but it's true I'm also running iTunes continuously now. I'll try this and report what happens.

Corruption in blogger database producing lost posts?

This is a bad bug. I created a post in Blogger yesterday that has vanished. It's still on blogspot
but it's not accessible in Blogger. If I click on the edit link that appears (when authenticated) below viewed blogspot files I get this error message:

The post you were looking for was not found.

From the error message I can see the blog and postid for blogger:
blogID=5710205
postID=113090838306544429

The only way I can see this kind of asynchrony is if there's a corruption problem in the blogger database. Not good.

I only discovered this because I had a link to the now lost posting in another blogger post that still exists. I wonder how long this has been going on.

Nano Notes

Emily got a Nano for her birthday. Here are the odd things I noticed that, I'd guess, most wouldn't.

1. When you export all contacts from OS X Address book, a single file is created, not a set of .vcf files. Interestingly the Nano can handle this file. This is the easiest way to dump a bunch of contact data manually into the Nano. I'll experiment with dumping more than one of these. (iTunes mediation of syncing with Address Book is messed up when multiple users share the same music library.)

2. Gordon's Tech: iTunes and iPod integration and oddities mentions sharing a cable with an older iPod and some oddities of iTunes integration. Alas, the kb is wrong. The 3G firewire iPod will not sync using the cable that comes with the Nano.

More to come ...

Tuesday, November 01, 2005

Remote control for iTunes - Sailing Clicker and more

Still trying to figure out a way to take control of our home media server. I'm currently controlling streaming from my iMac to my stereo using TuneConnect (remote AppleEvent control of iMac) on my iBook and a separate complex kludge involving SlimServer, LAME, iTunes, Airport Express, and mp3 radio streaming (don't ask).

The Kensington remote works with the Airport Express, but it's IR. Doesn't work from the kitchen like the iBook with TuneConnect.

But then there's Sailing Clicker. The Bluetooth won't work (the iMac is out of range) but an 802.11b client that can handle WPA encryption could work. They support the Palm T/X. (Palm TX).

Sailing Clicker is $24 and the T/X is $300. A bit pricy since a Roku would do more and cost less. However both my wife and I have old SONY CLIEs. Either one could suffer a mysterious accident, and be replaced with the T/X ...

Update 11/2: Griffin has the AirClick.
Update 11/7: Griffin has just revised the AirClick. Also, Roku has now documented the 'Roku Control Protocol' which allows one to control a Roku device directly. This overall problem -- managing the relationships between music source, digital rights management, network bandwidth, user location, multi-display, locus of control, device integration, etc etc is really neat from a usability and design perspective. Frustrating (esp. the DRM part) but neat.

Gordon's Tech: iTunes and iPod integration and oddities (the lost posting)

This is a recreation of a post I did on 11/1 that Blogger apparently lost:
Gordon's Tech: iTunes and iPod integration and oddities

Computer vendors have a tough time managing multiple users. Palm blew it completely, they never reconciled their view of the Palm Desktop with the multi-user nature of XP.

Apple has done a bit better, but they're far from perfect. Consider iTunes on one machine that syncs with 3 iPods, two belonging to one user and one belonging to another user. How should the system be setup? Assume the music is shared.

There's no good answer. Ideally the music would belong to a neutral user and each iPod would sync with a shared Library and local playlists. Alas, items from a shared Library cannot be added to local playlists, nor can they be synced to an iPod. If all users share one Library, however, the contact syncing doesn't work.

A basic design problem.

BTW, if one has a Nano and a 3G iPod one runs into an interesting conundrum. The 3G cable will charge both devices but won't sync the Nano, the USB cable will sync both devices but won't charge the 3G. Since I don't want to have too many cables dangling from my iMac, the USB cable will stay there to sync both devices but the firewire cable will go to cradle downstairs to charge devices.