MaPuXyAnA
New Member
- Total Posts : 3
- Reward points : 0
- Joined: 2023/11/21 02:55:34
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/11 12:57:42
(permalink)
Hello! Did I assemble the diagram correctly?
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/11 13:02:51
(permalink)
Yes, everything looks OK.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
guguwenwen
New Member
- Total Posts : 2
- Reward points : 0
- Joined: 2023/12/04 20:25:00
- Location: Boston
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/12 21:30:44
(permalink)
Great job! Thanks to god a213m. I followed your instructions to create a board with all the stuff connected. However, the RW tool can detect my Arduino, but they cannot find the DIMM. Sometimes, the EEPROM is found, but it immediately disconnects. I have checked all the connections and confirmed that they are correct.
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/12 21:42:46
(permalink)
Did you build it on a breadboard? Make sure all connections are solid. Sounds like poor connections, especially since EEPROM detection is inconsistent.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/14 17:28:52
(permalink)
SMBus hotfix: 20231214- Fixed: False RAM type detection
This fixes some RAM being falsely detected as DDR5 due to some RGB controllers being improperly recognized as PMICs. To use, extract the archive contents into directory where you have SPD-RW 20231210 located, overwriting the old dll file.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
guguwenwen
New Member
- Total Posts : 2
- Reward points : 0
- Joined: 2023/12/04 20:25:00
- Location: Boston
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/15 05:42:58
(permalink)
problem solved. The RSWP function was enabled by turning on the "SMBus RSWP support" in the settings. However, a question arises: How does the RSWP clear function work? Can I simply short +9V and SA0 to activate the function?
post edited by guguwenwen - 2023/12/18 20:08:31
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/17 20:00:04
(permalink)
Second SMBus hotfix in a row: 20231217 SMBus hotfix #2- Fixed: Errors 0x00000005 (Access is denied) and 0x000001B1 (A device which does not exist was specified), when running multiple instances of SPD-RW
Requires: 20231210 + 20231214 With this fix you should be able to run multiple instances of SPD-RW SMBus sessions with no issues.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2023/12/19 03:00:37
(permalink)
☄ Helpfulby Cool GTX 2023/12/21 11:35:49
Major discovery. If your DDR5 is RSWP protected, you can use SPD-RW to clear DDR5 write protection via SMBus on some Asus motherboards. To do that, you'll need to install one memory stick into slot A1. Then locate MR_TEST2 header and short its pins with a jumper. On my Z790 Hero board it is located between ATX power connector and PD_12V_PWR connector: Then launch SPD-RW as admin, enable SMBus RSWP support in settings, connect to your SMBus and click Clear RSWP: Result:
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
Sanzhar94
New Member
- Total Posts : 8
- Reward points : 0
- Joined: 2024/01/29 11:34:05
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 11:36:28
(permalink)
MaPuXyAnA Hello! Did I assemble the diagram correctly?
Hello, does it works?)
|
Sanzhar94
New Member
- Total Posts : 8
- Reward points : 0
- Joined: 2024/01/29 11:34:05
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 11:41:28
(permalink)
a213m Major discovery. If your DDR5 is RSWP protected
Hello! What about partial protection? Thaiphoon burner killed SPD of my RAM, i have Crucial PRO 64GB Kit, second stick is okay. I just pressed Read, then black screen, this screenshot was taken before. Can i rewrite SPD with your adapter?
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 14:58:37
(permalink)
You can rewrite SPD via SMBus. Just read SPD from working DIMM and overwrite to your corrupted DIMM. You don't need an adapter, unless the corrupted sections are within write protected blocks.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
Sanzhar94
New Member
- Total Posts : 8
- Reward points : 0
- Joined: 2024/01/29 11:34:05
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 15:04:33
(permalink)
a213m You can rewrite SPD via SMBus. Just read SPD from working DIMM and overwrite to your corrupted DIMM. You don't need an adapter, unless the corrupted sections are within write protected blocks.
I tried to rewrite with ASUS OCtool and Asus Z790 Prime mobo, but mobo couldn't start with two sticks, so i think, i need an external adapter, to copy SPD from working stick. Or i can do it by another method? I know only that method, and it's not worked for my case.
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 15:21:51
(permalink)
Install working DIMM in primary RAM slot, and put you corrupted DIMM in a different channels slot. The motherboard should POST, ignoring the non-working DIMM, but it will still be accessible via SMBus, allowing you to overwrite its SPD. If it doesn't POST, cover all non SPD contacts with a tape, just leave contacts 1-6 on one side, and contacts 145-151 on the other side exposed. This will prevent CPU from communicating with DRAM chips, and will leave DIMM exposed to SMBus only. If that won't work, you'll need to build an Arduino programmer.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
Sanzhar94
New Member
- Total Posts : 8
- Reward points : 0
- Joined: 2024/01/29 11:34:05
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 15:33:10
(permalink)
a213m Install working DIMM in primary RAM slot, and put you corrupted DIMM in a different channels slot. The motherboard should POST, ignoring the non-working DIMM, but it will still be accessible via SMBus, allowing you to overwrite its SPD. If it doesn't POST, cover all non SPD contacts with a tape, just leave contacts 1-6 on one side, and contacts 145-151 on the other side exposed. This will prevent CPU from communicating with DRAM chips, and will leave DIMM exposed to SMBus only. If that won't work, you'll need to build an Arduino programmer.
Okay, i will try it tommorow! First variant doesn't work for me, mobo doesn't post with two sticks. Regular tape? Or kapton thermotape? And what soft can read and write from SMBus? Can i fully copy (2 XMP profiles, and 2 EXPO from working DIMM)? My motherboard is Asrock B650i Lightning Wi-Fi.
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/29 15:41:23
(permalink)
Any non conductive tape should work, as long as it is strong enough and not too thick to prevent the module from being inserted. As long as you are able to fully copy SPD, your XMP and EXPO profiles will be copied as well. AM5 boards are confirmed to be supported by SPD-RW.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
MaPuXyAnA
New Member
- Total Posts : 3
- Reward points : 0
- Joined: 2023/11/21 02:55:34
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/30 02:23:42
(permalink)
Sanzhar94
MaPuXyAnA Hello! Did I assemble the diagram correctly?
Hello, does it works?)
Yes, it works!
|
Sanzhar94
New Member
- Total Posts : 8
- Reward points : 0
- Joined: 2024/01/29 11:34:05
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/30 11:58:00
(permalink)
a213m Install working DIMM in primary RAM slot, and put you corrupted DIMM in a different channels slot. The motherboard should POST, ignoring the non-working DIMM, but it will still be accessible via SMBus, allowing you to overwrite its SPD. If it doesn't POST, cover all non SPD contacts with a tape, just leave contacts 1-6 on one side, and contacts 145-151 on the other side exposed. This will prevent CPU from communicating with DRAM chips, and will leave DIMM exposed to SMBus only. If that won't work, you'll need to build an Arduino programmer.
Unfortunately, this method doesn't work, i isolated all pins, except 1-6, 145-151, speakers beeps 3 times. So i need to build Arduino Programmer? Will it help to me, i think Thaiphoon Burner flushed SPD data, when i pressed read button, then only black screen with that stick of ram :(
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/01/30 13:52:16
(permalink)
Restoring SPD should revive your RAM, if corrupted SPD contents is the only issue preventing it from working. At this point seems like building Arduino programmer is all you have left, if you don't have another motherboard to try.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
Sanzhar94
New Member
- Total Posts : 8
- Reward points : 0
- Joined: 2024/01/29 11:34:05
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/01 11:51:51
(permalink)
a213m Restoring SPD should revive your RAM, if corrupted SPD contents is the only issue preventing it from working. At this point seems like building Arduino programmer is all you have left, if you don't have another motherboard to try.
Hello! Could you show final version of Arduino Progammer?) How does it looks assembled? If you could provide some photos, it's will be amazing)
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/01 16:52:52
(permalink)
Sure, here's what mine looks like. I built it on a breadboard. DDR5 adapter is on the left, DDR4 is on the right. The LEDs are added for VHV and SA1 visual monitoring, they are not part of the original schematic. Here's an older version I built for a forum member a while ago, it supports DDR4 only and differs significantly from current design.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
tekton2m
New Member
- Total Posts : 13
- Reward points : 0
- Joined: 2024/02/05 09:02:32
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/05 09:44:16
(permalink)
Hi! I have an Arduino nano. I programmed it in arduino-ide_2.2.1_Windows_64 bit is your firmware, but the SPD-Reader-Writer-20230930 program does not see it. What's wrong?
post edited by tekton2m - 2024/02/05 09:46:41
|
tekton2m
New Member
- Total Posts : 13
- Reward points : 0
- Joined: 2024/02/05 09:02:32
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/05 09:57:40
(permalink)
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/05 15:31:47
(permalink)
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
tekton2m
New Member
- Total Posts : 13
- Reward points : 0
- Joined: 2024/02/05 09:02:32
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/05 23:33:40
(permalink)
Hello! I flashed and launched the latest SPD-RW. The same thing. Maybe I assembled the diagram incorrectly? Although this should not affect the definition of Arduino in the program. P.S. The arduino is serviceable!
post edited by tekton2m - 2024/02/05 23:39:05
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/06 00:27:56
(permalink)
That is possible, even bare Arduino won't get detected, it will get stuck at resetPins() line in the setup() procedure. To bypass that, replace resetPins() with resetPinsInternal() on line 167 and reflash the Arduino. If it is detected after that, check your circuit again.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
tekton2m
New Member
- Total Posts : 13
- Reward points : 0
- Joined: 2024/02/05 09:02:32
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/06 02:11:06
(permalink)
After replacing line 167, the device was detected. It means something is wrong with the scheme. Thanks for the help!
|
tekton2m
New Member
- Total Posts : 13
- Reward points : 0
- Joined: 2024/02/05 09:02:32
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/13 10:59:53
(permalink)
Hello! I checked the whole scheme. When resetPins() is on line 167, the SPD-RW program, the arduino is not visible. When reset Pins Internal() is on line 167, it sees but does not start and outputs the log: [Info] 13.02.2024 18:55:29: Program started (v. 2.23.12.10, Core: 2.23.12.10 ) (Included FW: 20231207) [Info] 13.02.2024 18:55:39: COM5: Initializing device (115200) [Info] 13.02.2024 18:55:39: COM5: Connecting to device [Info] 13.02.2024 18:55:41: COM5: Checking firmware version [Info] 13.02.2024 18:55:41: COM5: Checking name [Info] 13.02.2024 18:55:41: COM5: Checking I2C clock [Info] 13.02.2024 18:55:41: COM5: Checking RSWP [Info] 13.02.2024 18:55:42: COM5: RSWP unavailable [Info] 13.02.2024 18:55:42: COM5: DDR5 RSWP disabled; Offline mode unavailable [Info] 13.02.2024 18:55:42: COM5: DDR4 RSWP disabled; High voltage control unavailable [Info] 13.02.2024 18:55:42: COM5: DDR3-SDRAM RSWP disabled; High voltage and SA1 controls unavailable [Info] 13.02.2024 18:55:42: COM5 connected (Name: User, FW: v.20231207) [Info] 13.02.2024 18:55:42: COM5: Ready! Can you advise me what to do next?
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/13 14:08:21
(permalink)
I need a bit more info on your setup. Do you have any RAM connected, what type? The log shows you can connect, but RSWP is disabled, because it either doesn't see any RAM or high voltage feedback isn't set up properly. If you used different config pins that the ones suggested, you'll need to edit SpdReaderWriterSettings.h file before flashing. After connecting, show your device info. Click Device > Info.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|
tekton2m
New Member
- Total Posts : 13
- Reward points : 0
- Joined: 2024/02/05 09:02:32
- Status: offline
- Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/14 00:37:18
(permalink)
4GB DDR4 test memory. I do everything according to your scheme. I use arduino nano on ATmega328P. Maybe for your circuit, you need Atmega168P? This is my first time working with Arduino. The output HV_EN at the time of initialization is 2.3 v, at the 1st leg of the optocoupler is 1.8 V. The resistance is 330 ohms. The optocoupler does not turn on. accordingly, on HV_FB - 0. Optocoupler PC817.
post edited by tekton2m - 2024/02/14 00:43:58
|
a213m
SSC Member
- Total Posts : 886
- Reward points : 0
- Joined: 2006/02/08 11:10:24
- Location: π¨π¦
- Status: offline
- Ribbons : 20
Re: My Arduino-based RAM SPD reader/writer (free and open source)
2024/02/14 01:14:36
(permalink)
Your voltages are way off. At idle HV_EN should be near 0V, the optocoupler's collector (pin 4) should be near 9V, and its emitter (pin 3) should be at 0V. Even when HV_EN is high, it should be either near 5V, or 3.3V, depending on model used. Have you tried another optocoupler or a different Arduino board? (Either ATmega328P or Atmega168P based boards are fine.) Remove the optocoupler first, and check the voltage at the HV_EN pin first. If voltages are still abnormal, you might need to replace your Arduino board. Then apply 5V output to the optocoupler's current limiting resistor (R3) and check the voltage at its emitter. If it is still at 0V, the optocoupler doesn't turn on and needs to be replaced.
My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities New: 13900K, Z790 HERO, 2x32GB 6800C32, 4090, 2TB SN850, AX1600iOld: 10980XE, X299SE2, 8x8GB 4000C15, 4090, 2TB SN850, AX1600i
|