• Overclocking Lab
  • My Arduino-based RAM SPD reader/writer (free and open source) (p.3)
2020/06/20 15:13:51
a213m
New experimental feature - Thaiphoon Burner dump import.
 

 
I just realized the free version of Thaiphoon Burner doesn't allow SPDs to be saved in binary format, so I implemented an SPD importer in my program which will allow loaded SPDs to be read from Thaiphoon Burner.
 
I'm still testing it, once I'm sure it is bug-free, I'll post updated sources and binaries.
 
 
2020/06/21 10:51:56
Cool GTX
thanks for the update
2020/06/24 04:03:43
rjohnson11
We only allow posts in the English language so your posts will be deleted. 
2020/06/24 04:15:15
Propretor
This is a very good project. Thank you very much for your work!
I've been doing data correction in SPD DIMM for a long time, but all RSWP deprotection tools are very expensive. Your project is very important for not rich people. I have not met with the Arduino platform before. At the moment, there is reason to become familiar with this platform.
So. I want to ask questions and share my thoughts.
1. I have an Arduino Micro Leonardo:

 
Instead of D6, do I need to use pin D7, and instead of A4 and A5 - D2 and D3?
 
2. For what purpose are you using contact EVENT_N? This contact is not used in the EEPROM 34C04 chip:

3. Why is your SA1 always grounded? According to the standard:

CWP requires a high level on pin SA1 Vddspd !!!
2020/06/24 04:20:47
Propretor
Contact EVENT_N is used only by the thermal sensor and is not used when reading and writing the SPD chip:

2020/06/24 14:05:34
a213m
Propretor
This is a very good project. Thank you very much for your work!
I've been doing data correction in SPD DIMM for a long time, but all RSWP deprotection tools are very expensive. Your project is very important for not rich people. I have not met with the Arduino platform before. At the moment, there is reason to become familiar with this platform.
So. I want to ask questions and share my thoughts.
1. I have an Arduino Micro Leonardo:
 
Instead of D6, do I need to use pin D7, and instead of A4 and A5 - D2 and D3?

 
Yes, you have to use 2 and 3 for SDA and SCL lines. For high voltage switch pin you can use any of the digital pins, just edit the sketch accordingly. Also you'll need to source an external power supply for VDDSPD as Arduino Micro Leonardo has no 3.3V output.
 
Propretor
2. For what purpose are you using contact EVENT_N? This contact is not used in the EEPROM 34C04 chip:
 

 
It's grounded for compatibility. Older EEPROMs used pin 7 to configure hardware write protection. EEPROMs used on DDR4 modules I worked with recommend to have this pin left alone or grounded.
 
Propretor
3. Why is your SA1 always grounded? According to the standard:
 
CWP requires a high level on pin SA1 Vddspd !!!


I don't know where you got that information from, but connecting SA1 to VDD would only change device address, which is relevant for read and write operations. Device addresses are ignored when issuing RSWP commands. Just because bit 2 of CWP command is set to 1, doesn't mean SA1 has to be  physically wired to VDDSPD. None of EEPROMS I've encountered with require SA1 or SA2 to be configured in specific way for write protection operations. Only SA0 has to be connected to high voltage source.
2020/06/25 05:00:55
Propretor
Hi!
Unfortunately, I can not respond to 5 forum posts personally.
While working with the SpdReaderWriterGUI.exe program, I had 2 comments.
1. The program starts for a very long time from 10 to 40 seconds on my computer:

2. 2.After starting, the program sometimes freezes with an error message:

 
2020/06/25 05:17:06
Propretor
a213m
For high voltage switch pin you can use any of the digital pins, just edit the sketch accordingly.

Alas, I do not know the Arduino programming environment and planned to use the Windows GUI application. There is something to correct at all is not possible.
 
a213m
Also you'll need to source an external power supply for VDDSPD as Arduino Micro Leonardo has no 3.3V output.
 

In my opinion, if we close the jumper, then we will have a 3.3V version:

a213m
It's grounded for compatibility. Older EEPROMs used pin 7 to configure hardware write protection. EEPROMs used on DDR4 modules I worked with recommend to have this pin left alone or grounded.
 

 On DDR4 modules, 7 pin SPD is not always used. According to the standard. On older DDR 1,2,3 modules, this contact can be used:
_ttps://groups.google.com/forum/#!topic/thaiphoon-burner/cXCjJP4w_ko
If you consider your device as universal, then the 7th pin on the SPD chip will never be on the EVENT_N 78 DIMM pin.
 
 
 

Attached Image(s)

2020/06/25 05:54:14
Propretor
a213m
I don't know where you got that information from, but connecting SA1 to VDD would only change device address, which is relevant for read and write operations. Device addresses are ignored when issuing RSWP commands. Just because bit 2 of CWP command is set to 1, doesn't mean SA1 has to be physically wired to VDDSPD. None of EEPROMS I've encountered with require SA1 or SA2 to be configured in specific way for write protection operations. Only SA0 has to be connected to high voltage source.

Perhaps I do not understand the document correctly.
_ttp://www.softnology.biz/tips_pswprotection.html
Here is the document I referenced earlier: _ttp://propretor.narod.ru/Arduino/4_01_04R21.pdf
2020/06/25 13:58:12
a213m
Propretor
1. The program starts for a very long time from 10 to 40 seconds on my computer:




This happens when you have an Arduino with incorrect or no firmware uploaded. I was able to reproduce the same behavior by connecting a "blank" Arduino board and starting the program.
 
Does your Arduino board respond to commands "t" and "s 11 99" using serial monitor? Show me the output.
 
Do you have Arduino Serial Monitor open when launching the GUI program? If so, close it. Make sure you don't have any extra Arduinos or any other serial devices connected.
 
Do you have a DIMM present? The GUI will not show any devices present unless at least one DIMM is present, even if you have the board with the correct firmware connected.
 

 
Also try the console program.
 
Does the console app show anything with switches /find and /scan ?
 
 
Propretor
..
In my opinion, if we close the jumper, then we will have a 3.3V version:
 



 
No. According to schematic, closed jumper is for 5V/16mhz boards, open is for 3.3V/8mhz boards.
 

http://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/Pro_Micro_v13b.pdf
 
If the jumper is open on your board, then you'll have a 3.3V output on the VCC pin.
 

Use My Existing Forum Account

Use My Social Media Account