Skyduino:~#
Articles
projet

[Hack raté] Module caméra couleur de sparkfun

Bonjour tout le monde !

Il y a quelque temps j’ai acheté cette petite caméra couleur chez sparkfun.

Je l’utilise avec une video experimenter shield pour capturer des images n&b, quand je faisait mes essais avec un pointeur laser sur un fond noir il n’y avait aucun problèmes, sauf que pour mon dernier projet je souhaitai détecter si il y avait du mouvement dans une pièce, et là l’image était trop clair pour pouvoir être utilisable correctement avec la video experimenter shield …

J’ai donc cherché comment ce faire le réglage du contraste en vain …

Mais cette petite recherche m’as fait découvrir quelque chose de bien plus intéressant !

Le module peut sortir un signal NTSC ou PAL selon comment on place un cavalier, c’est précisé dans ce pdf.

Mais en regardant de plus prés le circuit j’ai remarqué que le signal était généré par un micro-contrôleur, un VC0702NJSD (aka VC0702) de Vimicro.

D’après ce que j’ai pu voir du circuit il y a:
– une partie alimentation + un régulateur,
– une partie analogique + un potentiomètre miniature,
– une partie numérique avec le µc.

Il y aussi quatre connecteurs :
NOM (usage) : broches
CN1 (usage inconnu) : G, GP3
CN2 (usage inconnu) : G, Tx, Rx
CN3 (alimentation + signal) : Vs (usage inconnu), VID, G, B+
CN4 (sélection NTSC/PAL) : NT, C, PAL
+ un potentiomètre VRX1

Grâce au 1er pdf je sais que G représente la masse, B+ l’alimentation non régulé et VID la sortie du signal vidéo.

Mais il reste les connecteurs CN1 et CN2, de toute évidence CN1 est une broche libre du µc et CN2 un port série, mais sans datasheet impossible d’en être sur !

Si ça ce trouve il est peut être possible de modifier l’état de la broche GP3 et les réglages de l’image via le port série ?

J’ai cherché sur le net mais je n’est rien trouvé, c’est bizarre que personne ne se soit jamais demandé à quoi pouvait servir ces deux connecteurs, enfin bon …

Il me reste une solution, utiliser ma carte bus pirate pour analyser les signaux sur Tx et Rx, mais comme il y a un étage de régulation impossible de connaître la tension des broches logique (5v, 3v3, 1v8, ??), ainsi que la fonction de la broche Vs et GP3.

Pour la broche Vs, j’avais dans l’idée que cela pouvait être la tension après régulation, un coup de voltmètre est bingo 3.42v !

L’histoire aurait pu s’arrêter là, mais grâce à 68tjs membres du forum arduino.cc j’ai pu avoir un aperçu du fonctionnement du µc.
Le lien produit sur le site du fabricant est le suivant :
http://www.vimicro.com/english/product/d_vc0702.htm
En regardant en bas de page il y a un pdf résumant les fonctionnalités du µc :
http://www.vimicro.com/english/product/pdf/VC0702_200-1.2_EN.pdf

Je sait donc à présent que le micro-contrôleur fonctionne en 3v3, et que la luminosité, … est belle est bien configurable !

Oui mais … comment ?

Et la un miracle c’est produit !
J’avoue que sur ce coup le cache de google m’as sauver la vie !

Grâce au cache google j’ai pu tomber sur le datasheet du VC0702, de toute évidence confidentielle, hébergé sur un site chinois !
http://www.chinaicmart.com/pdf/pdf_down.asp?id=1098322

EPIK WIN !

Et bien sur avec le datasheet le hack devient beaucoup plus simple !

Ainsi j’ai pu découvrir que la résolution était différente selon le type de signal (NTSC ou PAL) :
720×480 @30fps en NTSC,
720×576 @25fps en PAL.

De plus j’ai pu lire des choses très intéressante :

GPIO support typical control function
Motion detection alarm output
Color/BW manual conversion switch control
Infrared LED control output

Détection de mouvement, contrôle de led IR, exactement ce qu’il me fallait !

Et j’ai aussi pu lire LA phrase que je voulais lire :

Others:
EEPROM configurable
UART controllable

Contrôlable via la port série et configurable via une mémoire EEPROM !

Je continu ma lecture et je tombe sur le tableau de description des broches :

EEPROM I2C master SCK output
(…)
EEPROM I2C master SDA in and out

Donc quelque par sur le circuit il y a une EEPROM I2C !

Et bingo ! sur le coté il y a bien une ! une 24C16 !

Par conséquent j’ai accès à toute la configuration du micro-contrôleur \o/

Pour pouvoir continuer il me faudrait un dump de l’EEPROM …
I2C … EEPROM … la solution est toute trouvé -> bus pirate !

Câblage du bus pirate, passage en mode I2C, et …
… attendez une minute !
C’est une puce 24C16, soit une mémoire EEPROM de 16384bits = 2048 octets … soit beaucoup, beaucoup de chose à lire … mais pas le choix il faut bien savoir ce quel contient !

Alors voici le dump de 2048 octets (\o/ c’est la fête !)

0xAA 0x02 0x00 0x23 0x04 0x20 0x04 0x64 0x06 0x4E 0x24 0x25 0x00 0x00 0x41
0xDD 0x00 0x00 0x00 0x43 0x82 0x00 0x34 0xBC 0xD0 0x11 0x9F 0x60 0x20 0x22
0x21 0x22 0x00 0x00 0x00 0x00 0x00 0x00 0x04 0x00 0x00 0x01 0xC2 0x00 0x00
0x01 0xC2 0xCA 0x01 0x82 0x40 0x00 0x86 0x80 0x0A 0x11 0x1C 0x2E 0x60 0x40
0x80 0x02 0x01 0x20 0x1E 0x0A 0x08 0x04 0x00 0x00 0x00 0x00 0x00 0x03 0x96
0x01 0x14 0x0A 0x06 0x04 0x14 0x0A 0x05 0x04 0x96 0x01 0x14 0x14 0x02 0x06
0x06 0x06 0x1D 0x00 0x1D 0x00 0x1D 0x00 0x82 0x00 0x82 0x00 0x82 0x00 0x01
0x01 0x00 0x00 0x00 0x00 0x00 0x96 0x78 0x60 0x00 0x00 0x16 0x09 0x00 0x01
0x07 0x20 0x02 0x20 0x00 0x50 0x0C 0x1A 0x03 0x08 0x00 0x45 0x00 0x03 0xEA
0x01 0x01 0x00 0x00 0x00 0x13 0x88 0x03 0x03 0x00 0x05 0x05 0x05 0x05 0x05
0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x01 0x00 0x01 0x00
0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01
0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x01 0x00 0x13 0x11
0x3A 0x98 0x46 0x50 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xAA 0x00 0x20 0x3A 0x01 0x80 0x03 0x59 0x02 0x0C 0xCD 0x67
0xD5 0x50 0xEC 0x76 0xF8 0x57 0xEC 0x76 0xF8 0x57 0x00 0x76 0x00 0x76 0xD0
0xE8 0xEC 0x02 0xEC 0x02 0x76 0x76 0x86 0x86 0xD2 0xE8 0xEC 0x02 0xEC 0x02
0x76 0x76 0x86 0x86 0x00 0x00 0x00 0x01 0x00 0x01 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x01 0x00 0x01 0x00 0x00 0x00 0x00 0x23 0x17 0x23 0x17 0x23 0x17
0x23 0x23 0x17 0x17 0x15 0x14 0x15 0x14 0x15 0x14 0x15 0x15 0x14 0x14 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x10 0x00 0x02 0x00 0x20
0x00 0x34 0x00 0x40 0x00 0x03 0x00 0x2E 0x00 0x4A 0x00 0x5A 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x21 0x00 0x02 0x00 0x22 0x00 0x38
0x00 0x43 0x00 0x03 0x00 0x31 0x00 0x4E 0x00 0x5F 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x01 0x10 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x10
0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x10 0x06 0x06 0x06 0x28 0x02 0xDC 0x3E
0x7F 0x8F 0xD3 0x00 0xFB 0x2B 0x2C 0xBA 0x05 0x05 0x05 0x2D 0x02 0xE1 0x3F
0x7F 0x97 0xD4 0x01 0x1B 0x29 0x00 0xBE 0x06 0x06 0x06 0x28 0x02 0xDC 0x3E
0x7F 0x8F 0xD3 0x00 0xFB 0x2B 0x2C 0x89 0x05 0x05 0x05 0x2D 0x02 0xE1 0x3F
0x7F 0x97 0xD4 0x01 0x1B 0x29 0x00 0x91 0x06 0x06 0x06 0x27 0x03 0x1B 0x3F
0x3F 0x8F 0xD3 0x00 0x7C 0x14 0x2C 0x89 0x05 0x05 0x05 0x2C 0x03 0x21 0x3F
0x3F 0x97 0xD4 0x00 0x8E 0x14 0x00 0x91 0x02 0x0C 0x0A 0x21 0x02 0xDC 0x3E
0x66 0x8F 0xD3 0x00 0xAD 0x2D 0x2C 0x89 0x02 0x6C 0x0A 0x81 0x02 0xDC 0x3E
0x66 0x8F 0xD3 0x01 0x3D 0xBD 0x2C 0x89 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x5A 0x96 0x0D 0x04 0x0F 0x28 0x00 0x00 0x01 0x01 0x01 0x01 0x01 0x01
0x01 0x01 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x28 0x46 0x60 0x71 0x81 0x90 0x9D 0xAA 0xB6 0xC2 0xCD 0xD8 0xE3 0xED 0xF6
0xFF 0x00 0x28 0x46 0x60 0x71 0x81 0x90 0x9D 0xAA 0xB6 0xC2 0xCD 0xD8 0xE3
0xED 0xF6 0xFF 0x00 0x28 0x46 0x60 0x71 0x81 0x90 0x9D 0xAA 0xB6 0xC2 0xCD
0xD8 0xE3 0xED 0xF6 0xFF 0x00 0x00 0x1A 0x01 0x35 0x00 0x00 0x00 0x00 0x00
0x30 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x34 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x38 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0xA0 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xA5 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0xAA 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xB0 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xB8 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0xC0 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xC8 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0xD0 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD8 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xE0 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0xE8 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xF0 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0xF8 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xC0 0x01 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xC4 0x01 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0xC8 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xCC 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0xD0 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD4 0x01 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD8 0x01 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0xDC 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xE0 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0xE4 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xE8 0x01 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xEC 0x01 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0xF0 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0xF4 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0xF8 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xFC 0x01 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x01 0x01 0x00 0x00 0x00
0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x06 0xEE 0x00 0x50 0xF8 0xF8 0xF8 0x50
0xF8 0xF8 0xF8 0x50 0x00 0x28 0x46 0x60 0x71 0x81 0x90 0x9D 0xAA 0xB6 0xC2
0xCD 0xD8 0xE3 0xED 0xF6 0xFF 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x44 0x00 0x00 0x00 0x00 0x00 0x11 0x00 0x00
0x00 0x24 0x02 0x00 0x24 0x00 0x00 0x03 0x00 0x24 0x00 0x00 0x04 0x00 0x24
0x00 0x00 0x07 0x00 0x24 0x00 0x00 0x01 0x10 0x00 0xE0 0x40 0x03 0x74 0x06
0x70 0x00 0x08 0x07 0x00 0x00 0x09 0xD0 0x48 0xD4 0x49 0xD2 0x4A 0x00 0x00
0x00 0xD0 0x46 0x00 0x00 0x02 0xD0 0x47 0x00 0x00 0x09 0xD0 0x45 0x02 0x08
0x08 0x00 0x00 0x20 0x08 0x00 0x00 0x23 0x18 0x01 0x00 0x79 0x18 0x35 0x00
0x00 0x18 0x36 0x00 0x00 0x18 0x37 0x00 0x00 0x18 0x82 0x00 0x00 0x18 0x83
0x00 0x00 0x18 0x84 0x00 0x00 0x19 0xE2 0x00 0x6C 0x19 0xE3 0x00 0x00 0x18
0x2C 0x00 0x43 0x18 0x2D 0x00 0x02 0x18 0x2E 0x00 0xFA 0x18 0x2F 0x00 0xFE
0x18 0x30 0x00 0x48 0x18 0x31 0x00 0xFA 0x18 0x32 0x00 0xFE 0x18 0x33 0x00
0x02 0x18 0x34 0x00 0x40 0x18 0x85 0x00 0x58 0x19 0xC0 0x00 0x08 0x19 0xC1
0x00 0xFF 0x19 0xC2 0x00 0x00 0x19 0xC3 0x00 0xFF 0x19 0xC4 0x00 0xFF 0x19
0xC5 0x00 0x00 0x19 0xC6 0x00 0x00 0x19 0xC7 0x00 0x00 0x19 0xC8 0x00 0x00
0x18 0x0C 0x00 0x05 0x18 0x0D 0x00 0x0F 0x18 0x0E 0x00 0x7F 0x18 0x0F 0x00
0x7F 0x18 0x0A 0x00 0x60 0x18 0x0B 0x00 0x90 0x18 0x81 0x00 0x01 0x18 0x8A
0x00 0x00 0x18 0x8B 0x00 0xD0 0x18 0x8C 0x00 0x20 0x18 0x8D 0x00 0x30 0x18
0x8E 0x00 0x00 0x18 0x8F 0x00 0xFF 0x18 0x90 0x00 0xC4 0x18 0x91 0x00 0x3C
0x18 0x22 0x00 0x40 0x18 0x23 0x00 0x40 0x18 0x24 0x00 0x40 0x18 0x22 0x00
0x30 0x18 0x23 0x00 0x81 0x18 0x24 0x00 0x40 0x18 0x22 0x00 0x3D 0x18 0x23
0x00 0x6C 0x18 0x24 0x00 0x40 0x18 0x22 0x00 0x40 0x18 0x23 0x00 0x40 0x18
0x24 0x00 0x40 0x08 0x08 0x00 0x01 0x08 0x09 0x00 0x0E 0x08 0x05 0x00 0x00
0x08 0x06 0x00 0x01 0x08 0x03 0x00 0x0A 0x08 0x20 0x00 0x00 0x08 0x21 0x00
0x00 0x08 0x22 0x00 0x01 0x08 0x23 0x00 0xE0 0x08 0x04 0x00 0x05 0x08 0x14
0x00 0x00 0x08 0x15 0x00 0x00 0x08 0x16 0x00 0x02 0x08 0x17 0x00 0x7F 0x08
0x35 0x00 0xDD 0x08 0x34 0x00 0x02 0x08 0x40 0x00 0x00 0x08 0x41 0x00 0x00
0x08 0x42 0x00 0x01 0x08 0x43 0x00 0xE0 0x08 0x00 0x00 0x23 0x18 0x00 0x00
0x13 0x02 0x31 0x00 0x00 0x02 0x06 0x00 0x82 0x02 0x2B 0x00 0x30 0x02 0x2C
0x00 0x30 0x02 0x2D 0x00 0x30 0x02 0x2E 0x00 0x30 0x18 0x38 0x00 0x00 0x18
0x39 0x00 0x0A 0x18 0x3A 0x00 0x14 0x18 0x3B 0x00 0x28 0x18 0x3C 0x00 0x51
0x18 0x3D 0x00 0x65 0x18 0x3E 0x00 0x77 0x18 0x3F 0x00 0xAE 0x18 0x40 0x00
0xDA 0x18 0x41 0x00 0x14 0x18 0x42 0x00 0x28 0x18 0x43 0x00 0x28 0x18 0x44
0x00 0x29 0x18 0x45 0x00 0x14 0x18 0x46 0x00 0x12 0x18 0x47 0x00 0x0E 0x18
0x48 0x00 0x0B 0x18 0x49 0x00 0x0A 0x08 0x00 0x00 0x27 0x19 0x12 0x00 0x00
0x19 0x13 0x00 0x0A 0x19 0x14 0x00 0x0A 0x19 0x15 0x00 0x0A 0x19 0x16 0x00
0x0A 0x19 0x18 0x00 0x00 0x19 0x19 0x00 0x0F 0x19 0x1A 0x00 0x0F 0x19 0x1B
0x00 0x0F 0x19 0x1C 0x00 0x0F 0x18 0x27 0x00 0x20 0x18 0x26 0x00 0x60 0x18
0xDA 0x00 0x11 0x18 0xDB 0x00 0x11 0x18 0xDC 0x00 0x32 0x18 0xDD 0x00 0x23
0x18 0xDE 0x00 0x42 0x18 0xDF 0x00 0x24 0x18 0xE0 0x00 0x42 0x18 0xE1 0x00
0x24 0x08 0x05 0x00 0x00 0x08 0x06 0x00 0x01 0x18 0x00 0x00 0x11 0x1A 0x1D
0x00 0x3F 0x1A 0x25 0x00 0x01 0x08 0x01 0x00 0x41 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

On vois trés nettement que les données sont paginé, mais sans plus d’information sur l’architecture des données impossible de savoir ce à quoi correspond ces octets!
Le datasheet ne dis rien sur l’organisation mémoire du µc, je sais qu’il est initialisé au reset avec les valeurs de mon dump et qu’il utilise des instructions compatible 8051 pour fonctionner mais rien d’autre …

Je me suis donc tourné vers le port UART en espérant voir quelque chose mais comme je n’est pas le protocole utilisé je ne m’attendait pas à grand chose …

J’ai tenté toute les vitesses « standard » de 9600 à 115200 bauds, à chaque reset le µc renvoi une série de byte, mais n’ayant aucune information je ne sais pas quel vitesse est la bonne … et les résultats « brute » ne laisse rien apparaître …

Il est donc manifeste que ce module caméra peut être contrôler par le port série et que la configuration de l’image peut être modifié depuis l’EEPROM (et sûrement depuis le port série) mais sans aucune informations supplémentaire renversé ce protocole est purement et simplement impossible …

Je suis un peu déçu je pensai pourvoir trouver quelque chose d’exploitable mais non …
C’est un échec … la loi du silence et des sources fermées on encore fait une victime.

Peut être que quelqu’un tombera sur cet article et fera la relation avec autre chose …
Pour le moment je n’ai toujours pas trouvé le moyen de régler le contraste du module caméra …

GAME OVER

Publicités

Discussion

2 réflexions sur “[Hack raté] Module caméra couleur de sparkfun

  1. use 38400 baud rate

    Publié par Akshay Kumar | 14 septembre 2013, 14 h 08 min

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

Skyduino devient Carnet du Maker

Le site Carnet du Maker remplace désormais le blog Skyduino pour tout ce qui touche à l'Arduino, l'informatique et au DIY.