Hello everyone,
Frist of all "THANK YOU" for looking into my post and for the Time spent on this post.
and I'm just a Mechanical student.
I have a Ricoh SP 3510 sf printer, I just wanted to know how to reset the cartridge chip.
this the link to a blog which has been tried for Samsung printer using Arduino www.lueftenegger.at: arduino
I having a Arduino Uno
Using Arduino IDE 1.8.16 windows 10
setting in Arduino software
I used this kind of wiring
And this is the chip I'm having
K-GND
C-VCC
M-SDA
Y-SDL
but the problem is I don't have much information on the EEPROM chip cause the chip is covered with come kind of coting.
when is used this code
// I2C Scanner
#include <Wire.h>
void setup() {
Serial.begin (9600);
Serial.println ();
Serial.println ("I2C scanner. Scanning ...");
byte count = 0;
Wire.begin();
for (byte i = 8; i < 120; i++)
{ Wire.beginTransmission (i);
if (Wire.endTransmission () == 0)
{
Serial.print ("Found address: ");
Serial.print (i, DEC);
Serial.print (" (0x");
Serial.print (i, HEX);
Serial.println (")");
count++;
delay (1);
} // end of good response
} // end of for loop
Serial.println ("Done.");
Serial.print ("Found ");
Serial.print (count, DEC);
Serial.println (" device(s).");
}
void loop() {}
this is what i get in serial monitor
And i tried this code
#include "Wire.h"
#define EEPROM_I2C_ADDRESS 0x53
void setup()
{
Wire.begin();
Serial.begin(9600);
int address = 0;
byte val = 110;
writeAddress(address, val);
byte readVal = readAddress(address);
Serial.print("The returned value is ");
Serial.println(readVal);
}
void loop()
{
}
void writeAddress(int address, byte val)
{
Wire.beginTransmission(EEPROM_I2C_ADDRESS);
Wire.write((int)(address >> 83)); // MSB
Wire.write((int)(address & 0xFF)); // LSB
Wire.write(val);
Wire.endTransmission();
delay(5);
}
byte readAddress(int address)
{
byte rData = 0xFF;
Wire.beginTransmission(EEPROM_I2C_ADDRESS);
Wire.write((int)(address >> 83)); // MSB
Wire.write((int)(address & 0xFF)); // LSB
Wire.endTransmission();
Wire.requestFrom(EEPROM_I2C_ADDRESS, 1);
rData = Wire.read();
return rData;
}
and this is what i got in serial monitor
a short you tube video explained in simple
Below are the list links that can help you with this
if you don't have much time please let me know the topics that I need to go through, i will google that topics and try to figure out.
Thank you again.