Khan's Notebook GCC/GNU/Linux Delphi/Window Java/Anywhere

路漫漫,长修远,我们不能没有钱
随笔 - 172, 文章 - 0, 评论 - 257, 引用 - 0
数据加载中……

IPOD Accessory Protocol

如果不便于阅读请下载


1.Overview
1.1 Lingo Introduce.
Lingo 0x00 – General 
Lingo 0x01 – Microphone
Lingo 0x02 – Simple Remote
Lingo 0x03 – Display Remote
Lingo 0x04 – Advanced iPod Remote (AiR)
Lingo 0x05 – RF Transmitter
Lingo 0x06 – Reserved 
......
Lingo 0xFF – Reserved 
1.2 Command Format.
Small packet format
Byte number Value Meaning
0x00 0xFF Sync byte
0x01 0x55 Packet start byte
0x02 0xNN Packet payload length
0x03 0xNN Lingo ID
0x04 0xNN Command ID
0x05 0xNN Command data
....
0xNN 0xNN Packet payload checksum (last)
Large packet format
Byte number Value Meaning
0x00 0xFF Sync byte
0x01 0x55 Packet start byte
0x02 0x00 Packet payload length marker
0x03 0xNN Packet payload length (bits 15:8)
0x04 0xNN Packet payload length (bits 7:0)
0x05 0xNN Lingo ID
0x06 0xNN Command ID
0x07 0xNN Command data
0xNN 0xNN Packet payload checksum
2. General 0x00
Command ID Data length Protocol Authentication Required
RequestIdentify 0x00 0x00 All No
Identify 0x01 0x01 All No
ACK 0x02 0x01 or 0x05 1.00 No
Reserved 0x03-0x06 N/A N/A N/A
RequestiPodName 0x07 0x00 1.00 No
ReturniPodName 0x08 0xNN 1.00 No
RequestiPodSoftwareVersion 0x09 0x00 1.00 No
ReturniPodSoftwareVersion 0x0A 0xNN 1.00 No
RequestiPodSerialNum 0x0B 0x00 1.00 No
ReturniPodSerialNum 0x0C 0xNN 1.00 No
RequestiPodModelNum 0x0D   0x00 1.00   No
ReturniPodModelNum   0x0E   0x04 + 0xNN   1.00   No
RequestLingoProtocolVersion   0x0F   0x01   1.00   No
ReturnLingoProtocolVersion 0x10   0x03   1.00   No
Reserved   0x11 – 0x12 N/A   N/A   N/A
IdentifyDeviceLingoes   0x13   0x0C   1.01   No
GetDevAuthenticationInfo   0x14   0x02   1.01   No
RetDevAuthenticationInfo   0x15   0x04   1.01   No
AckDevAuthenticationInfo   0x16   0x03   1.01   No
GetDevAuthenticationSignature 0x17   0x13   1.01   No
RetDevAuthenticationSignature   0x18   0xNN   1.01   No
AckDevAuthenticationStatus   0x19 0x03 1.01 No
GetiPodAuthenticationInfo 0x1A 0x02 1.01 No
RetiPodAuthenticationInfo 0x1B 0x08 1.01 No
AckiPodAuthenticationInfo 0x1C 0x03 1.01 No
GetiPodAuthenticationSignature 0x1D 0x15 1.01 No
RetiPodAuthenticationSignature 0x1E 0xNN 1.01 No
AckiPodAuthenticationStatus 0x1F 0x03 1.01 No
Reserved 0x20 – 0x22 N/A N/A N/A
NotifyiPodStateChange 0x23 0x01 1.02 No
Reserved 0x24 – 0xFF N/A N/A N/A
2. Microphone 0x01
Command ID Data length Protocol Authentication Required
BeginRecord 0x00 0x00 All No
EndRecord 0x01 0x00 All No
BeginPlayback 0x02 0x00 All No
EndPlayback 0x03 0x00 All No
ACK 0x04 0x02 1.01 Yes
GetDevAck 0x05 0x00 1.01 Yes
iPodModeChange 0x06 0x01 1.01 Yes
GetDevCaps 0x07 0x00 1.01 Yes
RetDevCaps 0x08 0x04 1.01 Yes
GetDevCtrl 0x09 0x00 1.01 Yes
RetDevCtrl 0x0A 0x02 1.01 Yes
SetDevCtrl 0x0B 0x02 1.01 Yes
Reserved 0x0C – 0xFF N/A N/A N/A
3. Simple Remote 0x02
Button Name Number Byte Index Button Bitmask
Play/Pause 0 0x0 0x01
Volume Up 1 0x0 0x02
Volume Down 2 0x0 0x04
Next Track 3 0x0 0x08
Previous Track 4 0x0 0x10
Next Album 5 0x0 0x20
Previous Album 6 0x0 0x40
Stop 7 0x0 0x80
Play/Resume 8 0x1 0x01
Pause 9 0x1 0x02
Mute toggle 10 0x1 0x04
Next Chapter 11 0x1 0x08
Previous Chapter 12 0x1 0x10
Next Playlist 13 0x1 0x20
Previous Playlist 14 0x1 0x40
Shuffle Setting Advance 15 0x1 0x80
Repeat Setting Advance 16 0x2 0x01
Power On 17 0x2 0x02
Power Off 18 0x2 0x04
Backlight 30 Seconds 19 0x2 0x08
Begin Fast Forward 20 0x2 0x10
Begin Rewind 21 0x2 0x20
Menu 22 0x2 0x40
Select 23 0x2 0x80
Up Arrow 24 0x3 0x01
Down Arrow 25 0x3 0x02
Reserved 26-31 0x3 0xFC
4. Display Remote 0x03
Command ID Data length Protocol Authentication Required
ACK 0x00 0x02 1.0 No
GetCurrentEQProfileIndex 0x01 0x00 1.00 No
RetCurrentEQProfileIndex 0x02 0x04 1.00 No
SetCurrentEQProfileIndex 0x03 0x05 1.00 No
GetNumEQProfiles 0x04 0x00 1.00 No
RetNumEQProfiles 0x05 0x04 1.00 No
GetIndexedEQProfileName 0x06 0x04 1.00 No
RetIndexedEQProfileName 0x07 0xNN 1.00 No
SetRemoteEventNotification 0x08 0x04 1.02 Yes
RemoteEventNotification 0x09 0xNN 1.02 Yes
GetRemoteEventStatus 0x0A 0x00 1.02 Yes
RetRemoteEventStatus 0x0B 0x04 1.02 Yes
GetiPodStateInfo 0x0C 0x01 1.02 Yes
RetiPodStateInfo 0x0D 0xNN 1.02 Yes
SetiPodStateInfo 0x0E 0xNN 1.02 Yes
GetPlayStatus 0x0F 0x00 1.02 Yes
RetPlayStatus 0x10 0x0D 1.02 Yes
SetCurrentPlayingTrack 0x11 0x04 1.02 Yes
GetIndexedPlayingTrackInfo 0x12 0x07 1.02 Yes
RetIndexedPlayingTrackInfo 0x13 0xNN 1.02 Yes
GetNumPlayingTracks 0x14 0x00 1.02 Yes
RetNumPlayingTracks 0x15 0x04 1.02 Yes
Reserved 0x16 – 0x19 N/A N/A N/A
GetPowerBatteryState 0x1A 0x00 1.02 No
RetPowerBatteryState 0x1B 0x02 1.02 No
GetSoundCheckState 0x1C 0x00 1.02 No
RetSoundCheckState 0x1D 0x01 1.02 No
SetSoundCheckState 0x1E 0x02 1.02 No
Reserved 0x1F – 0xFF N/A N/A N/A
5. Advanced iPod Remote (AiR) 0x04
Command ID Engine Protocol Authentication Required
Reserved 0x0000 N/A N/A N/A
Acknowledge 0x0001 N/A 1.00 No
GetCurTrackChapter 0x0002 Playback Engine 1.06 No
ReturnCurTrackChapter 0x0003 Playback Engine 1.06 No
SetCurTrackChapter 0x0004 Playback Engine 1.06 No
GetCurTrChPlayStatus 0x0005 Playback Engine 1.06 No
ReturnCurTrChPlayStatus 0x0006 Playback Engine 1.06 No
GetCurTrChName 0x0007 Playback Engine 1.06 No
ReturnCurTrChName 0x0008 Playback Engine 1.06 No
GetAudiobookSpeed 0x0009 N/A 1.06 No
ReturnAudiobookSpeed 0x000A N/A 1.06 No
SetAudiobookSpeed 0x000B N/A 1.06 No
GetIndexedPlayingTrackInfo 0x000C Playback Engine 1.08 No
ReturnIndexedPlayingTrackInfo 0x000d N/A 1.08 No
Reserved 0x000E N/A N/A N/A
Reserved 0x000F N/A N/A N/A
Reserved 0x0010 N/A N/A N/A
Reserved 0x0011 N/A N/A N/A
RequestProtocolVersion 0x0012  N/A 1.00 No
ReturnProtocolVersion 0x0013 N/A 1.00 No
RequestiPodName 0x0014 N/A 1.00 No
ReturniPodName 0x0015 N/A 1.00 No
ResetDBSelection 0x0016 Database Engine 1.00 No
SelectDBRecord 0x0017 Database Engine 1.00 No
GetNumCateDBRecords 0x0018 Database Engine 1.00 No
ReturnNumCateDBRecords 0x0019 N/A 1.00 No
RetrieveCateDatabaseRecords 0x001A Database Engine 1.00 No
ReturnCate DatabaseRecord 0x001B N/A 1.00 No
GetPlayStatus 0x001C Playback Engine 1.00 No
ReturnPlayStatus 0x001D N/A 1.00 No
GetCurPlayingTrackIndex 0x001E Playback Engine 1.00 No
ReturnCurPlayingTrackIndex 0x001F N/A 1.00 No
GetIndexedPlayingTrTitle 0x0020 Playback Engine 1.00 No
ReturnIndexedPlayingTrTitle 0x0021 N/A 1.00 No
GetIndexedPgTrArName 0x0022 Playback Engine 1.00 No
ReturnIndexedPgTrArName 0x0023 N/A 1.00 No
GetIndexedPgTrAlName 0x0024 Playback Engine 1.00 No
ReturnIndexedPgTrAlName 0x0025 N/A 1.00 No
SetPlayStatusChgNotifi 0x0026 Playback Engine 1.00 No
PlayStatusChgNotifi 0x0027 N/A 1.00 No
PlayCurrentSelection 0x0028 Boths Engines 1.00 No
PlayControl 0x0029 Playback Engine 1.00 No
Reserved 0x002B N/A N/A N/A
Reserved 0x002A N/A N/A N/A
GetShuffle 0x002C N/A 1.00 No
ReturnShuffle 0x002D N/A 1.00 No
SetShuffle 0x002E N/A 1.00 No
GetRepeat 0x002F N/A 1.00 No
ReturnRepeat 0x0030 N/A 1.00 No
SetRepeat 0x0031 N/A 1.00 No
SetDisplayImage 0x0032 N/A 1.01 No
GetMonoDispImageLimits 0x0033 N/A 1.01 No
ReturnMonoDispImageLimits 0x0034 N/A 1.01 No
GetNumPlayingTracks 0x0035 Playback Engine 1.01 No
ReturnNumPlayingTracks 0x0036 N/A 1.01 No
SetCurrentPlayingTrack 0x0037 Playback Engine 1.01 No
SelectSortDBRecord 0x0038 Database Engine 1.01 No
GetColorDispImageLimits 0x0039 N/A 1.09 No
ReturnColorDispImageLimits 0x003A N/A 1.09 No
Reserved 0x003B N/A N/A N/A
Reserved
6.RF Transmitter Lingo 0x05
Command ID Data length Protocol Authentication Required
Reserved 0x00 – 0x01 N/A N/A N/A
Begin transmission 0x02 0x00 All No
End transmission 0x03 0x00 All No
Reserved 0x04 – 0xFF N/A N/A N/A

posted on 2011-10-09 15:16 Khan 阅读(1333) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理