Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
projekte:cis:canon_mf4370dn [2016-06-14 23:14] – [Reversing] crackiprojekte:cis:canon_mf4370dn [2016-06-15 04:06] – [Messungen] cracki
Line 5: Line 5:
 ^ Kontakt | [[wiki:user:cracki |cracki ]] | ^ Kontakt | [[wiki:user:cracki |cracki ]] |
 </WRAP> </WRAP>
 +
 +Ein Multifunktionsdrucker, der in der Karmanstr. 7 zur Entsorgung gelassen wurde. Wurde zerlegt und sortiert.
 +
 +  * Glasplatte neben dem E-Lab rechts
 +  * [[projekte:contact_image_sensor|Contact Image Sensor]] bei Cracki
 +  * Motoren
 +  * keine Encoder gefunden (war n Laserdrucker)
 +  * haufenweise Lichtschranken
 +  * FFC Flachbandkabel und Sockel (1.0mm)
 +  * Platinen, u.a. eine mit Duzenden von Tastern
  
 ===== Beschriftungen ===== ===== Beschriftungen =====
Line 10: Line 20:
   * 01 70315   * 01 70315
   * FK2-9569-000   * FK2-9569-000
-  * 01 57038164 F (Barcode)+    * das ist die Typbezeichnung für den CIS 
 +  * 01 57038164 F 
 +    * Barcode: Format ITF, Typ Text, Wert 57038164 
 + 
 +===== Pinout ===== 
 + 
 +  * 6 Clock 
 +  * 7 Startpuls 
 +  * 8 Vref 
 +  * 9 VCC (5V) 
 +  * 10 GND 
 +  * 11 DPI (low: 300, high: 600, pullup) 
 +  * 12 Aout 
 +    * 2-4 V Ausgang, geht nie runter auf 0 
 + 
 +  * regelmäßige blinde Flecke, ca 0.5mm breit jeweils 
 +  * doppelt so viele blinde Flecke, wenn Spannung an DPI > VCC 
 ===== Reversing ===== ===== Reversing =====
  
 Pins gezaehlt von innen (links) nach aussen (rechts). Pins gezaehlt von innen (links) nach aussen (rechts).
 +
 +Bis auf GND sind 1-5 und 6-12 getrennt. Insbesondere 5, trotz weiterer Abzweigung, scheint mit nix weiter zu interagieren.
 +
 +==== Messungen ====
 +
 +Spannungen bei 10 mA und 3.4V:
 +
 +^ + \ - ^     1 ^     2 ^     3 ^     4 ^     5 ^ Beschreibung des Pins  ^
 +|     1 |  <typo bg:#ffb2b2>0.00</typo> |                         | GND  |
 +|     2 |        <typo bg:#ffb2b2>0.00</typo> |                   | GND Rot  |
 +|     3 |              <typo bg:#ffb2b2>0.00</typo> |             | GND Grün  |
 +|     4 |                    <typo bg:#ffb2b2>0.00</typo> |       | GND Blau  |
 +|     5 |        <typo bg:#ffb2d0>1.87</typo> |  <typo bg:#b2ffcc>2.78</typo> |  <typo bg:#b2fff3>2.95</typo> |  <typo bg:#ffb2b2>0.00</typo> | VCC (Test: 3.35V 10mA)  |
 +
 +auch:
 +  * 2 GND Rot, ~2.3V 50mA
 +  * 3 GND Gruen, ~3.45V 50mA
 +  * 4 GND Blau, ~3.45V 30mA
 +
 +bei ~4.5V Versorgung in die LEDs folgende Widerstände nach Erde:
 +  * Rot: 220
 +  * Grün: 50
 +  * Blau: 100
  
 Spannungen bei 1 mA: Spannungen bei 1 mA:
  
-^ + \ - ^    1 ^    2 ^    3 ^    4 ^    5 ^    6 ^    7 ^    8 ^    9 ^   10 ^   11 ^   12 ^ Beschreibung des Pins +^ + \ - ^     6 ^     7 ^     8 ^     9 ^    10 ^    11 ^    12 ^ Aufgabe  ^ Beschreibung  
-|     1 |    x |      |      |      |      | 0.72 0.72 0.58 | 0.43 0.00 | 0.72 0.48 GND, kupferne Masseflaeche, aufgeklebt | +|      <typo bg:#ffb2b2>0.00</typo>  <typo bg:#b2deff>1.14</typo>  <typo bg:#c8b2ff>1.43</typo>  <typo bg:#b2ffc7>0.76</typo>  <typo bg:#b2ffff>1.00</typo>  <typo bg:#b2deff>1.14</typo>  <typo bg:#bdb2ff>1.38</typo> Clock Betrieb: floating  
-|     2 |      |    x |      |      |      |      |      |      |      |      |      |      | NC? | +|     7 |  <typo bg:#b2deff>1.14</typo>  <typo bg:#ffb2b2>0.00</typo>  <typo bg:#c8b2ff>1.43</typo>  <typo bg:#b2ffc7>0.76</typo>  <typo bg:#b2ffff>1.00</typo>  <typo bg:#b2deff>1.14</typo>  <typo bg:#bdb2ff>1.38</typo> Startpuls Betrieb: floating  
-|     3 |      |      |    x |      |      |      |      |      |      |      |      |      | NC? | +|     8 |  <typo bg:#b2eeff>1.07</typo>  <typo bg:#b2eeff>1.07</typo>  <typo bg:#ffb2b2>0.00</typo>  <typo bg:#b2ffb7>0.69</typo>  <typo bg:#b2fff5>0.96</typo>  <typo bg:#b2eeff>1.07</typo>  <typo bg:#b2fffa>0.98</typo> Vref betrieb: low, driftet langsam (Vref?
-|     4 |      |      |      |    x |      |      |      |      |      |      |      |      | | +|     9 |  <typo bg:#b2ffc3>0.74</typo>  <typo bg:#b2ffc3>0.74</typo>  <typo bg:#b2eaff>1.09</typo>  <typo bg:#ffb2b2>0.00</typo>  <typo bg:#b2ffb3>0.67</typo>  <typo bg:#b2ffc3>0.74</typo>  <typo bg:#b2f5ff>1.04</typo> VCC | | 
-|     5 |      |      |      |      |    x |      |      |      |      |      |      |      | | +|    10 |  <typo bg:#b2ffbe>0.72</typo>  <typo bg:#b2ffbe>0.72</typo>  <typo bg:#c6ffb2>0.58</typo>  <typo bg:#e8ffb2>0.43</typo>  <typo bg:#ffb2b2>0.00</typo>  <typo bg:#b2ffbe>0.72</typo>  <typo bg:#ddffb2>0.48</typo> | GND | kupferne Masseflaeche, aufgeklebt  
-|     6 |      |      |      |      |      |    x |      |      |      |      |      |      | | +|    11 |  <typo bg:#b2dcff>1.15</typo>  <typo bg:#b2dcff>1.15</typo>  <typo bg:#cab2ff>1.44</typo>  <typo bg:#b2ffc5>0.75</typo>  <typo bg:#b2fcff>1.01</typo>  <typo bg:#ffb2b2>0.00</typo>  <typo bg:#bfb2ff>1.39</typo> DPI Betrieb: high 
-|     7 |                                            |      |      |      | | +|    12 |  <typo bg:#b2ecff>1.08</typo>  <typo bg:#b2ecff>1.08</typo>  <typo bg:#b2fff5>0.96</typo>  <typo bg:#b2ffb3>0.67</typo>  <typo bg:#b2fff5>0.96</typo>  <typo bg:#b2ecff>1.08</typo>  <typo bg:#ffb2b2>0.00</typo> Aout Betrieb: floating low, scheint digitale Werte zu produzieren | 
-|     8 |                                       x           |      |      | | + 
-|     9 |                                            x |      |      |      | | +===== Arduino Code ===== 
-|    10 |                                         |      |    x |      |      | GND | + 
-|    11 |                                              |      |    x |      | | +<code> 
-|    12 |                                                   |      |    x | |+#define START 2 
 +#define CLOCK 3 
 +#define DPIMODE 4 
 +#define LEDR 5 
 +#define LEDG 6 
 +#define LEDB 7 
 + 
 +bool dpimode = 1; 
 +uint16_t pixels = dpimode ? 5184 : 2592; 
 + 
 +uint32_t linetime = 4000; // us 
 +uint32_t sched = 0; 
 + 
 +uint8_t lightcolor = 0; 
 + 
 +void set_lighting(uint8_t active) 
 +
 +  digitalWrite(LEDR, !(active & 0b001)); 
 +  digitalWrite(LEDG, !(active & 0b010)); 
 +  digitalWrite(LEDB, !(active & 0b100)); 
 +
 + 
 +void setup() { 
 +  pinMode(START, OUTPUT); 
 +  pinMode(CLOCK, OUTPUT); 
 +  pinMode(DPIMODE, OUTPUT); 
 + 
 +  pinMode(LEDR, OUTPUT); 
 +  pinMode(LEDG, OUTPUT); 
 +  pinMode(LEDB, OUTPUT); 
 + 
 +  digitalWrite(DPIMODE, dpimode); 
 + 
 +  sched = micros(); 
 +
 + 
 +void loop() { 
 +   
 +  set_lighting(0); 
 + 
 +  digitalWrite(START, HIGH); 
 +  digitalWrite(CLOCK, HIGH); 
 +  digitalWrite(CLOCK, LOW); 
 +  digitalWrite(START, LOW); 
 + 
 +  set_lighting(1 << lightcolor); 
 + 
 +  for (uint16_t counter = 82 + pixels; counter-- > 0; ) 
 +  { 
 +    PORTD |= _BV(PORTD3); 
 +    PORTD &= ~_BV(PORTD3); 
 +  } 
 + 
 +  lightcolor = (lightcolor+1) % 3;
  
 +  sched += linetime;
 +  int32_t dt = sched - micros();
 +  while (dt > 0x4000)
 +  {
 +    delayMicroseconds(0x4000);
 +    dt -= 0x4000;
 +  }
 +  if (dt > 0)
 +    delayMicroseconds(dt);
 +}
 +</code>
Navigation



You are not allowed to add pages