Nikon i-TTL protocol                         29th October 2020

back to blog                       next post

Parameters and information for Nikon D7000

Disclaimer:

All information gathered for private usage. This is a report with comment, result of observation and cannot be consider as official protocol specification.

Nikon, Nikon D7000, D7100, Nikon SB-900, I-TTL are products, brand or name property of Nikon corporation.

Analyses were done with SW Analyzer running on Teensy 2.0 and Arduino software environment and tools.

Author: Hervé QUEVAL - Document V1 - first published version 20 April 2020

Updates:

 on October 2nd 2020 – D7100 Firmware version

 on October 29th2020 – B0 frame ISO, SPEED, MODE byte usage and value; A0 frame additional information.

Parameters and information for Nikon D7000

Parameters and information for Nikon D7100

Parameters and information for Nikon SB-900

Parameters and information for Nikon D7000

DSLR Nikon D7000 connected to flash SB900

Software version of Nikon devices used during this test:           

-         A 1.02                   Nikon D7000

-         B 1.03

-         S 5.002                 SB-900

 

Remarks:

All values in Hexa (C notation 0xFF)

Software version of the D700 are not the latest to be compliant with all lens used. As I use Raw and DxO, I do not need last version of lens correction in the body.

 

DSLR identity

Cmd + 10 bytes ( 9 bytes info + Checksum)

D7000 Identity:                B1,2,1,19,4,3,1,9,1A,E,7

                identity in case of firmware version:  

DSLR Status and setup

Analyses of 0xB0 frame, Information frame from DSLR to Flash

Cmd + 15 bytes ( 14 bytes info + Checksum)

Example: B0,5,44,40,1E,24,1E,50,0,2,49,11,1E,1E,1E,A0

 Flash Mode

byte 2 of the frame

 

B0,5,44,40,1E,24,1E,50,0,2,49,11,1E,1E,1E,A0,

      ^

Flash mode as set on the body

 

Bit 7 : -

Bit 6:  1 flash authorized, 0 no flash

Bit 5:  1 DSLR and mode P,A,S,M selected          

Bit 4: 1 remote controller (activated by GODOX X1n)

Bit 3: -

Bit 2:      1  ( always 1 during all investigation)

Bit 1: Anti-red eye activated

Bit 0 : rear curtain sync

example

44 

 

64

- ( normal)

65

Rear

66

Anti red eyes

 

Combined with  mode PASM mode, scene, Program it give the following result

Scene, U1,U1

44

M,A,S,P

64

Auto

44

No flash

 4

 

 

ISO information

Byte 4  of the frame: Current ISO selected (manually of automatically)

Byte 13 and 14 of the frame: same value as Byte 4 when manual ISO selected, Max and Min ISO capability of the body if Auto ISO selected.

 

B0,5,44,40,1E,24,1E,50,0,2,49,11,1E,1E,1E,A0

            ^                        x  x

          ISO                   repeated there (Iso Manual)

 

B0,5,44,60,2A,24,12,50,0,2,48,11,12,36,1E,A0

            ^                        x  x

          ISO                       max min (Auto ISO)

 

 

ISO Table

50

62

80

100

125

160

200

250

320

400

500

640

800

1000

1250

1600

2000

2500

3200

4000

5000

6400

H0.3

H0.7

H1

H1.3

H1.7

H2

0x18

0x1A

0x1C

0x1E

0x20

0x22

0x24

0x26

0x28

0x2A

0x2C

0x2E

0x30

0x32

0x34

0x36

0x38

0x3A

0x3C

0x3E

0x40

0x42

0x44

0x46

0x48

0x4A

0x4C

0x4E

 

Shutter speed

Byte 5

Cde:B0,5,64,60,30,24,1E,29,0,3,3F,11,1E,42,1E,E6

                   ^

                               Table with speed code

8000

4E

6400

4C

5000

4A

4000

48

3200

46

2500

44

2000

42

1600

40

1250

3E

1000

3C

800

3A

640

38

500

36

400

34

320

32

250

30

200

2E

160

2C

125

2A

100

28

80

26

60

24

50

22

40

20

30

1E

25

1C

20

1A

15

18

13

16

10

14

1/8

12

1/6

10

1/5

0E

¼

0C

1/3

0A

1/2.5

08

½

06

1/1.6

04

1/1.3

02

1 sec

00

1.3"

FE

1.6"

FC

2"

FA

...

 

30"

E2

Bulb

80

x250

30

 

Aperture

byte 6 ( repeated in 12th position)

 

B0,5,44,40,1E,24,1E,50,0,2,49,11,1E,1E,1E,A0,

                 ^               x

          aperture  repeated there

 

Aperture table

0A

1,8

0C

2

0E

2,2

10

2,5

12

2,8

...

 

30

16

 

Lens focal

byte 7

 

B0,5,44,60,30,24,18,29,0,2,62,44,18,30,1E,FD,

                     |

                     f

 

Tested with 10-20mm, 16-85DX, 35mm DX, 50mm, 50-150mm and 120.. 300mm

f byte value :

variation from 29 (16mm) to 62  ( 85 mm)

value 50 for 50 mm         !!

variation from 19 (10mm) to 31  (20 mm)

variation from 50 (50mm) to 76 (150mm)

value 44 for 35 mm

variation from 6E (120mm) à 8E (300 mm)

 

 

Expo compensation (ambiant or flash)

byte 8

 

B0,5,44,40,1E,24,1E,50,0,2,49,11,1E,1E,1E,A0,

                       ^

                   expo

Table coded per 1/3 IL

IL

Code

0

0

-0.3

2

-0.7

4

-1

6

....

 

-5

1E

 

 

+0,3

FE

+0,7

FC

+1

FA

...

 

+5

E2

 

Distance with subject Transmission

2 bytes, position 10 and 11

 

B0,5,44,60,2A,24,18,50,0,2,42,11,18,30,1E,CB

                            |  |

                            L  H

tested with 50mm Nikon AF-S

seems coded on two byte, must be analyzed in detail.

 

min                                            infinite

Distance

42 11 .. 59 11, 5C 22, 65 33, 70 03  

 

L  H

 

 

Not transmitted

- mode (S CL, CH, ...)

 

Flash command detail

POWER Command Byte 0xD3 - first byte information

1st byte data power cmd   

 

 

7654 3210

 

D0

power   AEL

1101 0000

 

00

power   M or AA or A

0000 0000

 

10

power   ITTL BL

0001 0000

sync normal

 

 

0001 1xxx

sync FP

 

 

xxx

Shutter speed range

 

The 3 first bit are used to transmit speed over 1/250 (in case of D7000) 1/320 .. 1/8000.

 

Parameters and information for Nikon D7100

DSLR identity

Cmd + 10 bytes ( 9 bytes info + Checksum)

D7100 Identity:                B1,2,1,22,3,3,1,9,1A,E,F

                identity with firmware version:  C 1.01  L 1.009

 

comparison with D7000

                D7000   02,01,19,04,03,01,09,1A,0E

                D7100   02,01,22,03,03,01,09,1A,0E

Bytes 3 and 4 are different.

 

Frame B0

Cde:B0,5,64,60,30,24,1E,29,0,3,3F,11,1E,42,1E,E6

 A quick comparison with D7000 do not show any major differences when using DSLR.

 

Parameters and information for Nikon SB-900

Frame A1 / A2 device identification

A1,1,1,5,2,8,7,81,78,B4,64,A,4E,FF,3E,90,3E,90,1D,

A2,3,5,6D,9B,90,86,80,7A,72,6A,65,5E,6,75,9E,94,8A,80,77,6F,66,60,58,6,74,9E,95,8B,80,76,6F,66,60,59,4,5F,96,8A,82,80,7E,79,71,6E,6A,FC

 

Frame A0 content

Frame containing flash status and setup information

Flash ready

First data byte of the answer

A0,1,1,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,30         1ere après flash

A0,3,1,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,32     // TTL BL

   ^

   flash ready and handshake

 

Bit 0       Recycling 0         Ready 1

Bit 1       Ack DSLR  0         Normal 1             // after main flash strobe, set 0.

Ready                   3             (normal, no ack)

                bit 7       0   zoom auto

                               1 manual zoom

 

Flash Mode

second data byte of the answer

A0,3,1,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,32         TTL BL

A0,3,2,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,33         TTL

A0,3,3,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,34         AA

A0,3,5,C0,4,0,0,92,5E,30,4B,0,FF,12,0,0,0,0,0,0,0,0,49         GN

A0,3,6,C0,4,0,6,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,3D         M

A0,3,7,C0,4,0,1E,92,5E,30,4B,64,3,FF,0,0,0,0,0,0,0,0,BE

 

     ^

     flash mode reported to DSLR Body

 

Mode Flash

TTL BL

1

TTL

2

AA

3

A

4

GN

5

M

6

RPT

7

Master

81

 

M Mode - Flash level

3rd byte of the answer

depend of the flash mode.

When manual flash:

A0,3,6,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,37

A0,3,6,C0,4,0,6,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,3D                   M

              ^

                M mode - flash level (setup on the flash)

 

1/1

0

½

6

1/2 -1/3

8

1/2 -2/3

A

¼

C

 

...

1/128

C0

 

When TTL  (change with Zoom value), in coordination with byte 7,8 and 10 of the frame

Zoom

Byte 3

Byte 7

Byte 8

Byte 10

24

B6

88

54

23

28

B8

8A

56

2A

35

BB

8D

59

32

50

C0

92

5E

4B

70

C3

95

61

69

85

C4

96

62

78

105

C5

97

63

A0

 

 

Byte-4  (exact function not yet define)

4             normal (bit 3 set to 1)

5             action done on flash keyboard/button ( bit 0 set to 1)

6             connected to remote controller like GODOX 1Xn (bit 2 set to 1) or hot shoe of GODOX X2

 

Exposure Adjustment

6th byte . Information transmitted when AA, A or TTL mode.

A0,3,1,C0,4,0,0,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,32,

              ^

       exposure adjustment  (when modified on the flash)

 

coded in the same way as DSLR.

 

Power available

15th byte of the data sent to DSLR

A0,3,6,C0,4,0,6,92,5E,30,4B,0,FF,FF,0,0,0,0,0,0,0,0,3D

                                      ^

                                      0 Full capacity available

Values

0xFF recycling

                0.. FE                     level off power available, increase after each strobe according power consumption.