Réparation d’un voltmètre HP 419A

J’ai trouvé sur la baie un Hewlett Packard 419A DC Null Voltmeter. Il s’agit d’un voltmètre analogique à zéro central, pouvant mesurer des tensions continues positives et négatives, de 3µV à 1000V pleine échelle. Une source de tension interne permet de mesurer des tensions par comparaison ce qui rend théoriquement son impédance infinie dans ce mode. Il peut également mesurer des courants continus de 30pA à 30nA. Il aurait été mis sur le marché en 1965.

Ce modèle était utilisé en interne chez HP pour calibrer les voltmètres et comparer les références de tensions.

Le chapitre 5 de la note d’application 69 « Which DC Voltmeter » évoque son utilisation dans le laboratoire de calibrage de HP :

Principe de fonctionnement

Il était à l’époque plus simple de construire un amplificateur alternatif qu’un amplificateur continu : la construction des amplificateurs en composants discrets engendre des tensions d’offsets et donc des erreurs de mesure en continu, qui sont annulées en alternatif. C’est pourquoi le 419A utilise un hacheur optique.

Le hacheur est un bloc plein au sein duquel deux néons éclairent chacun deux photo-résistances alternativement. Cela forme un modulateur continu vers alternatif et un démodulateur alternatif vers continu.

État de l’appareil

Le vendeur avait indiqué « S’allume mais ne mesure pas ». Cet appareil disposant de batteries qui servent au filtrage de l’alimentation ainsi que d’une pile pour la référence interne de tension, il est sujet aux coulures de batteries. Un autre problème récurrent sur cette série d’appareils est l’usure de néons du hacheur optique qui ne se déclenchent plus alternativement.

Une fois le colis ouvert, pas de doutes, les batteries ont coulé, et une fois l’appareil sous tension, pas de doutes non plus, l’aiguille file à droite hors échelle, le hacheur ne fonctionne probablement pas …

Un test rapide des condensateurs de la carte principale révèle que les électrolytiques sont en piteux état, leur résistance en continu descends pour certains à 20k …

Réparations

Pour les coulures une seule solution : retirer les composants abîmés, nettoyer, neutraliser toute trace d’oxydant, réparer les composants/pistes.

Pour les condensateurs, pas de mystère un changement s’impose :

La carte A4 avec ses condensateurs changés

Le problème des néons à déjà été résolu de deux manières différentes :

La solution de Mr Carlson, l’emploi de LEDs, me plaît beaucoup plus que de conserver des néons. Contrairement à lui, je dispose de la plaquette d’origine pour implanter deux LEDs « Super bright » en lieu et place des néons. Il est nécessaire de rendre les LEDs diffusantes en les ponçant légèrement. Pour les alimenter en avec un Arduino en 5V, les résistances de 20K doivent êtres changées pour des résistances de 100 ohms, et on peut ponter l’emplacement des diodes.

La carte du hacheur optique

Pressé de vérifier le fonctionnement du chopper, j’ai câblé un Arduino Uno pour faire clignoter les LEDs et vérifier si l’appareil montrait des signes de vie. L’alimentation étant démontée j’ai alimenté, à l’aide de mon alimentation HP 6237B, le voltmètre en +13/-13 et l’Arduino en +5V.

Le programme de l’Arduino Uno est simplissime la seule contrainte étant sur les timings que l’on trouve dans le Service Manual, Figure 5-4, page 23. On y constate qu’un cycle complet fais 6ms, soit 166Hz, et qu’un cycle comporte l’allumage de chacun des deux néons avec une pause entre deux allumages. Ce qui amène à des pauses de 1ms et des temps d’allumages de 2ms.

Ayant monté les LEDs à l’envers, j’ai du inverser les sorties.

Premiers essais :

1mV sur le calibre 1mV
1mV sur le calibre 3mV
3mV sur le calibre 3mV

Les résultats sont prometteurs, il reste à nettoyer les contacts du sélecteur de calibre, refaire une alimentation car les accus utilisés sont introuvables, remplacer la pile qui sert de référence pour le null, et empêcher la dégradation du cadran qui commence à se décoller.

Manuel de service

Une autre version, moins propre mais plus récente :

Le code de l’Arduino Uno

const int LED_0 = 8;
const int LED_1 = 9;

// Service Manual, Figure 5-4, page 23 :
// DELAY_ON + DELAY_OFF + DELAY_ON + DELAY_OFF = 6ms => 166Hz 

const int DELAY_ON = 2;
const int DELAY_OFF = 1;

void setup() {
  pinMode(LED_0, OUTPUT);
  pinMode(LED_1, OUTPUT);
}

void loop() {
  digitalWrite(LED_0, 1);
  digitalWrite(LED_1, 1);
  delay(DELAY_OFF);
  digitalWrite(LED_0, 1);
  digitalWrite(LED_1, 0);
  delay(DELAY_ON);
  digitalWrite(LED_0, 1);
  digitalWrite(LED_1, 1);
  delay(DELAY_OFF);
  digitalWrite(LED_0, 0);
  digitalWrite(LED_1, 1);
  delay(DELAY_ON);
}

Démontage du Metrix TX909A

Le tiroir

Comme évoqué dans l’article précédent, le Métrix TX909A est doté de tiroirs. L’interconnexion entre le tiroir et l’appareil se fait via un connecteur 25 broches :

Coté tiroir, ce n’est pas le circuit imprimé qui sert de connecteur mais un connecteur soudé et riveté sur le circuit imprimé :

La partie bleue s’enlève aisément en dévissant deux vis sur le dessous du tiroir et laisse apparaître le circuit, qui comporte deux diodes et des résistances. Le support 14 broches se retire et est monté sur un support 16 broches, un détrompeur empêche d’insérer le support du mauvais coté :

   

L’appareil

Le démontage se fait en retirant les deux cotés noirs ainsi que le fusible. Derrière la partie plastique de gauche, le châssis comporte des éléments de l’alimentation :

   

L’appareil comporte plus d’électronique que ce que j’imaginais. Deux cartes reliées par des fils soudés, le clavier de sélection de fonction, un transformateur. Le galvanomètre reste attaché au dessus du châssis.

   
   
   

 

Testeur d’amplificateurs opérationnels

Description générale

Je me suis procuré un Metrix TX-909A. C’est un appareil permettant le branchement de différents tiroirs pour tester des composants. À priori deux types de tiroirs sont supportés au vu de la sérigraphie :

  • des tiroirs pour tester les amplificateurs opérationnels (AOP)
  • des tiroirs pour tester les régulateurs de tension
   

L’appareil que j’ai eu dispose d’un tiroir permettant de tester des µA709C. C’est un AOP assez ancien et plus très courant. Il existe en différents boitiers, le plus grand étant un 14 broches, ce qui correspond à la taille du support du tiroir. Il existe d’autres AOP qui ont un brochage équivalent à la version 8 broches du 709.

Le TX-909A comporte pour ses sorties un assez grand galvanomètre à zéro central et une sortie BNC en face arrière. Les entrées sont un interrupteur rouge permettant la mise en marche, 6 sélecteurs de fonctions (5 blancs et un noir), et un bouton noir permettant la mesure du gain.

Les mesures permises par ce testeur (avec ce tiroir) sont :

  • le courant entrant par Vcc+ (sélecteur en position 1, I+)
  • le courant sortant de Vcc- (sélecteur en position 2, I-)
  • la tension d’offset de l’AOP (sélecteur en position 3, Voffset)
  • le courant d’entrée de l’entrée non inverseuse 4, V+ (sélecteur en position I1)
  • le courant d’entrée de l’entrée inverseuse 5, V- (sélecteur en position I2)
  • et enfin, le gain de l’AOP (sélecteur en position 6, Mémoire, puis appui sur le bouton 7, G)
  • l’amplificateur opérationnel semble être alimenté en +15V/-15V

Le tiroir ne comporte aucun organe de commande, simplement un support 14 broches qui semble de très bonne qualité. L’insertion se fait absolument sans force, mais contrairement a un support ZIF, il n’y a pas de levier de blocage.

Le marquage inférieur du galvanomètre en % (de -150% à +150%) se réfère à l’indication sous le sélecteur de fonction, ainsi en position I+, une indication de 100% équivaut à -6,7mA. De même, en position Voffset une indication à 100% équivaut à 7,5mV.

Le marquage supérieur du galvanomètre est sans unité car il mesure le gain de l’AOP, il part de 5×10^2 et se terminé à 10^6. Cela correspond à une échelle de gain en tension de 20log(5×10^2)=54dB à 20log(10^6)=120dB. C’est ce qu’en physique appliquée mes professeurs appelaient un gain infini…

Je n’ai réussi à trouver ni la documentation ni les schémas de cet appareil, j’ai donc interprété son fonctionnement à l’aide de la sérigraphie et de quelques observations.

Vérifications de fonctionnement

A l’allumage, en position I+, le galvanomètre se déplace de part et d’autre et se stabilise sur le zéro. C’est bon signe.

Avant d’insérer un composant dans le support du tiroir il n’est pas superflu de vérifier l’alimentation. L’appareil permettant la mesure du courant I+ et I- il est facile d’insérer une résistance entre les broches Vcc+ et Vcc-. Pour une résistance de 10k environ, on devrait avoir 3mA de consommé soit un peu moins de la moitié de -100% sur le galvanomètre en position I+.

En I- on devrait avoir le même résultat, mais de sens opposé.

Le résultat est cohérent, mesurons la tension Vcc+ en CC et en CA.

   

Verdict : l’alimentation me semble en assez bon état pour tester un AOP sans que la fumée magique ne s’échappe…

Mesure d’un AOP

Je trouve donc un AOP dont le brochage est compatible. Il s’agit d’un 741 de récupération. D’après la documentation il devrait consommer aux alentours de 1.7mA soit, dans le calibre I+, 100*1.7mA/-6.7mA=-25%.

Les mesures de I+ comme de I- semblent correctes, aux alentours de 25%.

La tension d’offset, dans la doc du 741 est donné pour typiquement 1mV. Dans le calibre Voffset cela donnerait 100*1mV/7.5mV=13%

Le résultat est bien inférieur aux 13%, on peut se demander si cette mesure est bien réalisée (un faux contact ?) ou si l’AOP testé n’a tout simplement pas assez d’offset pour être mesuré avec cet appareil.

Pour I1 et I2 la documentation du 741 nous parle de dex paramètres, « Input offset current » et « Input bias current ». La somme des deux valeurs typique étant de l’ordre de 100nA, dans le calibre I1 ou I2 cela serait donc un affichage de 100*100nA/1.75µA=6% de déviation max.

Le résultat est encore une fois bien inférieur et ne permet pas de conclure à la fiabilité de la mesure.

Enfin, mesurons le gain de cet AOP. La documentation indique un paramètre Avd « Large-signal differential voltage amplification » qui devrait être entre 20V/mV et 200V/mV. Autrement dit entre 20000V/V et 200000V/V soit un gain de 20000 à 200000, soit entre 2×10^4 et 2×10^5.

Pour cette mesure il faudra positionner le sélecteur sur la position Mémoire, puis appuyer sur le bouton G pendant la lecture.

Le résultat obtenu, environ 10^5, est bien dans la plage de mesure attendue.

Il y a une indication sous le sélecteur Mémoire indiquant 10mV. Je n’ai pas compris cette indication/mesure. J’ai tenté de mesurer le signal de sortie et d’entrée lors de la mesure du gain mais la mesure semble perturbée par l’impédance du multimètre.

La sortie enregistreur

La prise BNC arrière semble sortir un signal correspondant à la déviation du galvanomètre. Je n’ai pas mesuré sa plage de fonctionnement.

Test avec un 741 moderne

J’ai également testé un circuit plus récent, acheté sur eBay. Les paramètres sont similaires au 741 mesuré plus haut, hormis le gain qui semble bien plus important et donnerait raison à mon ancien prof de physique appliquée …

 

Remplacement de condensateurs (bis)

J’ai terminé la remise en état du Macintosh Portable rétroéclairé (M5126) à l’aide du un kit de capas de Console5. Ce kit est prévu pour le modèle non rétroéclairé (M5120) mais il contient tous les condensateurs nécessaires à l’exception d’un 4.7µf 25V, que j’avais en stock.

Il est utile d’utiliser une lampe-loupe, ou mieux, pour bien souder les plus petits condensateurs. Ils sont pour certains particulièrement proches de connecteurs en plastique.

Malgré le changement des condensateurs dans le bloc d’alimentation, il ne marche pas : il fournit bien 7.5v à vide mais la moindre charge le fait se mettre en protection. A suivre …

Utilisation du Diagnostic Mode sur Macintosh SE/30

Au cours de mes recherches sur les détails techniques du SE/30, j’ai découvert sur mac68k.info qu’il existait un « Diagnostic Mode » sur certains Macintosh 68k. Ce mode est utilisé par le TechStep, un appareil permettant de tester les divers composants d’un Macintosh.

Une manière simple d’accéder à ce mode est d’utiliser le bouton d’interruption du mac (le « Programmer’s Interrupt switch ») avant que l’ordinateur ne démarre l’OS.

Au delà des possibilités de tester le hardware de la machine, ce mode dispose de deux éléments très intéressants :

  • la commande « *D » permettant de déposer des données, et donc aussi du code, dans la mémoire de l’ordinateur cible
  • la commande « *G » permettant de lancer l’exécution du code sur l’ordinateur cible à une adresse donnée

Ces commandes sont d’ailleurs mises en évidence dans la section « TechStep Requests CPUID on IIsi », sur la page de mac68k.info, où le TechStep envoie un petit programme permettant de récupérer le CPUID de la cible.

J’avais également vu le travail de David Ludwig sur GitHub qui a réalisé une ROM pour Mac Plus en C++ servant à afficher une image à l’écran. J’ai donc pensé à utiliser le « Diagnostic Mode » plutôt que de devoir graver une ROM pour lancer le programme de David.

Bien évidemment il a fallu modifier son code, qui est spécifique à un Mac Plus, et j’ai du adapter la gestion de la pile pour pouvoir retourner au « Diagnostic Mode » après exécution ; il est ainsi possible de faire plusieurs tests sans devoir appuyer de nouveau sur le bouton d’interruption à chaque fois.

Le code source modifié est disponible sur GitHub, il nécessite la suite g++-m68k-linux-gnu.

J’ai crée un outil, stm_send, également disponible sur GitHub, servant à uploader le code dans la mémoire du mac puis à l’exécuter. Le transfert se faisant en hexadécimal à 9600 bauds ce n’est pas très rapide. Les réglages effectués sur le port série sont spécifiques à linux.

Il serait possible d’accélérer les transferts en le faisant en deux temps : envoyer d’abord un programme qui passe le SCC à une vitesse plus élevée avant de rendre la main au « Service Mode », puis envoyer les données.

Pour uploader le binaire sur le mac, après compilation, la procédure est la suivante :

  1. connecter le port série du mac « Modem » à un ordinateur
  2. allumer le mac
  3. lorsque le curseur de la souris apparait appuyer sur le bouton d’interruption
  4. exécuter le programme stm_send

Et voici le résultat :

Au delà de la possibilité d’afficher une photo de Harry, mon chat, je vois deux choses intéressantes qui pourraient voir le jour grâce à cette méthode :

  • créer des disquettes de démarrage en ne disposant que d’une machine sans OS
  • installer un OS de base sur un disque SCSI sans disposer des disquettes d’installation

Pour peu qu’on réussisse à appeler correctement les routines qui sont dans la ROM du Macintosh cela ne devrait pas être trop complexe.

Mon problème pour l’instant est que routines utilisent la convention de passage de paramètres du langage Pascal, que je ne connait pas du tout, et pour l’instant je n’arrive pas à appeler la moindre routine sans faire crasher la machine 🙁

A suivre donc …

 

Remplacement de condensateurs

J’avance bien dans mes remplacement de condensateurs :

  • le Macintosh 128K est terminé et entièrement opérationnel, c’est une machines simple à remettre en état
  • le SE/30 également, mais en l’absence de pile de sauvegarde de la PRAM son fonctionnement est aléatoire, mais après effacement de la PRAM en profondeur à l’aide de TechTool Pro il reviens à la normale, à suivre [22/09 : il y avait une trace coupée, celle du rafraîchissement vertical, qui sert de timing]. La carte réseau fonctionne bien, c’est une machine idéale pour créer les disquettes 400Ko qu’utilise le 128K
  • les Powerbook sont en piteux état, beaucoup de plastique cassé, pas de disque dur, et des condensateurs fuyards, mais ils ont tous deux des extensions de mémoire. Je ne suis pas certain d’avoir envie de m’en occuper, peut-être pourrais-je les échanger si une pièce vient à manquer au cours des restaurations des autres machines…
  • le Lisa donne à nouveau des signes de vie, son électronique est passée au vinaigre blanc, rincée, et à ma surprise je n’ai pas encore trouvé de trace coupée, beaucoup sont cependant abîmées. Je vais avoir encore du boulot sur cette machine …
  • j’ai commandé un kit de pastilles de mousses pour réparer le clavier du Lisa qui ne fonctionne plus

Le Mac SE/30 explorant le « web » des Transmusicales de Rennes, contenu sur un CD de l’époque, avec le navigateur NCSA Mosaic. Vous trouverez une copie du site ici.

Le retour de ma collection

Durant mes vacances j’ai pu accéder au grenier dans lequel, au tournant du siècle, j’avais pu entreposer quelques ordinateurs qui étaient déjà « rétros » à l’époque… Je ne savais plus ce que j’avais stocké ce fut donc une surprise pour moi.

Quelles trouvailles :

  • un Macintosh 128K, avec clavier et pavé numérique
  • un Lisa II, avec son clavier
  • un Macintosh portable rétroéclairé (j’avais déjà ici le modèle non rétroéclairé)
  • un SE/30 avec clavier et souris
  • deux Powerbook, un 165 et un 180

Il reste un équipement que je n’ai pu charger dans la voiture : une station Next complète avec son écran. Il va être indispensable de récupérer cette machine rapidement pour la préserver également.

J’ai commandé quelques éléments pour pouvoir faire fonctionner à nouveau ces machines :

  • sur console5, des kits de condensateurs pour le Macintosh 128 (carte analogique+carte mère), les deux Macintosh portables, et le SE/30 (carte analogique+carte mère)
  • sur Big Mess o’ Wires j’ai commandé un Floppy Emu Model C, il permet de simuler un lecteur de disquettes pour Macintosh et pour Lisa
  • sur la boutique ebay d’Axel Muhr j’ai commandé une ROM « 32 bits clean » pour le SE/30
  • sur la boutique ebay d’Inertial computing j’ai commandé une carte SCSI2SD qui permet de remplacer le bruyant disque dur par une carte SD
  • je me suis procuré auprès de Patrick Schäfer un PCB et les deux composants programmables pour construire un IDEFile, c’est un émulateur de disque dur Profile pour le Lisa
  • pour le SE/30, 4 barrettes de mémoire de 16Mb chez OWC pour passer le SE/30 à 68Mb de RAM, après coup, j’aurai du en prendre 8 pour le passer à 128Mb
  • enfin, une souris apple M0100 sur le bon coin car ni le Lisa ni le Macintosh 128 n’avaient la leur. J’en commanderai une seconde prochainement…

 

(La photo du Lisa a été faite mi septembre, après quelques heures de travail dessus)

Type 14 Transmitter distributor

Un périphérique pour le Télétype est apparu sur un site de vente aux enchères … Je n’ai pu m’empêcher d’enchérir, et à ma grande surprise, personne d’autre n’a été interessé.

Il s’agit d’un lecteur de bandes perforées qui permet d’envoyer automatiquement des messages pré-enregistrés. Je n’ai pas le perforateur qui va avec, pour l’instant, mais j’ai dans mes cartons un perforateur électronique issu d’un vieux terminal ASR ZIP30 pour créer les bandes.

Presque en même temps, un lot de quelques pièces détachées est apparu sur le même site, particulièrement une lanière de rappel du chariot qui est dans un état moyen sur ma machine.