Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Argument

Description

i2c_bus

The I2C bus number.

eeprom_address

The EEPROM address (hex or decimal).

--yes (optional)
-y
--force

Automatically confirms the operation (skips user confirmation).

<key> <value>

One or more key-value pairs to write to EEPROM.

...

Panel
panelIconId1f9d0
panelIcon:face_with_monocle:
panelIconText🧐
bgColor#B3D4FF

as you can see this usage write that the System name is “MySystem“ , the writes:

  • System name: MySystem

  • i2c_bus

is
  • : 2

and
  • eeprom_address

is
  • : 0X50.

Info

Finding the I2C Bus Number

To determine the correct I2C bus number, run the following command:

Code Block
sudo i2cdetect -y 1

If no EEPROM device is found, repeat the command with different bus numbers (e.g., 2, 3, 4, etc.) until you detect an address 0x50 or 0x56. Once found, use the corresponding bus number in the script.

Example:

Code Block
sudo i2cdetect -y 2

If the output shows:

Code Block
     0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

Then bus 2 and address 0x50 should be used in the script.

...

TLV Key

Max Length (bytes)

TLV_CODE_CHS_SERIAL_NUMBER

24

TLV_CODE_CHS_VERSION

5

TLV Key

Max Length (bytes)

TLV_CODE_CONFIG_CODE

...

200

Note

This entry will only be displayed in BIOS main menu.

Main → Detailed Configuration Information → Configuration String

...

Anchor
TLV_ERROR_HANDLING_ANCH
TLV_ERROR_HANDLING_ANCH
Error Handling

...

Anchor
TLV_DEPENDENCIES_ANCH
TLV_DEPENDENCIES_ANCH
Dependencies

This script requires:

  • Python 3

  • smbus (I2C communication)

  • struct and binascii (binary manipulation)

To install missing dependencies:

...


To ensure all required dependencies are installed, run:

Code Block
sudo apt update
sudo apt install python3 python3-smbus

this will:

  • Install Python 3 if it is not already installed.

  • Install smbus for I2C communication.

The script also requires the following Python modules, which are typically built-in:

  • sys

  • struct

  • binascii

  • time

To verify that all required Python modules are available, run:

Code Block
python3 -c "import struct, binascii, sys, time; print('All built-in modules are available')"

If no errors appear, all required dependencies are installed.