Difference between revisions of "SFPTotal Mini"
(121 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | [[File: | + | [[File:SFPTotal_Mini_black.jpg|400px|thumb|right|SFPTotal Mini HW revision 1.3]] |
− | + | '''SFPTotal Mini''' programming board allows to reprogram SFP, SFP+ and SFP28 transceivers, and is designed to address the main problems that arise in practice of Internet service providers, network equipment vendors and system integrators in the process of working with optical transceivers and switching equipment, and require reprogramming of transceivers. | |
− | + | Device is a fully compatible according [ftp://ftp.seagate.com/pub/sff/INF-8074.PDF SFF-8074] | |
− | + | The SFPTotal Mini connects to PC via USB interface through which performed control and power supply of device. | |
− | == Quick start | + | To connect a high-power transceivers can be used by external power supply adapter 5V DC. |
+ | |||
+ | |||
+ | == Application == | ||
+ | |||
+ | Programmers SFPTotal are used to solve next tasks: | ||
+ | * Programming SFP/SFP+ optical transceivers and twinaxial cables | ||
+ | * Providing of compatibility between network equipment of different manufacturers | ||
+ | * Reflashing memory of write-protected transceivers | ||
+ | * Changing settings of PHY controllers | ||
+ | * Branding for OEM transceivers | ||
+ | * Diagnosis transceiver by reading the DDM | ||
+ | * Accounting for optical transceivers | ||
+ | |||
+ | == Quick start == | ||
# Connect SFPTotal Mini board to your PC using micro USB Type B cable | # Connect SFPTotal Mini board to your PC using micro USB Type B cable | ||
− | # Install drivers | + | # Install [http://wiki.sfptotal.com/index.php/Installing_drivers_for_SFPTotal_Plus%5CMini drivers for SFPTotal Mini] |
# Download application [[SFPTotal Wizard]] | # Download application [[SFPTotal Wizard]] | ||
# Start SFPTotal Wizard | # Start SFPTotal Wizard | ||
# Insert transceiver to the programmer port | # Insert transceiver to the programmer port | ||
+ | # [[Reading transceiver's memory]] | ||
+ | |||
+ | == Control elements == | ||
+ | |||
+ | === LED indications === | ||
+ | |||
+ | * '''POWER''' lights up when device is connected to PC. | ||
+ | * '''STATUS''' flashes when the power is on and device waiting for connection transceiver to the SFP port. When transceiver is connected, STATUS led is constantly light up. | ||
+ | * '''ERROR''' constantly lights up when device works with error or freezes. | ||
+ | * '''TX_ENA''' lights up when the transmitter contacts connected to power supply. | ||
+ | * '''RX_ENA''' lights up when the receiver contacts connected to power supply. | ||
+ | |||
+ | === Jumpers === | ||
+ | |||
+ | * '''TX''' turns transmitter power | ||
+ | * '''RX''' turns receiver power | ||
+ | |||
+ | * Сontact closure '''LPMODE''' disables low-power mode (transmitter disabled). | ||
+ | * Сontact closure '''RS0''' and '''RS1''' pull up appropriate contacts of transceiver to the ground. | ||
+ | |||
+ | == Software == | ||
+ | |||
+ | To operate the device, use the software [[SFPTotal Wizard]] version 1.0.2.3 or above. | ||
+ | |||
+ | == Command line interface == | ||
+ | |||
+ | The device provides access to the command line interface by connecting through a virtual serial port. | ||
+ | You can use the programming board without [[SFPTotal Wizard]] software to get more features or to realize the opportunities that are not available in the standard software. | ||
+ | |||
+ | Use this document to get information about commands which supported by SFPTotal Mini. | ||
+ | |||
+ | === Commands === | ||
+ | |||
+ | ;'''CLI''' | ||
+ | |||
+ | The command switches the echo output of command line. Default, CLI=0. | ||
+ | <pre style="color:#222;"> | ||
+ | CLI | ||
+ | CLI=0 | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ;'''STATUS''' | ||
+ | |||
+ | Returns current state GPIO of SFP transceiver. | ||
+ | <pre style="color:#222;"> | ||
+ | STATUS | ||
+ | MOD_ABS=0; TX_FAULT=1; RX_LOS=0; TX_DIS=0 | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | '''TX_DIS''' | ||
+ | |||
+ | Command allows to disable power supply of transmitter for switching to low power mode (LPMODE). To activate the LPMODE, it is necessary to transfer command TX_DIS setting the flag value of 1. | ||
+ | |||
+ | To disable the mode, you must set the flag equal to 0. The current state can be requested with STATUS command. | ||
+ | <pre style="color:#222;"> | ||
+ | TX_DIS=1 | ||
+ | |||
+ | STATUS | ||
+ | MOD_ABS=0; TX_FAULT=1; RX_LOS=0; TX_DIS=1 | ||
+ | |||
+ | TX_DIS=0 | ||
+ | STATUS | ||
+ | MOD_ABS=0; TX_FAULT=1; RX_LOS=0; TX_DIS=0 | ||
+ | </pre> | ||
+ | |||
+ | Low power mode is activated for default. | ||
+ | On the PCB of SFPTotal Mini board are placed contacts LP_MODE, which allows to switch low power mode in manual mode. | ||
+ | |||
+ | |||
+ | ;'''VERSION''' | ||
+ | |||
+ | Command returns information about device: hardware revision, software version and unique serial number of the device. | ||
+ | <pre style="color:#222;"> | ||
+ | VERSION | ||
+ | SFPTotal Mini (c) 2015-2016 | ||
+ | HW: 1.1 | ||
+ | SW: 1.0.5 | ||
+ | SN: SFPT-M1116021001 | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ; '''rXYYAABBCC''' ('''RXYYAABBCC''') | ||
+ | |||
+ | Command for reading memory of transceiver. | ||
+ | |||
+ | <pre style="color:#222;"> | ||
+ | r1A000007F | ||
+ | Read 128 byte(s) Table 0xA0 from 0x00 | ||
+ | |||
+ | ## 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | ||
+ | |||
+ | 00 : 03 04 07 20 00 00 00 00 00 00 00 06 67 00 0A 64 | ||
+ | 01 : 00 00 00 00 4F 45 4D 20 20 20 20 20 20 20 20 20 | ||
+ | 02 : 00 20 20 20 00 00 00 00 31 30 47 42 2D 53 46 50 | ||
+ | 03 : 2D 4C 52 2D 45 20 20 20 31 2E 30 20 05 1E 00 F9 | ||
+ | 04 : 00 1A 00 00 45 58 50 39 36 4C 30 31 31 20 20 20 | ||
+ | 05 : 20 20 20 20 31 31 30 38 30 39 20 20 68 F0 03 02 | ||
+ | 06 : 45 58 54 52 45 4D 45 20 4C 52 00 00 00 00 00 00 | ||
+ | 07 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ||
+ | </pre> | ||
+ | |||
+ | <pre style="color:#222;"> | ||
+ | R1A000007F | ||
+ | 03040720000000000000000667000A64000000004F454D202020202020202020 | ||
+ | 0020202000000000313047422D5346502D4C522D45202020312E3020051E00F9 | ||
+ | 001A000045585039364C30313120202020202020313130383039202068F00302 | ||
+ | 45585452454D45204C5200000000000000000000000000000000000000000000 | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ; '''wXYYAABBCC''' ('''WXYYAABBCC''') | ||
+ | |||
+ | Command for writing to the memory of transceiver. | ||
+ | |||
+ | '''w''' — (1 byte) — Write command. Symbol register is responsible for the subsequent read after write. If you use uppercase (W) after the recording is complete programmer will make reading the memory area which has been overwritten. To write without return a write result of lower case (w) must be used. | ||
+ | |||
+ | '''X''' — (1 byte) — Transceiver type (1 - SFP, 2 - SFP+). | ||
+ | |||
+ | '''YY''' — (2 bytes) — The device address on the I2C bus. | ||
+ | |||
+ | '''AA''' — (2 bytes) — Address of additional table. | ||
+ | |||
+ | '''BB''' — (2 bytes) — Address table. Value in HEX. For example: A0 or A2. | ||
+ | |||
+ | '''СС''' — (2 bytes) — Write byte count. Hexadecimal value reduced by one. For example, for writing 128 bytes you should set this parameter in 7F (0x7F in HEX, 127 in decimal). | ||
+ | |||
+ | '''{DATA}''' — Write data in HEX, 2 characters for each byte of the parcel. | ||
+ | |||
+ | |||
+ | ''' Examples ''' | ||
+ | |||
+ | Write code 128 bytes in Table A0 Upper address 00 for SFP transceiver: | ||
+ | <pre style="color:#222;"> | ||
+ | W1A000007F | ||
+ | 03040720000000000000000667000A64000000004F454D202020202020202020 | ||
+ | 0020202000000000313047422D5346502D4C522D45202020312E3020051E00F9 | ||
+ | 001A000045585039364C30313120202020202020313130383039202068F00302 | ||
+ | 45585452454D45204C5200000000000000000000000000000000000000000000 | ||
+ | </pre> | ||
+ | |||
+ | Write password 0123 (HEX: 30h 31h 32h 33h) in Table A2 address 7B for SFP+ transceiver: | ||
+ | <pre style="color:#222;">w2A2007B0330313233</pre> | ||
+ | |||
+ | '''Note: Write command should type without newline characters and spaces. Shifts are given for the convenience display of the material in the examples.''' | ||
+ | |||
+ | |||
+ | ; '''I2CRATE''' | ||
+ | |||
+ | Note: Supported only on the SW versions 1.1.0 or above | ||
+ | |||
+ | This command sets the speed of I2C data bus. | ||
+ | |||
+ | <pre style="color:#222;"> | ||
+ | I2CRATE=12 # Set up speed rate 100 kHz | ||
+ | I2CRATE=40 # Set up speed 30 kHz | ||
+ | I2CRATE=C6 # Set up speed 10 kHz | ||
+ | </pre> | ||
+ | |||
+ | To request a current speed use command: '''? I2CRATE''' | ||
+ | |||
+ | <pre style="color:#222;"> | ||
+ | ? I2CRATE | ||
+ | I2CRATE=C6 | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ; '''AUTO_WR_ADDTBL''' | ||
+ | |||
+ | Note: Supported only on the SW versions 1.1.0 or above | ||
+ | |||
+ | If the flag is set, the programmer will automatically change the address of the additional tables before performing reading and writing operations. | ||
+ | |||
+ | <pre style="color:#222;"> | ||
+ | AUTO_WR_ADDTBL=1 | ||
+ | |||
+ | AUTO_WR_ADDTBL=0 | ||
+ | </pre> | ||
− | + | To request a current value use command: '''? AUTO_WR_ADDTBL''' | |
− | == | + | <pre style="color:#222;"> |
+ | ? AUTO_WR_ADDTBL | ||
+ | AUTO_WR_ADDTBL=0 | ||
+ | </pre> |
Latest revision as of 14:30, 27 July 2018
SFPTotal Mini programming board allows to reprogram SFP, SFP+ and SFP28 transceivers, and is designed to address the main problems that arise in practice of Internet service providers, network equipment vendors and system integrators in the process of working with optical transceivers and switching equipment, and require reprogramming of transceivers.
Device is a fully compatible according SFF-8074
The SFPTotal Mini connects to PC via USB interface through which performed control and power supply of device.
To connect a high-power transceivers can be used by external power supply adapter 5V DC.
Contents
Application
Programmers SFPTotal are used to solve next tasks:
- Programming SFP/SFP+ optical transceivers and twinaxial cables
- Providing of compatibility between network equipment of different manufacturers
- Reflashing memory of write-protected transceivers
- Changing settings of PHY controllers
- Branding for OEM transceivers
- Diagnosis transceiver by reading the DDM
- Accounting for optical transceivers
Quick start
- Connect SFPTotal Mini board to your PC using micro USB Type B cable
- Install drivers for SFPTotal Mini
- Download application SFPTotal Wizard
- Start SFPTotal Wizard
- Insert transceiver to the programmer port
- Reading transceiver's memory
Control elements
LED indications
- POWER lights up when device is connected to PC.
- STATUS flashes when the power is on and device waiting for connection transceiver to the SFP port. When transceiver is connected, STATUS led is constantly light up.
- ERROR constantly lights up when device works with error or freezes.
- TX_ENA lights up when the transmitter contacts connected to power supply.
- RX_ENA lights up when the receiver contacts connected to power supply.
Jumpers
- TX turns transmitter power
- RX turns receiver power
- Сontact closure LPMODE disables low-power mode (transmitter disabled).
- Сontact closure RS0 and RS1 pull up appropriate contacts of transceiver to the ground.
Software
To operate the device, use the software SFPTotal Wizard version 1.0.2.3 or above.
Command line interface
The device provides access to the command line interface by connecting through a virtual serial port. You can use the programming board without SFPTotal Wizard software to get more features or to realize the opportunities that are not available in the standard software.
Use this document to get information about commands which supported by SFPTotal Mini.
Commands
- CLI
The command switches the echo output of command line. Default, CLI=0.
CLI CLI=0
- STATUS
Returns current state GPIO of SFP transceiver.
STATUS MOD_ABS=0; TX_FAULT=1; RX_LOS=0; TX_DIS=0
TX_DIS
Command allows to disable power supply of transmitter for switching to low power mode (LPMODE). To activate the LPMODE, it is necessary to transfer command TX_DIS setting the flag value of 1.
To disable the mode, you must set the flag equal to 0. The current state can be requested with STATUS command.
TX_DIS=1 STATUS MOD_ABS=0; TX_FAULT=1; RX_LOS=0; TX_DIS=1 TX_DIS=0 STATUS MOD_ABS=0; TX_FAULT=1; RX_LOS=0; TX_DIS=0
Low power mode is activated for default. On the PCB of SFPTotal Mini board are placed contacts LP_MODE, which allows to switch low power mode in manual mode.
- VERSION
Command returns information about device: hardware revision, software version and unique serial number of the device.
VERSION SFPTotal Mini (c) 2015-2016 HW: 1.1 SW: 1.0.5 SN: SFPT-M1116021001
- rXYYAABBCC (RXYYAABBCC)
Command for reading memory of transceiver.
r1A000007F Read 128 byte(s) Table 0xA0 from 0x00 ## 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00 : 03 04 07 20 00 00 00 00 00 00 00 06 67 00 0A 64 01 : 00 00 00 00 4F 45 4D 20 20 20 20 20 20 20 20 20 02 : 00 20 20 20 00 00 00 00 31 30 47 42 2D 53 46 50 03 : 2D 4C 52 2D 45 20 20 20 31 2E 30 20 05 1E 00 F9 04 : 00 1A 00 00 45 58 50 39 36 4C 30 31 31 20 20 20 05 : 20 20 20 20 31 31 30 38 30 39 20 20 68 F0 03 02 06 : 45 58 54 52 45 4D 45 20 4C 52 00 00 00 00 00 00 07 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
R1A000007F 03040720000000000000000667000A64000000004F454D202020202020202020 0020202000000000313047422D5346502D4C522D45202020312E3020051E00F9 001A000045585039364C30313120202020202020313130383039202068F00302 45585452454D45204C5200000000000000000000000000000000000000000000
- wXYYAABBCC (WXYYAABBCC)
Command for writing to the memory of transceiver.
w — (1 byte) — Write command. Symbol register is responsible for the subsequent read after write. If you use uppercase (W) after the recording is complete programmer will make reading the memory area which has been overwritten. To write without return a write result of lower case (w) must be used.
X — (1 byte) — Transceiver type (1 - SFP, 2 - SFP+).
YY — (2 bytes) — The device address on the I2C bus.
AA — (2 bytes) — Address of additional table.
BB — (2 bytes) — Address table. Value in HEX. For example: A0 or A2.
СС — (2 bytes) — Write byte count. Hexadecimal value reduced by one. For example, for writing 128 bytes you should set this parameter in 7F (0x7F in HEX, 127 in decimal).
{DATA} — Write data in HEX, 2 characters for each byte of the parcel.
Examples
Write code 128 bytes in Table A0 Upper address 00 for SFP transceiver:
W1A000007F 03040720000000000000000667000A64000000004F454D202020202020202020 0020202000000000313047422D5346502D4C522D45202020312E3020051E00F9 001A000045585039364C30313120202020202020313130383039202068F00302 45585452454D45204C5200000000000000000000000000000000000000000000
Write password 0123 (HEX: 30h 31h 32h 33h) in Table A2 address 7B for SFP+ transceiver:
w2A2007B0330313233
Note: Write command should type without newline characters and spaces. Shifts are given for the convenience display of the material in the examples.
- I2CRATE
Note: Supported only on the SW versions 1.1.0 or above
This command sets the speed of I2C data bus.
I2CRATE=12 # Set up speed rate 100 kHz I2CRATE=40 # Set up speed 30 kHz I2CRATE=C6 # Set up speed 10 kHz
To request a current speed use command: ? I2CRATE
? I2CRATE I2CRATE=C6
- AUTO_WR_ADDTBL
Note: Supported only on the SW versions 1.1.0 or above
If the flag is set, the programmer will automatically change the address of the additional tables before performing reading and writing operations.
AUTO_WR_ADDTBL=1 AUTO_WR_ADDTBL=0
To request a current value use command: ? AUTO_WR_ADDTBL
? AUTO_WR_ADDTBL AUTO_WR_ADDTBL=0