Experimental Commands for QFX5240-64OD
Hardware Voltage Margin and Clock Disturbance Tests
Convention
- A prompt beginning with
root@re0>indicates Junos CLI - A prompt beginning with
root@re0:~#indicates Shell prompt
1. Voltage Margining of Power Rails (Optics Cages)
a. Show Current Voltage Levels
root@re0> show chassis environment fpc | grep OPTIC_CAGE
Example output:
MB_OPTIC_CAGE_GRP3_3V3 3318 mV
MB_OPTIC_CAGE_GRP2_3V3 3318 mV
MB_OPTIC_CAGE_GRP1_3V3 3318 mV
Optics Cage Group Mapping
| Power Rail | Port Range |
|---|---|
| MB_OPTIC_CAGE_GRP3_3V3 | Ports 0–20 |
| MB_OPTIC_CAGE_GRP2_3V3 | Ports 21–41 |
| MB_OPTIC_CAGE_GRP1_3V3 | Ports 42–65 |
b. Voltage Margining Commands
(Run from Shell: root@re0:~#)
⚠️ Caution: Voltage margining may impact optics and cables. Use higher offsets only for controlled lab testing.
a. Nominal (Default ~3.3V)
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x006d w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x006d w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x006d w
i2cset -f -y 6 0x2e 0x0 0x0
b. +3%
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0072 w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0072 w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0072 w
i2cset -f -y 6 0x2e 0x0 0x0
c. −3%
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0068 w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0068 w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0068 w
i2cset -f -y 6 0x2e 0x0 0x0
d. +5% (Use with caution)
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0075 w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0075 w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0075 w
i2cset -f -y 6 0x2e 0x0 0x0
e. −5% (Use with caution)
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0065 w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0065 w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0065 w
i2cset -f -y 6 0x2e 0x0 0x0
f. +7% (Use with caution)
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0078 w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0078 w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0078 w
i2cset -f -y 6 0x2e 0x0 0x0
g. −7% (Use with caution)
i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0062 w
i2cset -f -y 6 0x18 0x0 0x0
i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0062 w
i2cset -f -y 6 0x2a 0x0 0x0
i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0062 w
i2cset -f -y 6 0x2e 0x0 0x0
2. Inducing Clock Disturbance
Inject Clock Offset
root@re0:~# i2cset -y 1 0x9 0xfd 0x0
root@re0:~# i2cset -y 1 0x9 0x61 <value>
Supported Values
0x00 (default)
0x11 0x22 0x33 0x44 0x55
0x66 0x77 0x88 0x99
0xaa 0xbb 0xcc 0xdd
0xee 0xff
Clock deviation is proportional to the step size
(new value − current value)
Detect Loss of Lock
root@re0:~# i2cset -y 1 0x9 0xfd 0x5
root@re0:~# i2cget -y 1 0x9 0x72
- Maximum counter value: 0x0f
Clear Loss-of-Lock Counter
root@re0:~# i2cset -y 1 0x9 0xfd 0x5
root@re0:~# i2cset -y 1 0x9 0x72 0x00