Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
You have no clue what you are talking about. The USB spec was introduced to encourage interoperability and reuse of device drivers. The vendor ID is intentionally supposed to have as little to do with what drivers are loaded as possible. The USB device classes are where this should primarily be determined.

But the Vendor ID is needed because different manufacturers of devices have slightly different interpretations on things, and of course don't forget the OEMs (nVidia drivers didn't always work properly with nVidia chipset gfx cards, in fact they still recommend going to your device manufacturer for drivers).

I think the fact that you are NEVER supposed to use another vendor's Vendor ID is telling at how important it is, regardless of what you personally think on the matter.

I'm sure you wouldn't be thrilled if Apple suddenly decided to partner with SanDisk and block all other manufacturer's USB Mass Storage devices, just so they can make a couple of extra $$$. All this USB interoperability was very convenient for Apple a decade ago when very few peripheral devices were Mac compatible.

But this isn't what is happening, it's not the same, so it's a moot point!

iPhone/iPod as music players are NOT Mass Storage devices, they are a "Composite" device class. This composite class has in ID of 0 (zero). This defines the device as implementing non of the standard classes (such as HID, Audio, Video, Wireless Controller, etc.). If you read the USB spec, it's perfectly acceptable for this.

http://www.usb.org/developers/defined_class
 
You have no clue what you are talking about. The USB spec was introduced to encourage interoperability and reuse of device drivers. The vendor ID is intentionally supposed to have as little to do with what drivers are loaded as possible. The USB device classes are where this should primarily be determined.

No, the USB spec was introduced to have one standard *physical* interface that all devices could use, instead of choose from the (at the time) tons of different interfaces. Part of the point was also to make things more plug-and-play, which at the time was not possible with RS-232 serial ports. It says nothing about interoperability of different USB peripheral devices with each other or their host software.

http://en.wikipedia.org/wiki/Usb

"USB is intended to replace many varieties of serial and parallel ports."
 
You have no clue what you are talking about. The USB spec was introduced to encourage interoperability and reuse of device drivers. The vendor ID is intentionally supposed to have as little to do with what drivers are loaded as possible. The USB device classes are where this should primarily be determined.

Drivers are a matter for the OS. Mac OS X still recognizes the Palm Pre, still loads up drivers and still presents it to software. Nothing is broken as far as connecting a Pre to a Windows or Mac computer.

iTunes however is not a OS. It supports certain hardware for a sync function. It has to recognize the hardware that is connected to find hardware it is compatible with. Otherwise, iTunes would sync music to your printer or mouse or keyboard or any other USB devices.

Palm decided to pose as an iPod (Palm iPod) in order to try to get in the backdoor. Apple decided to strengthen their detection so they would sync to Apple iPods only. Palm then broke their license with the USB-IF and pretended their device was a Apple iPod.

iTunes doesn't have to interoperate. iTunes is not a market. If Mac OS X detected and blocked the Pre at the OS level, you might have a point. As it stands, you don't.

Apple also provides 3rd parties with a syncing solution to get to the contents of the iTunes database. They are thus not being anti-competitive, they document everything and they offer interop through supported methods. Palm chose to not use those methods.

And yes, Palm has hurt someone. It has hurt its own customers in all of this.
 
But wouldn't Apple make money from selling tunes if they allow other devices access to the iTunes music library?

I really don't understand the "yaay Apple won" sentiment on here. Everyone loses, except maybe Apple shareholders.
 
Your straw man argument suggests that I implied Palm wasn't going against the USB IF. We know trivially that Palm is going against the mood of the USB IF. But I argued that the USB IF is going against the spirit of "standards" per se. Another example would be MS when it uses an extension field in implementing a well-known protocol, instead of using a method explicitly described in the standards document. It is very easy to go against the spirit of a general principle while conforming to the letter of a specific implementation.

For example when asking a device for its Vendor ID, it will ONLY respond with the Vendor ID assigned to the Vendor by USB-IF (not what Palm was doing).
And you ask a device for its vendor ID only for informational purposes, right? That is what Apple is doing, right?

Just because I can tell what the device is doesn't necessarily mean I can use it.
You are correct. It would use some perhaps vendor specific device class to announce that it supports an X device driver, and you would therefore need to write an X device driver. Notice the vendor ID not coming into this?

iPhone/iPod as music players are NOT Mass Storage devices, they are a "Composite" device class. This composite class has in ID of 0 (zero). This defines the device as implementing non of the standard classes (such as HID, Audio, Video, Wireless Controller, etc.). If you read the USB spec, it's perfectly acceptable for this.
0 = use interface descriptors, which would make sense for a composite device supporting multiple interfaces. For example, an iPod supports inter al. the mass storage device class, otherwise you wouldn't be able to plug it in to pretty much any machine and mount the iPod's internal drive. Am I misunderstanding you?
 
Interoperability, but not how you think!

Your post is completely ignorant of reality. What Palm first did was have the Pre post a USB profile that said it was an "iPod" class device made by "Palm". That is what any USB device does. iPod is just a class of device, like "Mass Storage" or "HID" that helps determine what drivers to use. That is how every USB device interoperates on any platform. Apple then changed iTunes to only interact with "iPods" made by "Apple". That was when Palm complained to USB-IF.

Your info is a bit wrong. For starters there is no such Device Class of iPod.

Here's a list of them: http://www.usb.org/developers/defined_class

The device descriptor contains the following:
  • Descriptor Version Number
  • Device Class - iPod/iPhone etc. are all 0 (Composite Device)
  • Device Subclass
  • Device Protocol
  • Device Vendor ID/Product ID
  • Device Version Number
  • Number of Configurations
  • Manufacturer String - "Apple Inc." for iPhone/iPod
  • Product String
  • Serial Number String

iPod is a device within a class, not sure of which it would really fit though, as the iPhone has around 8 different "Configuration Descriptors" which are "HID" and then it has some Vendor Specific classes (incidentally, these are allowed by the USB spec under Device Class 255).

Everyone screaming about interoperability is doing so at a level whereby interoperability was never intended.

From USB.org Defined 1.0 Class Codes:

Base Class FFh (Vendor Specific)

This base class is defined for vendors to use as they please. These class codes can be used in both Device and Interface Descriptors.
 
Would you feel better about this if Apple only allowed you to connect "HID" keyboards and mice made by "Apple"?

Many companies make keyboards. Only one company makes iPods. So if I connect a device to my Mac and the device says "I am a keyboard made by Microsoft" then the OS would have to believe that (unless it contains lots of code to check that keyboard against a list of all keyboards Microsoft has ever made which would break when Microsoft builds another keyboard). But if I connect a device to my Mac and the device says "I am an iPod made by Palm", then the OS _knows_ that the device is lying.

If for example a company created forged Microsoft keyboards, and Microsoft lost money because of that, then it would be completely Ok if Microsoft added code to Windows to prevent use of forged Microsoft keyboards, and it would be completely Ok if Microsoft asked Apple to do the same thing so that forged Microsoft keyboards cannot be used with a Macintosh.
 
i hate to think where all these Pre owners would be if they owned only a PC and Apple didn't make iTunes for Windows? mercy me, whatever would they sync their Pre to?

The clearly palm could take apple to court and force them to create a version for pc called 'preTunes'. :rolleyes:
 
Your info is a bit wrong. For starters there is no such Device Class of iPod.
You are being obtuse. What everyone on the internets refers to as a "device class" is, usually, only allowable as an interface class. For the purposes of discussion, the distinction is irrelevant.

Vendor Specific classes (incidentally, these are allowed by the USB spec under Device Class 255).
Now we're getting somewhere;)...

Everyone screaming about interoperability is doing so at a level whereby interoperability was never intended.
Are you saying it is not intended to use interface classes to identify the interface? The phrase "as they please" must be taken in context; it should not mean that using a 255 class means we can ignore the letter and spirit of the rest of the USB standard, or ignore general conventions of standards. To wit: you are still announcing a particular subclass and protocol to which your device conforms. Here remains where it is defined, not in the vendor ID.

(A possible concern: surely if it is vendor specific, only the vendor ID can differentiate between otherwise identical subclass/protocol assignments by a different vendor? this is a technical flaw in field lengths, which are not sufficiently long that the globally unique identifiers can be assigned without central authority. As pre-broken versions of iTunes illustrated, using a vendor specific base class does not create a mass of conflicts.)
 
But wouldn't Apple make money from selling tunes if they allow other devices access to the iTunes music library?

Not really; they make most of their money from hardware sales. What Apple's doing here is perfectly understandable and acceptable...they can be evil sometimes, but this is not one of those cases. Their position in the industry does, I think, suggest some obligation to provide interoperability, which is sufficiently covered by the iTunes XML file. Note that this is not used by iTunes itself, which has its own library--the XML is there expressly and only for the benefit of other vendors, not Apple. (You can delete it, and iTunes will continue to operate exactly as before.) All Palm has to do is use this like RIM does, then everything's settled to the satisfaction of all companies and consumers involved. Simple enough, no?

--Eric
 
ZOMG HOW DARE YOU .. YOU EVIL PALM COMPANY! HOW DARE YOU! EVERYONE NEEDS TO.. not compete with the iphone!

What are you talking about kid? This thread was not about palm
competing with apple it's about Palm illegally using apples vendor ID and being stupid enough to report which in turn screwed them. I think the forums your looking for are pre central
 
Under USB-IF’s policy:

Palm may only use the single Vendor ID issued to Palm for Palm’s usage… Usage of another company’s Vendor ID is specifically precluded.

Aside from dealing with the horrible build quality and lousy battery, Palm needs to get back to the drawing board and either make their own music app, or simply sync with iTunes the right way, or just stop lying to its customers about a non-existent feature.

The whole Pre release is turning out to be a joke.
 
There are no words to describe how pleased I am with USB-IF.

To some extent, I agree. The fact that they have spoken up about a technical violation over what it seems should be no more than an informational field, while tacitly accepting that the USB standard enables software to be written that can only work with particular vendor's devices, is an explicit acknowledgement of what many already felt: that the USB standard is a cheap convenience for mass hardware producers, not a standard concerned with technical excellence and interoperability.

I assume that Palm's next move will be a Windows/Mac OSX USB device driver that does nothing more than forward packets and change the vendor ID of any Palm device passed from device to host to be the vendor ID of an Apple device. After all, two can play the game of writing software that plays cheeky with the USB standard, right?:D
 
And less interoperability for consumers. That blows.

I like the idea of being able to sync iTunes with whatever device I own.

Okay, look, you stupid monkeys who can't understand this point, but yet someone has to make it over and over again.

This isn't about iTunes being able to sync to other devices. It's about the fact that the Pre had to tell iTunes it as an IPOD to do it! So instead of getting the tiny bit of licensing needed to have their device sync to iTunes, they made their device LIE and pretend to be an ipod. THAT IS WHAT THIS IS ABOUT. Apple doesn't want devices that aren't iPods, to tell iTunes that they are. That is all. This isn't about greed, it isn't about money, it's all about fixing a blatant lie that even M$ has the integrity to not perpetrate!
 
they made their device LIE and pretend to be an ipod

Computers hate it when you anthropomorphise them.

Really, if one device I own happens to send a particular sequence of bits to another device I own in order to complete a task I want performed, all happening in the confines of my office, there is no "lying" taking place. It is irrelevant what some busybody feels about the bits that are sent, regardless of whether they have had a part building the equipment I have paid for.

Anyway, no sentience, no meaningful lie. I might as well argue that the wind is lying to the flower when, after a day's calm,a gust suddenly blows off its petals.
 
Computers hate it when you anthropomorphise them.

Really, if one device I own happens to send a particular sequence of bits to another device I own in order to complete a task I want performed, all happening in the confines of my office, there is no "lying" taking place. It is irrelevant what some busybody feels about the bits that are sent, regardless of whether they have had a part building the equipment I have paid for.

Anyway, no sentience, no meaningful lie. I might as well argue that the wind is lying to the flower when, after a day's calm,a gust suddenly blows off its petals.

Way to really take semantics and such things and totally go away from the sake of what this entire thread was about.

Fine. I'll restate. Palm lied, by making their device state that it was an Apple iPod so that the Pre could sync, via the USB VID. People are still trying to make an argument that Apple should allow other devices to sync with iTunes, which they have before, or in the case of non-licensed devices, they can use the XML data to sync to the iTunes database. Or on a totally unrelated level, iTunes purchases now are DRM free. So it's very easy to just sync through another program with your purchases to a Pre. Maybe, you know, some Palm software for it? Oh wait, Palm hasn't made any yet, because they chose to make their device have the wrong VID on it.

Your troll post managed to snag me, this is true, however my point is still quite valid.

As other people have said, it's really quite cut and dry.
 
The USB-IF responded in the only way logical and legal way it could. Palm hijacked Apple's USB identifier, which was SPECIFICALLY against the rules and requirements THEY AGREED TO when they signed on as a USB device maker. Palm knew what they were doing was wrong, but they did it anyway. They needed SOME sort of Hail Mary pass to try to compete with the rapidly growing iPhone market share. So, they cheated. Plain and simple. And now they're busted. Plain and simple.

But what is scarier than Palm's outright deceptive actions, is the number of folks in this thread that simply don't "get it". I mean those of you that simply can't understand why what Palm did was completely wrong. It was immoral, probably illegal, and just plain wrong. Yet, too many don't get it at all and that is scary!

But, that's to be expected. The average IQ in the US is about 100, which is scary in its own right! :eek:

Mark
 
But wouldn't Apple make money from selling tunes if they allow other devices access to the iTunes music library?

I really don't understand the "yaay Apple won" sentiment on here. Everyone loses, except maybe Apple shareholders.

Apple makes money from selling tunes because they allow other devices access to the iTunes Music Library.

RIM has mediasync which does exactly that. Missing Sync is a 3rd party app that syncs to many devices and does just that.

You don't have to have iTunes open and running to sync iTunes' media library to a device. You only have to open iTunes to use iTunes to sync.
 
To some extent, I agree. The fact that they have spoken up about a technical violation over what it seems should be no more than an informational field, while tacitly accepting that the USB standard enables software to be written that can only work with particular vendor's devices, is an explicit acknowledgement of what many already felt: that the USB standard is a cheap convenience for mass hardware producers, not a standard concerned with technical excellence and interoperability.

I assume that Palm's next move will be a Windows/Mac OSX USB device driver that does nothing more than forward packets and change the vendor ID of any Palm device passed from device to host to be the vendor ID of an Apple device. After all, two can play the game of writing software that plays cheeky with the USB standard, right?:D

Again, you are assuming interoperability is required at a level far beyond the scope of USB. Apple is merely utilizing the USB standard to maintain the integrity of their own software.

This whole debate is ridiculous. iTunes is not a market, it's not an OS. It doesn't have a monopoly, and a "piece of software syncing with its company's devices" is nothing new. Palm Desktop software didn't sync with Windows Mobile phones. Zune Player doesn't sync with iPods. Moreover, iTunes exposes an approved interface (the iTunes Library XML) that allows for third-party syncing, as used by Blackberry (and others). Is it really such a hassle that "Palm Pre Sync" might pop up when you plug in your Pre instead of iTunes?

Talk about a tempest in a teapot. Palm did wrong, they got slapped. Instead of piggybacking on someone else's investment, maybe they should do a little grunt-work of their own.
 
I dont see how this is helpful for the tech world. Congrats all you Apple fanboys Apple has again shown they are growing to become a fascist company that is everything they were against when they started. Doesn't matter its just a matter of time before Missing sync or another company solves this.
 
ZOMG HOW DARE YOU .. YOU EVIL PALM COMPANY! HOW DARE YOU! EVERYONE NEEDS TO.. not compete with the iphone!

This comment would make SOME sense if Palm actually.... I dunno.... had a competing software product? Oh wait, they don't. You don't slap a Mercedes hood ornament on a Honda, drive it into the dealership, and seriously expect service, do you?
 
Apple has invested some serious capital in the development and marketing of iTunes.

Now Palm is freeloading off Apple's intellectual property and profiting from it.

As a shareholder, I believe Apple should sue Palm for damages.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.