New version with a small changelog but a major feature update:
20220202GUI
- Added support to read and write system DDR4 RAM SPDs on Intel X299 platforms
About: This release will let you read and write system memory SPDs on Intel LGA2066/X299 motherboards, just like the full version of Thaiphoon Burner.
Yes, you got that right. This is a pure software solution.
This feature does not rely on Arduino or other external programming device. (External Arduino-based devices are still supported, though.)
Tested on Windows 10 x64, but should work on 32-bit and 64-bit versions of Windows XP and later.
How to use:- If you are running an RGB-capable memory, disable dynamic RGB effects, or set color to static!
- Run "spdrwgui.exe" as admin.
- Click "Connect" and select a device. The numbers represent CPU SMBus controllers in the PCI configuration space.
The last number represents SMBus number.*
- Use Read/Write/Verify/Check RSWP buttons as usual to perform desired tasks.
If you have more than one DIMM per bus, you will be asked to choose its I2C address.*
* Bus numbering and addressing: Skylake-X and Cascade Lake-X systems don't use chipset SMBus to access RAM SPD's, instead they rely on internal memory controllers' SMBuses accessible via PCI configuration space.
On my system (and most X299 boards) there are 2 controllers, one for each group of DIMMs located on either side of the CPU.
Bus 0 controls slots located to the left of CPU socket, next to the IO area, whereas bus 1 controls the other group of slots to the right of CPU socket.
Each bus provides access to DIMM EEPROMs via a unique address. The addresses are not in the same order as slots appear on the motherboard.
Refer to the image below for bus numbering and addressing:
Implementing X299 hardware support took a lot of time and resources, so I would appreciate if you support my efforts.
If you like this update and want more platforms added in the future releases, please consider donating using links in the About window.
Edited: formatting, typos