FabISP

De fablabo
Révision de 10 mars 2014 à 11:44 par Cedric (discussion | contributions) (avec l'AVRISP V2)

Aller à : navigation, rechercher

de quoi s'agit -t-il

Un petit programmeur de microcontroleur fabricable dans un fablab.

c'est un sujet de TP pour la fabacademy , durant le cours sur la production electronique

De nombreuses variantes existent. J' ai choisi la FabISPKey qui a la particularité d'être au format clé USB.

je vais tenter de la réaliser à l'aide de la technique de découpe vinyl de cuivre, pour expérimenter cette dernière.


liste du matériel

  • 1 microcontroleur ATTiNY44A-SSU
  • 1 cristal 20Mhz


  • 1 résistance 0 Ohms
  • 2 résistances 49.9 Ohms
  • 1 résistance 499 Ohms
  • 1 résistance 1 KOhms
  • 1 résistance 10 KOhms


  • 2 condensateurs 8 pF
  • 1 condensateur 0.1 uF
  • 1 condensateur 1 uF


  • 2 diodes zenner 3.3V


ressources

débuter avec les CMS

un autre tuto

fabrication du PCB

premiers tests de découpe vinyl du circuit

J'ai choisi d'essayer d'expérimenter la technique de réalisation du du circuit avec une découpe vinyl dans du cuivre adhésif.

Fabisp.Firstry.vinyl.jpg

les premiers tests ne sont pas trop concluants : la trace trop détaillée est difficile à découper proprement.

J'essaye donc de modifier le circuit pour le rendre plus adapté à ce type de fabrication.

FabispKayVinyl.png

par rapport à la version de Andy, cette version contient moins de tracés, et surtout de petites chutes.

Hélas, je n'ai pas eu plus de succès avec cette version...je décide alors de fraiser le circuit avec la modela

fraisage avec la modela et fabmodules

Fabisp.Fabmodules2pcb.jpg

J'avais quelques appréhensions car depuis plusieurs mois que nous luttions à faire fonctionner cette machine avec fabmodules, nous n'avions jamais réussi, principalement à cause du câble de liaison propriétaire USB-série, qui nécessitait un contrôle de flux.

Guillaume avait travaillé des jours entiers pour comprendre comment faire fonctionner la machine avec des logiciels propriétaire sous windows bien moins performants que fabmodules (plusieurs heures de calcul à chaque fois) et plus rebutants (sous windows) : je rends hommage à son engagement et sa persévérence qui lui a permis de mettre au point une méthode de travail qui fonctionne.

Finalement, pour la fabacademy 2014, Neil gershenfield a réécrit le driver de la modela dans fabmodules, et maintenant ça marche ! merci Neil!

Du coup, après toutes ces luttes rocambolesques, l'usage de fabmodules parru très simple et facile d'abord.

Comme outils de fraisage, j'ai utilisé une pointe de javelo 0.25mm à 0.4mm de profondeur.

Je suis parti du préréglage "mill traces 1/64" que j'ai réajusté pour correspondre à ce format.

Fabisp.Oiled.jpg Fabisp.Milling.jpgFabisp.AfterMilling.jpg

J'ai mis un peu de huile de vaseline sur la plaque,


Fabsip.Pcb.jpg

et En 20 minutes, j'avais mon circuit (coupé avec une fraise de 1/32").

quelques problèmes d'approvisionnement

Notre fablab étant encore en cours de construction, nous n'avons pas encore tout approvisionné.

Pour ce qui est de l'électronique, il n'est as évident en france de trouver les références de l'inventaire fablab dans des quantités humaines (<5000) et des délais raisonnables.

Malgré que j'aie pratiquement tout trouvé, il me manque encore des condensateurs qui me sont proposé chez farnell sous un délai de plusieurs semaines.

Je suis donc bloqué à ce stade et j'attends donc les pièces...

soudure

J'ai soudé les composants au fer et à l'étain.

Ce ne fut pas très facile avec une panne de 0.8mm : une plus petite serai mieux

Une petite erreur provoquai un court circuit : un peu d'étain s'était glissé sous un condensateur. J'ai dut le dessouder pour nettoyer.

programmation

J'utilise un [arduino.cc/en/Tutorial/ArduinoISP arduino comme programmateur ISP] pour mettre le programme sur la puce.

une erreur semble vouloir dire que lisp est mal cablée avrdude -c arduino -P /dev/ttyACM0 -C /home/cedric/fabacademy/electronicProduction/fabISP_mac.0.8.2_firmware/avrdude.conf -p attiny44 -U hfuse:w:0xDF:m -U lfuse:w:0xFF:m

avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny44 avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f avrdude: Expected signature for ATtiny44 is 1E 92 07

        Double check chip, or use -F to override this check.

avrdude done. Thank you.

make: *** [fuse] Erreur 1

avec l'AVRISP V2

C'est un programmateur tout fait

pour qu'il soit reconnu sous linux , il faut faire quelques manipulations :

créer une règle udev pour le programmateur :

$ sudo gedit /etc/udev/rules.d/20-avrisp.rules

remplir le fichier avec la ligne suivante : # Atmel Corp. AVRISP mkII SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="uucp",SYMLINK+="avrdev"

puis s'attribuer le groupe uucp

$ sudo adduser <nom d'utilisateur> uucp

enfin, relancer la session pour que la modification fasse effet