iPhone and the Polaroid PoGo Printer

I bought a Polaroid PoGo Printer the other day.  It was on sale at “The Shack” for $29.99.  I’d always been intrigued because its little and battery powered.  The printer uses ZINK technology.  Its inkless — the color is embedded in the paper and appears when the printer heats the paper.  More about ZINK can be found here.

The printer connects via USB to Pict-Bridge enabled cameras and via Bluetooth to cameras and PCs.  One thing it does not do, however, is connect to an iPhone!  So I set out to see if I could print to the PoGo printer from my iPhone.

The first way is to copy the picture to a computer and then print from there — but that just isn’t fun enough.  So I decided to see if I could at least automate this process and keep it wireless.

The picture’s path would still be iPhone to computer to printer.  This is the process I used:

1.  Take picture on iPhone
2.  Email picture to myself from iPhone
3.  Use mail’s rules to detect the picture
4.  Have the mail rule run an AppleScript to send the picture to the printer

So — next I had to figure out the AppleScript and the rule.  I find AppleScript not particularly intuitive.  Figuring out how to get the picture from the email and then send it to the printer via Bluetooth was basically a process of Google Search, trial, and error.  In the end, I cobbled it all together.  My solution is fairly fragile.  It barely works, but it does work.

Here’s the AppleScript:

using terms from application "Mail"
 on perform mail action with messages newMessages
 tell application "Mail"
 (* Only process 1 message.  Note: rule ensures the message has at least 1 .jpg
attachment *)
 set firstMessage to item 1 of newMessages
 set theAttachment to first item of the firstMessage's mail attachments
 set theAttachmentPath to ((path to home folder) as text) & "test:"

 -- Make the file name unique-ish by adding a number representing the time to the file
name.  This is because iPhone sends pictures as photo.jpg.  
 set theAttachmentFileName to theAttachmentPath & (time of (current date) as string) &
theAttachment's name
 save theAttachment in theAttachmentFileName
 -- Use Bluetooth File Exchange to send the file to the printer.  I could only make
this work by using the numeric name for the printer.  This is found from getting additional
info about the device from Bluetooth preferences.
 -- You have to pass the file name as a POSIX formatted string.
 tell application "Bluetooth File Exchange"
 send file POSIX path of theAttachmentFileName as string to device "00-04-48-13-95-11"

 end tell (* Bluetooth File Exchange *)

 -- Make sure the file is fully transferred to the printer before deleting it.
 delay 30

 tell application "Finder"
 delete theAttachmentFileName
 end tell (* Finder *)

 end tell (* Mail *)
 end perform mail action with messages
end using terms from

In order to use the script, you need to create a folder on your Mac called “test”.  This folder needs to be at the top level of your user (Macintosh HD:<username>:test).  You can go thru the script and change the name and location of the folder, if you want.  Also, I saved the script into that folder — just to keep everything together.

Next you need to create a rule in Apple’s mail.app.  Here’s the rule I created:

Pogo Print Rule

Note:  You also need to create a mail folder called “temp”.  The messages are stored there.  You can delete them after the image has been printed.

To use the rule and script:

1.  Make sure your printer is paired with your Mac.  Instructions on pairing the Polaroid PoGo printer with a Mac can be found here.
2.  Make sure the printer is fully charged, turned on, and connected to your Mac.
3.  Make sure mail.app is running on your Mac
4.  Take a picture with your iPhone (or you can use one from your photo gallery on the iPhone).
5.  Click on the “share” button when viewing the photo, and choose “Email Photo.”
6.  Send the photo to yourself (the account where you created the rule in mail.app)
7.  Once the photo is sent from your iPhone, and received by your Mac — printing should automatically begin.

My script will only print the first photo attached to an email.  Also, you should not send a second photo until the first one is completely printed.  Things will not work if the printer battery is nearly depleted or the printer doesn’t have any paper.

If anyone has any suggestions on how to improve this process let me know.


Tags: , , , ,

13 Responses to “iPhone and the Polaroid PoGo Printer”

  1. darryl iiams Says:

    my zink sends the request for the code which is 6000 yet I am not able to get the OS 3 to connect to the printer. I am using window vista 64 is there any way to get my iPhone to function with the printer?

    I have tried Print n Share from itunes download and that is a complete bust.
    Do you have a work around for the pairing of the iPhone and the Polaroid PoGo printer\/

    • odelljamie Says:

      Hi Darryl,

      There is no supported way to connect the PoGo printer directly to the iPhone. The iPhone doesn’t support the right Bluetooth profile. I think you could probably get it to work if you jailbreak your iPhone and install additional Bluetooth support — but I haven’t tried it.


  2. darryl iiams Says:

    I have found the PoGo is compatible the iPhone 2g only at this time.

  3. Andrew Says:

    Hi. Not sure if you can help but I tried to do what you have listed above (very annoying the iPhone doesn’t support this) and everything works except the transfer to the Pogo from the Mac. I get an error message that says something like: Transfer failed. The target device does not support the object-push protocols.

    Any ideas what I have done wrong?

    Many thanks.

    • odelljamie Says:

      Hi Andrew,

      You need to find the actual name of your printer — there is a place in my script that is specific to the printer. To do this:
      A. Go to system preferences/bluetooth.
      B. Select the Polaroid printer from the list of the devices. If its not there, then you need to pair it with your Mac first.
      C. Click on the gear icon at the bottom of the list, and choose “show more info.”
      D. In the window on the right hand side, find “Address” and write down the code next to address. In my case its “00-04-48-13-95-11”
      E. Find that in my script and change it to the address listed for your printer.

      Let me know if that helps.

  4. Ed Says:

    Does anyone think a bluetooth adapter plugged into the pogo’s usb port will connect with an iphones bluetooth? Polaroid gives a list of bluetooth adapters that work with the pogo. Or how about using a wifi adapter instead?

  5. Carlos L Says:

    I tried your solutions but the script does not compile.
    I changed the printer name, but other than that, I copy pasted your text

    any ideas of what can be going wrong?


    • odelljamie Says:

      Are you using Snow Leopard? I haven’t tested this on any earlier versions of OS X – so it may not work on anything but Snow Leopard.

  6. Jake Says:

    With this tutorial you can print to the pogo with the 3g and 3gs over bluetooth.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: