View Full Version : Manufacturer Specific Pids
berntd
November 26th, 2009, 09:44 PM
Hello all,
What is the general concesus about manufacturer specific PIDs?
Should a manufacturer use a specific PID only once or should they be start at 8000 for each different model but actually do different things?
Example:
On model 0100,
0x8000 = LEFT_TURN.
On model 0200
0x8000 = RUN_TO_THEHILLS
or
On model 0100,
0x8000 = LEFT_TURN.
On model 0200
0x8001 = RUN_TO_THEHILLS
Kind regards
Bernt
sblair
November 26th, 2009, 10:19 PM
Bernt,
Section 6.2.10.2 covers all this.
Manufacturer-specific PID’s shall be created in the range of 0x8000 – 0xFFDF. Uniqueness of PID’s in this range is accomplished by associating the PID with the Manufacturer ID found as the most significant 16-bits of the UID. PID’s in the range of 0xFFE0 – 0xFFFF are reserved for future uses of this standard.
Manufacturer-Specific PID values should be selected by choosing the appropriate category from Table A-3 and adding an offset of 0x8000 to preserve a logical organization.
A manufacturer shall not use the same manufacturer-specific PID value for more than one meaning within any products falling under a given Manufacturer ID.
So long and short of it is that you must assign different PID's for different messages between products. You can't re-use PID #'s for different functions.
prwatE120
November 27th, 2009, 03:46 AM
Scott has cleary quoted the standard. Note that there are two SHALL statements and one SHOULD.
I have yet to see manufacturers follow the recommendation about selecting a category from Table A-3 and adding the offset of 0x8000, so please DO NOT make any assumptions ...
regards
Peter Willis
berntd
November 29th, 2009, 02:07 PM
Hello,
Thank yopu Scott, Peter.
Ok, so the PID is unique to the manufaturer code and not the model code.
That is easy and makes sense.
I do not understand the adding of offset x8000 to a pid from table A-3.
Surely if table A-3 has something that fits, we should just use that instead of a cutom pid?
Kind regards
Bernt
sblair
November 29th, 2009, 02:50 PM
Bernt,
Yes, if there is a public PID already defined that fits, you want to use it. The part about adding the 0x8000 offset for manufacturer-specific PID's is about categorization. If you notice, all the PID's are somewhat grouped by categories. The idea is to keep that same categorization where possible in the manufacturer-specific range too.
vBulletin® v3.8.6, Copyright ©2000-2010, Jelsoft Enterprises Ltd.