Bug 5550 (int-148737)

Summary: "Not enough memory in target location" when receiving image from Nokia SU-1B using Bluetooth
Product: [Maemo Official Platform] Connectivity Reporter: Bernard Schendstok <bernard>
Component: BluetoothAssignee: unassigned <nobody>
Status: RESOLVED FIXED QA Contact: bluetooth-bugs
Severity: normal    
Priority: Low CC: andre_klapper, darren.long, johan.hedberg, philipp.zabel, sameer_1421986, Tor.Arntsen
Version: 5.0/(2.2009.51-1)   
Target Milestone: 5.0/(10.2010.19-1)   
Hardware: N900   
OS: Maemo   
Attachments: second hcidump file when a file is transfered from the SU-1B
the hcidump file when a file is transfered from the SU-1B

Description Bernard Schendstok (reporter) 2009-10-17 19:29:17 UTC
SOFTWARE VERSION:
1.2009.49-10

STEPS TO REPRODUCE THE PROBLEM:
With the Nokia SU-1B digital pen you can transfer your written notes as a gif
image to your phone using bluetooth.
When you do this you get the "save file" dialog on the Nokia N900, but no
matter were you try to save the image it always says: "Not enough memory in
target location"

EXPECTED OUTCOME:
You would expect to be able to save to image file normally. It works perfectly
on the N800 tablet or any other Symbian phone I tried. 
All other Bluetooth file transfers to the N900 work perfectly and there is
plenty of memory available.

ACTUAL OUTCOME:
No matter were you try to save the image, there is always the message "Not
enough memory in target location", but that is not correct, there is enough
memory in all locations I tried.

REPRODUCIBILITY:
always

EXTRA SOFTWARE INSTALLED:

OTHER COMMENTS:

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.14)
Gecko/2009090216 Linux Mint/6 (Felicia) Firefox/3.0.14
Comment 1 Andre Klapper maemo.org 2009-10-19 18:14:40 UTC
Thanks for reporting this.

Is the N900 supported/compatible with the SU-1B?
Could not find any info on http://europe.nokia.com/ and when it is not
officially supported it is not a bug...
Comment 2 Bernard Schendstok (reporter) 2009-10-20 01:08:42 UTC
According to the manual of the SU-1B it should support any phone that supports
"Object Push Profile", "Generic Object Exchange Profile", "Serial Port Profile"
and "Dial up networking profile".

I believe that the functionality that I'm talking about only involves the first
two profile (Object Push Profile and Generic Object Exchange Profile). 
According to the user guide of the N900 that was on the Nokia US website some
time ago, the N900 should support these two profiles (page 33).

After (successful) pairing with the pen, 
you check the send box on the paper
 and the operation is started.


after a few moments you get a message on the N900:

Title: "Receive file"

"Receive file via Bluetooth?"

"Device: Nokia SU-1B"

"File: Jot-26590.gif"

"Open file after saving"

you hit "Save"



Then you get:

Title: "Save file"

"Jot-26590"

"location Images" 

you hit "Save"



But instead of saving the file in the "Images" location, you get an error:
"Not enough memory in target location"

If you select a different location you get the same message.
Comment 3 Andre Klapper maemo.org 2009-11-20 19:21:17 UTC
> According to the manual of the SU-1B it should support any phone that supports
> "Object Push Profile", "Generic Object Exchange Profile", "Serial Port 
> Profile" and "Dial up networking profile".

I don't know exactly how to interpret the "and" here, if it means "all four of
them" then this is an enhancement request and not a bug.
The first two items are supported by the N900.

From http://www.forum.nokia.com/devices/N900/ :
A2DP, AVRCP, FTP, HFP, HSP, OPP. (Thanks VDVsx!)

Quoting from the on-device documentation of the N900:
"The device is compliant with Bluetooth Specification 2.1 + EDR supporting the
following profiles: General Access Profile, File Transfer Profile, Object Push
Profile, Generic Object Exchange Profile, Headset Profile, Hands Free Profile,
Advanced Audio Distribution Profile, and Audio/Video Remote Control Profile."

Also,
http://europe.nokia.com/find-products/accessories/all-accessories/home-and-office/wireless-digital-pens/su-1b/compatibility
does not list the N900.
Comment 4 Andre Klapper maemo.org 2009-11-20 19:22:28 UTC
Johan, can you maybe comment on this, please?
Comment 5 Johan Hedberg nokia 2009-11-20 21:28:45 UTC
(In reply to comment #4)
> Johan, can you maybe comment on this, please?

Sounds pretty strange. Is the reporter able to send files over Object Push from
any other device to the N900? What about creating a file in one of the
locations using e.g. the notes application?
Comment 6 Bernard Schendstok (reporter) 2009-11-20 22:14:29 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > Johan, can you maybe comment on this, please?
> 
> Sounds pretty strange. Is the reporter able to send files over Object Push from
> any other device to the N900? What about creating a file in one of the
> locations using e.g. the notes application?
> 

Yes, transfers from others devices (tested with Linux PC, N95 and nokia 5800)
 work perfectly. It doesn't matter what location you choose, they work with
these devices, but all locations I tested don't work with the SU-1B.
Comment 7 Johan Hedberg nokia 2009-11-21 10:52:37 UTC
Just speculating here but could it be that none of those other devices provide
a length header in their Put request (it's optional in OBEX) whereas the SU-1B
provides it and there's a bug somewhere in the checks for this length header
(where it's compared to the actual available space).

Could you take a HCI level trace so we'd see if this is indeed the case. You
can do that by installing the bluez-hcidump package and running "hcidump -XV"
as root while trying to do the transfer. You can find the package e.g. here:

http://repository.maemo.org/pool/maemo5.0/free/b/bluez-hcidump/

Be sure to start hcidump before you establish any connection since that way it
can determine that the higher level protocol is OBEX and will give you nice
human readable decoding of the OBEX headsers.
Comment 8 Bernard Schendstok (reporter) 2009-11-23 21:41:16 UTC
I tried to test it
I used the command:  "hcidump -XV -w /home/user/MyDocs/su1b_dump.txt"
to create the log/dump file, but that doesn't seem to be a readable format.

So I used: "hcidump -XV > /home/user/MyDocs/su1b.txt"
To create the other log file. 

it ends with "Reason: Remote User Terminated Connection", that is when you tap
outside the screen to cancel the transfer after you received the "Not enough
memory in target location" error
Comment 9 Bernard Schendstok (reporter) 2009-11-23 21:43:55 UTC
Created an attachment (id=1616) [details]
second hcidump file when a file is transfered from the SU-1B
Comment 10 Bernard Schendstok (reporter) 2009-11-23 21:45:05 UTC
Created an attachment (id=1617) [details]
the hcidump file when a file is transfered from the SU-1B
Comment 11 Andre Klapper maemo.org 2009-11-27 18:35:55 UTC
Thanks.
Imported (see Alias).
Comment 12 Darren Long 2009-12-15 20:48:20 UTC
I'd like to confirm this one, but the other device in my case was a SE Z610
phone.  I was attempting to transfer my entire set of contacts as a single
vcard, and I got the quoted error message on the N900.

There was plenty of space in all file-systems.  I changed the location of the
bt download to a variety of places on different media and the problem
persisted.
Comment 13 Philipp Zabel 2010-01-02 18:10:52 UTC
I get the exact same error condition trying to send any contact vcf from an old
Windows Mobile 2003 SE phone via bluetooth. The N900 recognizes the vcf file
and asks where to save it. Regardless of the location chosen, I always get the
not-enough-memory message and the only way to get out of the dialogs is to
cancel the transfer.
Comment 14 Sameer 2010-01-10 13:10:05 UTC
I get the same error too.

I am trying to send all my contacts from my Sony E// w700 to N900.
Comment 15 Tor 2010-01-11 12:32:07 UTC
*** This bug has been confirmed by popular vote. ***
Comment 16 Andre Klapper maemo.org 2010-01-11 12:41:26 UTC
"Problem is that OBJECT_SIZE_UNKNOWN (-1) gets compared against free space of
the device which is of type GnomeVFSFileSize (guint64) and -1 is interpreted as
biggest possible guint64 -> not enough space"

This is being worked on.
Comment 17 Tor 2010-01-26 17:59:38 UTC
I re-tested this after the 1.1 upgrade, and it appears to have been fixed in
1.1.
I have successfully imported a full .vcf file through Bluetooth.

Also see 6705 which seems to be the same problem. I'll make a comment there
too.
Comment 18 Bernard Schendstok (reporter) 2010-01-26 18:34:56 UTC
I also retested it using the Nokia SU-1B on the 1.2009.51-1 firmware, but I
still get the same result.
Comment 19 Andre Klapper maemo.org 2010-02-02 13:40:31 UTC
This has been fixed in package
connui-bluetooth 2.61+0m5
which is part of the internal build version
2010.04-11
(Note: 2009/2010 is the year, and the number after is the week.)

A future public update released with the year/week later than this internal
build version will include the fix. (This is not always already the next public
update.)
Please verify that this new version fixes the bug by marking this bug report as
VERIFIED after the public update has been released and if you have some time.


To answer popular followup questions:
 * Nokia does not announce release dates of public updates in advance.
 * There is currently no access to these internal, non-public build versions.
   A Brainstorm proposal to change this exists at
http://maemo.org/community/brainstorm/view/undelayed_bugfix_releases_for_nokia_open_source_packages-002/
Comment 20 Andre Klapper maemo.org 2010-03-15 20:52:35 UTC
Setting explicit PR1.2 milestone (so it's clearer in which public release the
fix will be available to users).

Sorry for the bugmail noise (you can filter on this message).
Comment 21 Andre Klapper maemo.org 2010-03-15 20:52:47 UTC
Setting explicit PR1.2 milestone (so it's clearer in which public release the
fix will be available to users).

Sorry for the bugmail noise (you can filter on this message).