4. リンクプロトコル
4.1 L000 - 基本リンクプロトコル
全てのデバイスは基本リンクプロトコルを実装しています。基本リンクプロトコルの主な目的は、ホストがどのようなデバイスが接続されいるかを調べるために、製品データプロトコル (6.1章参照) を使用したホスト-デバイス間の最初の通信を簡単に行う事です。ホストはここで得た製品情報を使って、そのデバイスへのそれ以降の通信に対してどのデバイス固有のリンクプロトコルを使用すればよいかを決定することが出来ます。
4.1.1 基本パケットID
基本パケット ID の値は以下のような列挙で定義されます:
enum
{
Pid_Protocol_Array = 253, /* どのデバイスにも実装されていない */
Pid_Product_Rqst = 254,
Pid_Product_Data = 255,
Pid_Ext_Product_Data = 248 /* どのデバイスにも実装されていない */
};
4.2 L001 - リンクプロトコル 1
このリンクプロトコルは大多数のデバイス (8.2章参照) で使用されています。このプロトコルは L000 - 基本リンクプロトコルと同じですが、以下のパケット ID が基本パケット ID に追加されています:
enum
{
Pid_Command_Data = 10,
Pid_Xfer_Cmplt = 12,
Pid_Date_Time_Data = 14,
Pid_Position_Data = 17,
Pid_Prx_Wpt_Data = 19,
Pid_Records = 27,
Pid_Rte_Hdr = 29,
Pid_Rte_Wpt_Data = 30,
Pid_Almanac_Data = 31,
Pid_Trk_Data = 34,
Pid_Wpt_Data = 35,
Pid_Pvt_Data = 51,
Pid_Rte_Link_Data = 98,
Pid_Trk_Hdr = 99,
Pid_FlightBook_Record = 134,
Pid_Lap = 149,
Pid_Wpt_Cat = 152,
Pid_Run = 990,
Pid_Workout = 991,
Pid_Workout_Occurrence = 992,
Pid_Fitness_User_Profile = 993,
Pid_Workout_Limits = 994,
Pid_Course = 1061,
Pid_Course_Lap = 1062,
Pid_Course_Point = 1063,
Pid_Course_Trk_Hdr = 1064,
Pid_Course_Trk_Data = 1065,
Pid_Course_Limits = 1066
};
4.3 L002 - リンクプロトコル 2
このリンクプロトコルは主にパネル搭載された航空機装置で使用されています (8.2章参照)。このプロトコルは L000 - 基本リンクプロトコルと同じですが、以下のパケット ID が基本パケット ID に追加されています:
enum
{
Pid_Almanac_Data = 4,
Pid_Command_Data = 11,
Pid_Xfer_Cmplt = 12,
Pid_Date_Time_Data = 20,
Pid_Position_Data = 24,
Pid_Prx_Wpt_Data = 27,
Pid_Records = 35,
Pid_Rte_Hdr = 37,
Pid_Rte_Wpt_Data = 39,
Pid_Wpt_Data = 43
};