![]() |
|
|
|
|
Celui qui a fait tout le sale boulot: virtualabs.fr (lien vers l'article). Thumbs up, dude !
Résumé: gruger les tickets magnétiques, c'est offert. Qui veut des tours de métro gratuit à Paris et Lyon (voir autre part ?) ?
![]() |
Matériel nécessaire:
|
![]() |
Pour experimenter, quelques tickets usagés et neufs également. Il est possible de trouver des lots de tickets sur eBay ou Leboncoin, certains se disent que ça peut encore servir (et c'est tant mieux pour nous !). Si vous êtes sur place, pas la peine de vous dire qu'il y en a par dizaines sur le sol des grosses sorties. |
![]() |
Disséquez votre magnéto cassette et trouvez la tête magnétique. Sortez-la avec son socle, ça sera plus facile pour la fixer sur le passe-ticket. Pensez aussi à garder le fil blindé (si il l'est), avec un signal si faible, le bruit devient vite gênant. |
![]() |
Lecteur: Construisez un simple ampli à transistor pour aider votre carte son à "entendre" vos tickets. Le découplage de la tête magnétique se fait via un chimique 47µf (la tête fait 420 ohms). Le bias se fait avec une résistance de 10k et de 47k, la résistance de collecteur est de 15k. Alimenter le tout en 9~12V. Copieur: Schéma à venir... |
![]() |
... |
![]() |
Le passe-ticket bricolé en carton, faute de mieux. Le microswitch n'est pas sur la photo. Il a été ajouté plus tard, à gauche de la tête de lecture (il se ferme quand le ticket passe devant). Ca fait l'affaire si on est dans la tranquilité de chez soi, mais sur le terrain il vaut mieux un bon boitier plastique ou un bricolage similaire avec des feuilles rigides et de la bonne colle chimique. |
![]() |
Le réinitialisateur portatif à base de NE555 (élévateur de tension pour la tête d'écriture) et d'un ATTiny2313. Le 555 charge les deux gros condos (136µF) à environ 40V via une petite self, la charge se coupe automatiquement et est indiquée par une LED. Les 3 autres LEDs servent à afficher le mode (ticket t+, ticket mobilis, effacement). |
Voici le code pour ATTiny25 (à compiler avec AVR-GCC). Il manque le code magique, que je vous laisse trouver ;)
// RATP ticket resurector (proto)
// CC 2012 furrtek - furrtek.org
// ATTiny25 8MHz AVRStudio 4
// PB0:LED, PB3:Head, PB4:Switch
#include <avr/io.h>
#include <util/delay.h>
// F2F bit write
void writebit(uint8_t bit) {
if (bit) {
PORTB ^= _BV(PB3);
_delay_us(800);
PORTB ^= _BV(PB3);
_delay_us(800);
} else {
PORTB ^= _BV(PB3);
_delay_us(1600);
}
}
int main(void) {
const uint8_t databits[69] = {}; // Only you know the magic code ;)
uint8_t bits;
WDTCR = (1<<WDCE) | (1<<WDE);
WDTCR = 0x00;
PORTB = _BV(PB4);;
DDRB = 0b11101111; // PB4 as an input
for (;;) {
// Wait for ticket
while(bit_is_set(PINB,PB4)) {};
_delay_ms(20); // time between microswitch close and write start
PORTB = _BV(PB0) | _BV(PB4);;
// Prelude
for (bits=0;bits<10;bits++) {
writebit(1);
}
// Data
for (bits=0;bits<69;bits++) {
writebit(databits[bits]);
}
// Prelude
for (bits=0;bits<10;bits++) {
writebit(1);
}
PORTB = _BV(PB4);
}
}
|

1 (neuf): 1111111111 00100 11111111 11111110 01111111 11111111 11110011 11111100 11110011 11111010 1111111111 3 (neuf): 1111111111 00100 11111111 11111110 01111111 11111111 11110011 11111100 11110011 11111010 1111111111 4 (neuf): 1111111111 00100 11111111 11111110 01111111 11111111 11110011 11111100 11110011 11111010 1111111111 12(neuf): 1111111111 00100 11111111 11111110 01111111 11111111 11110011 11111100 11110011 11111010 1111111111 3w(2109): 1111111111 00100 11111111 11111110 01111111 11111111 11110011 11111100 01111011 11111010 1111111111 1w(2109): 1111111111 00100 11111111 11111110 01111111 11111111 11110011 11111100 11110011 11111001 1111111111 j (1403): 1111111111 00111 00110011 11000100 01111111 11111111 01100111 01111100 11110011 01010110 1111111111 10(vieu): 1111111111 00100 11111111 11111110 01111111 11111111 00101101 11111100 11110011 11111010 1111111111 2 (1215): 1111111111 00100 11111100 00011001 01111111 11111111 01010111 10111100 11110011 00110110 1111111111 15(1215): 1111111111 00100 11110000 01001010 01111111 11111111 01001111 10111100 11110011 01010110 1111111111 5 (???5): 1111111111 00100 11110010 00001001 01111111 111100?? ???01111 10111100 11110011 00000110 1111111111 6 (15??): 1111111111 00100 11000011 01100111 01111111 11111111 01010100 01111100 11110011 10010110 1111111111 7 (1808): 1111111111 00100 11111100 00011001 01111111 11110010 01000101 11111100 11110011 11110110 1111111111 8 (????): 1111111111 00100 11111100 00010110 01111111 11111110 00001101 00111100 11110000 11000110 1111111111 9 (RER): 1111111111 00111 00001101 00111011 11111111 11100110 00111011 01111111 11110011 00010010 1111111111 13(mobi): 1111111111 00001 01111111 11111111 11111111 11111111 11111111 11001010 11001111 11110101 1111111111 14(mobc): 1111111111 00000 10111111 11111111 11111111 11111111 11111111 11100101 01100111 11111010 1111111111 |