10 September
2007

The iPhone has a note-taking application, but at present the notes do not seem to get synchronized with the host computer. I wrote a program that allows you to sync and save the notes database from the iPhone and/or restore it at a later date. It also produces an ASCII text file (notes.ascii) that has the content of the notes so that they can be accessed off the phone.

The program is python code and requires a python interpreter. This is found by default on Mac OS X, but I am not sure about it's status on Windows.

On a Mac, running it would involve opening a terminal window and typing:
python getNotesaver.py

The program can use the USB connection to communicate with the iPhone (in which case iTunes needs NOT to be running and the open source iphuc program must be installed). It can also communicate with the phone using scp, assuming you have "jailbroken" the phone and installed this tool. If you use scp, then the phone needs to be on your network and you should know it's IP address.

TO USE THIS, YOU EITHER NEED TO HAVE ALREADY INSTALLED iphuc ON YOUR COMPUTER OR ELSE INSTALLED scp ON THE PHONE ITSELF, FOR EXAMPLE USING iNdependence.

Of course this program comes with no assurance of utility or anything else. I do not warrant it in any way against any consequence, direct or indirect. I believe it works well, but by using this you disclaim all recourse for whatever it does, even if it erases your database, your phone or your bank account.


The program is here. The latest version is version 1.2.0. This page entry is updated as new releases appear.
(it was originally released as version 1.0 and there were several other versions).

It now includes the ability to patch the display of the cell-phone carrier name to allow the name to fit in the allocated space, for those not using AT&T. (Yes, it's sort of an odd feature for this tool.)

Feeback is welcome, especially from Windows users who should feel free to provide patches.

Updated Nov 26, 2008 to version 1.3.2 (Not all updates are noted in this way.)


By Gregory Dudek at | Read (4) or Leave a comment |    
Comments
Re: iPhone note sync save (getNotesaver.py)

http://www/dudek.org/getNotesaver.py gives me:

Apache Tomcat/4.0.6 - HTTP Status 405 - HTTP method GET is not supported by this URL
type Status report

message HTTP method GET is not supported by this URL

description The specified HTTP method is not allowed for the requested resource (HTTP method GET is not supported by this URL).

Posted by: triedit at October 15,2007 14:20
Zaro boogs

Whoops, the URL was broken: "www/dudek.org" instead of "www.dudek.org". Sorry. It's fixed now.

Posted by: dudek at October 15,2007 16:31
Re: iPhone note sync save (getNotesaver.py)

Hmmm... Gives a traceback on startup for me. I chose to use the USB option so I installed pexpect and iphuc but when I run getNotesaver.py I get the following traceback. I did just install the new iPhone 2.2 software...

[ Thanks for the helpful bug report. I'll try to check it out soon. -gd ]

[My line numbers don't match yours and I can't reproduce this error. I just updated it to version 1.3.2 which I suggest you try. (Check your version with the "-version" flag). -gd]

> python ~/bin/getNotesaver.py
Traceback (most recent call last):
File "/Users/cwatts/bin/getNotesaver.py", line 340, in
usb("/var/root/Library/Notes/notes.db",NOTES,restoremode)
File "/Users/cwatts/bin/getNotesaver.py", line 192, in usb
child.expect('iPHUC.*\.*:')
File "/Library/Python/2.5/site-packages/pexpect.py", line 1311, in expect
return self.expect_list(compiled_pattern_list, timeout, searchwindowsize)
File "/Library/Python/2.5/site-packages/pexpect.py", line 1325, in expect_list
return self.expect_loop(searcher_re(pattern_list), timeout, searchwindowsize)
File "/Library/Python/2.5/site-packages/pexpect.py", line 1396, in expect_loop
raise EOF (str(e) + '\n' + str(self))
pexpect.EOF: End Of File (EOF) in read_nonblocking(). Empty string style platform.

version: 2.3 ($Revision: 399 $)
command: /Users/cwatts/bin/iphuc
args: ['/Users/cwatts/bin/iphuc']
searcher: searcher_re:
0: re.compile("iPHUC.*\.*:")
buffer (last 100 chars):
before (last 100 chars): ttempt returned -402653150
iphuc: please relaunch and try again.
>> Nothing left to do. Exiting.

after:
match: None
match_index: None
exitstatus: None
flag_eof: True
pid: 421
child_fd: 3
closed: False
timeout: 10
delimiter:
logfile: None
logfile_read: None
logfile_send: None
maxread: 2000
ignorecase: False
searchwindowsize: None
delaybeforesend: 0.05
delayafterclose: 0.1
delayafterterminate: 0.1

> python ~/bin/getNotesaver.py
Traceback (most recent call last):
File "/Users/cwatts/bin/getNotesaver.py", line 340, in
usb("/var/root/Library/Notes/notes.db",NOTES,restoremode)
File "/Users/cwatts/bin/getNotesaver.py", line 192, in usb
child.expect('iPHUC.*\.*:')
File "/Library/Python/2.5/site-packages/pexpect.py", line 1311, in expect
return self.expect_list(compiled_pattern_list, timeout, searchwindowsize)
File "/Library/Python/2.5/site-packages/pexpect.py", line 1325, in expect_list
return self.expect_loop(searcher_re(pattern_list), timeout, searchwindowsize)
File "/Library/Python/2.5/site-packages/pexpect.py", line 1396, in expect_loop
raise EOF (str(e) + '\n' + str(self))
pexpect.EOF: End Of File (EOF) in read_nonblocking(). Empty string style platform.

version: 2.3 ($Revision: 399 $)
command: /Users/cwatts/bin/iphuc
args: ['/Users/cwatts/bin/iphuc']
searcher: searcher_re:
0: re.compile("iPHUC.*\.*:")
buffer (last 100 chars):
before (last 100 chars): ttempt returned -402653150
iphuc: please relaunch and try again.
>> Nothing left to do. Exiting.

after:
match: None
match_index: None
exitstatus: None
flag_eof: True
pid: 439
child_fd: 3
closed: False
timeout: 10
delimiter:
logfile: None
logfile_read: None
logfile_send: None
maxread: 2000
ignorecase: False
searchwindowsize: None
delaybeforesend: 0.05
delayafterclose: 0.1
delayafterterminate: 0.1

Posted by: cwatts at November 21,2008 17:38
Version 2 iphone software

It was updated today to version 1.3.2. This is probably required for phones at version 2 or later, since the account that holds the notes has changed from "root" to "mobile". The code is now exclusively for OS version 2 phones (old or new hardware). To make it work again with version 1 firmware, you need to edit the getNotesaver.rc file that the progam creates, and change the "USER" from "mobile" back to "root."

Posted by: GDudek at November 26,2008 08:40
Trackbacks
Please send trackback to:/blog/75/tbping
trmonbovia

chilio

Posted by: acchiacalli at May 18,2009 12:32
chitab

darlaa

Posted by: cororacroe at May 19,2009 19:39
elelrelm

trocrorotrbo

Posted by: boctaboboc at May 20,2009 02:27
Post your own response

Each comment is manually screened for the presence of appropriate and substantive content, due to a constant onslaught of comment-spam. This means there may be a delay before your comment appears.


(Some kind of name is required, will be visible)

Required, whatever you enter will be visible to other users.


(Optional, used for "mailto" link)

Your email address is not required, but if you insert it it will be displayed so people can contact you.

Answer this question correctly to demonstrate that you are not a dumb spambot.



The title for your comment.



Your comment goes here. All relevant comments are welcome, except for those that simply promote an irrelevant product or else are used to fraudulently inflate the link count to an irrelevant web page. They appear after moderation. Don't forget to also fill in the captcha below or your text will be rejected automatically!

You must answer this question to prove you are human
The governator said (when in a movie as T2): 'I'll be ... (pick a number): 1:tuckered, 2:broke, 3:back, 4:broken, 5:swartzneggered, 6:eaten, 7:you?

Answer this question correctly to demonstrate that you are not a dumb spambot.