EVGA

Helpful ReplyHot!My Arduino-based RAM SPD reader/writer (free and open source)

Page: << < ..67 Showing page 7 of 7
Author
rjohnson11
EVGA Forum Moderator
  • Total Posts : 99861
  • Reward points : 0
  • Joined: 2004/10/05 12:44:35
  • Location: Netherlands
  • Status: offline
  • Ribbons : 83
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/05/23 00:34:28 (permalink)
When posting please ensure your entire message is in English. 

AMD Ryzen 9 7950X,  Corsair Mp600 Pro M.2, 32GB Corsair DDR5  X670E Steel Legend, MSI RTX 4090 Associate Code: H5U80QBH6BH0AXF. I am NOT an employee of EVGA

centralseven
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2010/06/03 09:05:11
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/06/03 09:41:10 (permalink)
@a213m
I really appreciate your continued effort over the years!
I hope to see it running soon on my Intel B760.

Kepp up the good work!
centralseven
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2010/06/03 09:05:11
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/06/04 22:04:25 (permalink)
BTW I've ordered some missing parts yesterday.
I noticed that the value of the I2C pull up resistors is very low.
Did you had problems with the usual values arround 4.7k or what is the reason for 2k resistors?
Cable length is a bit longer but I hadn't any problems so far with 4.7k.
a213m
SSC Member
  • Total Posts : 848
  • 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/06/04 22:13:32 (permalink)
I didn't have any issues with either 4.7k or 2k, you can use any value, as long as they are the same, or even not use any at all.
Higher value pull up resistor can have issues with some EEPROMs when fast mode is enabled, but if you are not having issues, 4.7k is fine.

My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
centralseven
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2010/06/03 09:05:11
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/06/09 13:08:38 (permalink)
Did some testing with older Crucial DDR4 today as I'm waiting for a DDR5 socket to arrive.
These modules have a ST M34E04 SPD EEPROM which need pin 7 (write control) connected to ground to enable RSWP control.

I had soldered the related cable to socket pin 78, but didn't connect it during the first tests.
To disable RSWP was (of cause) not possible, but as I tried to write the EEPROM anyway during playing arround, I got some odd behavior.
When I click on next to some of the write error messages the app crashes or gives me an exeption error message.
After the crash or the error message the EEPROM is completely corrupted, even with write protection enabled.
I've repeated this a few times and got the same result. Random corrupted data all over the EEPROM.
Just letting you know, maybe you can prevent the crash or the error to keep the EEPROM uncorrupted If somebody tries the same.
I'll upload some pics later, sadly no time left today.
 
With write control grounded, as intended, everthing works great as it should.
 
a213m
SSC Member
  • Total Posts : 848
  • 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/06/11 19:25:43 (permalink)
I don't have any DIMMs with ST M34E04 EEPROM unfortunately, so I can't really test what you have been experiencing. I did, however, test a couple of older DDR2 sticks that use EEPROMs with pin 7 used for hardware write protection control, and SPD-RW detected write protection properly, when pin 7 was shorted to VCC.
 
Your EEPROM is interesting, because it is partially compatible with older hardware EE1002 definition. According M34E04 product info, it is compatible with Jedec's EE1004 definition, however EE1004 doesn't use pin 7, and EE1004 definition is compatible with EE1002 only protocol-wise. Pin 7 was used for hardware write protection in EE1002 EEPROMs, and write protection is disabled if it is left floating by default, or is grounded. Only when pin 7 is connected to VCC, hardware write protection is enabled. And in TSE2002av definition, pin 7 is used for temperature events, since hardware write protection and permanent software write protections were removed.
 
I have modified the schematic to disable hardware write protection by adding a resistor between pin 7 and the ground (to avoid shorting VCC to ground, if hardware write protection is enabled on a DIMM). (https://github.com/1a2m3/SPD-Reader-Writer/commit/af25beb440f49ede1e157c808aaad74285601e90)
 
I suspect your DIMM is hardware write protected, and by grounding pin 7 you are overriding hardware write protection, thus disabling it. Check the resistance between pin 7 and pin 8 of M34E04 EEPROM on isolated DIMM only.
 
Also, if you are willing to send me your DIMM for further testing, PM me to arrange.

My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
Karalux
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2020/10/03 08:14:12
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/06/21 02:43:33 (permalink)
Hello, i am trying to find my way to overclock my G.Skill F3-1600C9-8GRSL DDR3 sticks for quite some time and i found a couple problems with my setup. At first i tried using Thaiphoon Burner and when i do the write protection check it says that my ram is hardware write protected so i took a closer look at the SPD chip and i believe its a AT24C02C from Microchip that has a WP (write protection) pin that sets the protection. The funny thing is that this pin is connected to the ground, so write protection is actually disabled by default. Then i found your project (its awesome how much effort you have put into it, thank you for ytour work) and when i try to write something using your software through Smbus it says that writing to EEprom is disabled in bios. My motherboard is AsRock IMB-180 with mobile QM87 chipset so i tried changing the SPD lock byte in the SmBusPei part of the bios image to 0 but pc does not boot after i flash the modded bios (and its the same with my other B85 motherboard). Is there anything that i could try to go around this problem or going the Arduino way is the only way to go for me? I wasnt eager to try flashing with Arduino because im not entirely sure if its possible to connect arduino straight to the spd chip through sodimm socket without any additional circuitry since there is no write protection.
a213m
SSC Member
  • Total Posts : 848
  • 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/06/21 03:39:02 (permalink)
Karalux
Hello, i am trying to find my way to overclock my G.Skill F3-1600C9-8GRSL DDR3 sticks for quite some time and i found a couple problems with my setup. At first i tried using Thaiphoon Burner and when i do the write protection check it says that my ram is hardware write protected so i took a closer look at the SPD chip and i believe its a AT24C02C from Microchip that has a WP (write protection) pin that sets the protection. The funny thing is that this pin is connected to the ground, so write protection is actually disabled by default. Then i found your project (its awesome how much effort you have put into it, thank you for ytour work) and when i try to write something using your software through Smbus it says that writing to EEprom is disabled in bios. My motherboard is AsRock IMB-180 with mobile QM87 chipset so i tried changing the SPD lock byte in the SmBusPei part of the bios image to 0 but pc does not boot after i flash the modded bios (and its the same with my other B85 motherboard). Is there anything that i could try to go around this problem or going the Arduino way is the only way to go for me? I wasnt eager to try flashing with Arduino because im not entirely sure if its possible to connect arduino straight to the spd chip through sodimm socket without any additional circuitry since there is no write protection.

 
Hi, you got several options to try.
 
Check if your motherboard supports enabling SPD write disable bit. (On Asus boards it is available in "Extreme Tweaker > Tweaker's Paradise > SPD Write Disable". Not sure if Asrock has similar option, check your manual to see if it does.)
 
If it doesn't, you'll have to use hardware flasher, whether it's Arduino based or any other I2C capable programmer. Since DDR3 EEPROM uses 256 byte SPD only and doesn't require page switching to access the entire memory array, DDR3 EEPROM can be programmed using any I2C capable programmer, like portable USB CH341A programmer, if you don't want to fiddle with Arduino. If your chip is in SOP8 package, you can use included clip from the kit pictured below to program EEPROM directly, otherwise you'll have to source DDR3 slot/adapter to access your EEPROM. Or desolder the EEPROM off your DIMM and solder it onto one of the included SOIC/TSSOP adapter boards if the clip won't work for you.
 


My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
Liubo
New Member
  • Total Posts : 1
  • Reward points : 0
  • Joined: 2023/06/29 08:39:33
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/06/29 08:44:31 (permalink)
Hi,
I'd like to try this utility, it sounds great, but Microsoft Defender Antivirus finds there a virus Trojan:Win32/Wacatac.H!ml.
I tried last three versions, but everytime is the same. Whats wrong in this case?
  
a213m
SSC Member
  • Total Posts : 848
  • 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/06/29 11:35:31 (permalink)
Liubo
Hi,
I'd like to try this utility, it sounds great, but Microsoft Defender Antivirus finds there a virus Trojan:Win32/Wacatac.H!ml.
I tried last three versions, but everytime is the same. Whats wrong in this case?



False positive, SPD-RW is safe: https://github.com/1a2m3/SPD-Reader-Writer/issues/34
 
Add program files to exclusion list.

My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
void-spark
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2023/07/15 03:20:11
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/07/15 03:27:18 (permalink)
Very cool stuff :)
I'm hoping to tell some XMP 3200 DDR4 sodimms to do their 3200 thing on a NUC11, which in Intel's wisdom they decided not to give support for Intel XMP... :)
Of course just ordering a different set of ram would be the wise move, but where's the fun in that :D
Ordered the cheapest so-dimm socket I could find, hope it will be here in a couple of weeks :)
Have most of the parts lying around already, is the opto-coupler required, or do you think switching high voltage with a mosfet/transistor would also be fine?
I will probably try without HV first anyways, I might be lucky and have an unprotected spd :)
 
a213m
SSC Member
  • Total Posts : 848
  • 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/07/15 03:40:40 (permalink)
void-spark
Have most of the parts lying around already, is the opto-coupler required, or do you think switching high voltage with a mosfet/transistor would also be fine?



Thanks.
 
Yes, you can use mosfet, transistor, or even relay based switch or whatever means to supply 9V to SA0. Optocoupler is just simpler, as it requires less parts and is easier to build.
 
I did consider to update VHV control to use BJT at one point in time, like pictured below, but decided against it for simplicity and backwards compatibility.
 

 
 

My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
void-spark
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2023/07/15 03:20:11
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/07/27 16:13:12 (permalink)
a213m
void-spark
Have most of the parts lying around already, is the opto-coupler required, or do you think switching high voltage with a mosfet/transistor would also be fine?



Thanks.
 
Yes, you can use mosfet, transistor, or even relay based switch or whatever means to supply 9V to SA0. Optocoupler is just simpler, as it requires less parts and is easier to build.
I did consider to update VHV control to use BJT at one point in time, like pictured below, but decided against it for simplicity and backwards compatibility.

Thank you! Some more questions :)
I managed to hand solder a DDR4 SODIMM socket (I'm crazy, don't try this at home, or anywhere else, it's madness :D ).
I'm pretty sure it's good, but would like to quickly go to a read only test just to make sure the basics are correct :)
In the circuit, can I make these simplifications for that?
- I hava a 5v 16mhz Pro-Mini available, if I'm only going to do DDR4 (SODIMM), can I work with 5v instead of 3.3v? The specs for the SPD chips seem to allow up to 6.5v.
- I think for just reading on DDR4, SA0-2 can all be tied to ground, right? Only SCL and SDA need to be connected to the Arduino.
 
Thank you again! :)
 
a213m
SSC Member
  • Total Posts : 848
  • 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/07/27 16:46:18 (permalink)
void-spark
In the circuit, can I make these simplifications for that?
- I hava a 5v 16mhz Pro-Mini available, if I'm only going to do DDR4 (SODIMM), can I work with 5v instead of 3.3v? The specs for the SPD chips seem to allow up to 6.5v.



You can try, however... going above recommended voltage isn't recommended (). Jedec's maximum operating voltage for DDR4 EEPROMs is at 3.6V, while absolute maximum is 4.3V. (Just because SPD chip datasheet says 6.5V maximum, it doesn't necessarily mean the chip will work fine at that voltage, it may simply mean the chip won't die instantly when its exposed to such voltage).
 
At least, make sure your chip's operating voltage is within or below 5V. But I would recommend getting a 3.3V voltage regulator to be safe. Or get a 3.3V Arduino for better compatibility.
 
void-spark
- I think for just reading on DDR4, SA0-2 can all be tied to ground, right? Only SCL and SDA need to be connected to the Arduino.
 
Thank you again! :)



Yes, for just reading only, data (SCL/SDA) and power (VCC/GND) lines are sufficient. Keep in mind SA2 isn't used on SO-DIMMs.

My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
void-spark
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2023/07/15 03:20:11
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/07/27 21:46:08 (permalink)
a213m
You can try, however... going above recommended voltage isn't recommended (). Jedec's maximum operating voltage for DDR4 EEPROMs is at 3.6V, while absolute maximum is 4.3V. (Just because SPD chip datasheet says 6.5V maximum, it doesn't necessarily mean the chip will work fine at that voltage, it may simply mean the chip won't die instantly when its exposed to such voltage).
 
At least, make sure your chip's operating voltage is within or below 5V. But I would recommend getting a 3.3V voltage regulator to be safe. Or get a 3.3V Arduino for better compatibility.
 
Yeah, you're right, I didn't spend enough time reading the data sheet, only looked at the maximum values, operating conditions are <= 3.6v indeed :)
Also only just realized you're using pull ups to 3.3v for SCL/SDA (which of course is how i2c works.. don't use it that often :) ), so those are correct voltage even with 5v arduino :)
I do have a bunch of ams1117 3.3v for working with esp8266/32, so all good, I'll put one of those in :)
 
a213m
Yes, for just reading only, data (SCL/SDA) and power (VCC/GND) lines are sufficient. Keep in mind SA2 isn't used on SO-DIMMs.

Check :)
serrj-sv
New Member
  • Total Posts : 1
  • Reward points : 0
  • Joined: 2023/09/14 07:15:56
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/09/14 07:54:21 (permalink)
centralseven
Did some testing with older Crucial DDR4 today as I'm waiting for a DDR5 socket to arrive.
These modules have a ST M34E04 SPD EEPROM which need pin 7 (write control) connected to ground to enable RSWP control.
 
I had soldered the related cable to socket pin 78, but didn't connect it during the first tests.
To disable RSWP was (of cause) not possible, but as I tried to write the EEPROM anyway during playing arround, I got some odd behavior.
When I click on next to some of the write error messages the app crashes or gives me an exeption error message.
After the crash or the error message the EEPROM is completely corrupted, even with write protection enabled.
I've repeated this a few times and got the same result. Random corrupted data all over the EEPROM.
Just letting you know, maybe you can prevent the crash or the error to keep the EEPROM uncorrupted If somebody tries the same.
I'll upload some pics later, sadly no time left today.
 
With write control grounded, as intended, everthing works great as it should.

 
Ok, I just share my experience here.
 
Just sucesfully unlocked/flashed DDR4 sodimm with ST M34E04 in veery dirty way:
-  no soldering
-  Arduino Pro mini (5v/16MHz) feeded by 3.3v. Works just fine!
-  Just GND, SDA, SCL and VCC from arduino (no WP, no SA1 and SA2, and no I2C pull-up resistors either)
 
-  +9V in "manual mode" (I basically connected it by hand and immediately press "disable  RSWP") 
-  short D6 and D9 to make software think it sees 9v :)
 
Then used Typhoon Burner free version to generate JEDEC profile and  DDR4XMPEditor to modify SPD. Now I upgraded from DDR4-2666 to DDR4-3200!
 
It all took me 30 minutes to assemble from what I already had on the shelves )
 
Photos:

post edited by serrj-sv - 2023/09/14 07:59:18
a213m
SSC Member
  • Total Posts : 848
  • 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/09/14 20:05:21 (permalink)
Congrats! Glad to see my project helped you. :)

My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
lamma4ka
New Member
  • Total Posts : 1
  • Reward points : 0
  • Joined: 2023/09/15 06:55:41
  • Status: offline
  • Ribbons : 0
Re: My Arduino-based RAM SPD reader/writer (free and open source) 2023/09/15 07:18:10 (permalink)
Hello. I would like to know if you plan to support Intel Z790 with SMBus. Your program could help repair broken DDR5 sticks (their spd) on any motherboard and set protection on blocks, you showed this function above.
a213m
SSC Member
  • Total Posts : 848
  • 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/09/15 11:52:53 (permalink)
Yes, 600 and 700 Intel series chipset will be supported in the next public release, ETA - end of September.
 


My free and open source SDR-DDR5 SPD reader/writer with write protection capabilities
 
New: 13900K, Z790 HERO, 2x32GB 6800C34, 4090, 2TB SN850, AX1600i
Old: 10980XE, X299SE2, 8x8GB 4000C15, 2x3090, 2TB SN850, AX1600i
Page: << < ..67 Showing page 7 of 7
Jump to:
  • Back to Mobile