Il dito remoto

Ultimo aggiornamento: 19 Nov 2021

In questo periodo lavoro in “remote working”. Ovviamente, ho tutta l’attrezzatura elettronica e informatica nel mio piccolo appartamentino e posso fare quasi tutto da qui. L’unica cosa che non posso fare è accendere il notebook della ditta, senza dover chiamare al telefono qualcuno per farlo. Il notebook, purtroppo, non ha nel BIOS una impostazione per dirgli cosa fare quando viene collegato all’alimentazione. Ho fatto molti esperimenti, ma se non si preme il pulsantino, proprio non c’è verso di accenderlo. Allora ho pensato, visto che sono un “lavoratore remoto”, di fare un “dito remoto” che prema per me, quando lo voglio, il pulsantino sul notebook della ditta. Ecco il circuito:

Ho usato un micro ATtiny24 senza un particolare motivo. Semplicemente ne avevo uno in DIP e l’ho usato. Il programma è molto semplice. L’ho scritto in C e compilato con Embedded Workbench della IAR (registrazione gratuita per il download). Io ho scaricato la versione senza limiti di tempo, ma limitata a 4KB di flash, che sono più che sufficienti per un sacco di applicazioni a questo livello.

Come funziona?

Al reset, dando 5V sulla presa USB o premendo il pulsantino (durante le prove) il circuito pilota il servomotore in direzione oraria o antioraria, in funzione di un ponticello. Questo serve perché, meccanicamente, si dovrà posizionare il servomotore sul corpo del notebook e quindi è meglio avere la possibilità di scelta. Poi ci sono due trimmer, che servono per regolare l’angolo di rotazione (sempre per lo stesso motivo) e il tempo di pausa sull’angolo impostato, in pratica il tempo per cui il “dito” deve premere il pulsante. Dopo questo tempo, il servo torna nella posizione di riposo e il programma si ferma in attesa di un nuovo reset.

Come lo faccio da remoto?

Bene, durante le mie prove ho usato uno switch internet per dare la 220V all’alimentatore del notebook (trovate, in alcuni dei miei precedenti articoli, la descrizione di vari miei esperimenti e circuiti che svolgono tale funzione). Ecco quello usato in questo caso. E’ molto vecchio e si basa su un micro ATtiny841 e un modulo wifi ESP-01 (comandi AT) :

Quando invio il comando di ON tramite il browser del mio PC (a casa), lo switch remoto scatta e l’alimentatore del notebook viene collegato alla tensione di rete. Come ho già detto, questo NON è sufficiente ad accendere il notebook, ma (grazie al Cielo) sulle porte USB del notebook si accende il 5V. Ora, il circuito è collegato a una porta USB e quindi viene alimentato, muovendo così il servomotore e facendogli “premere” il pulsante, quindi il notebook si accende e io posso controllarlo da remoto tramite una normale VNC. Per lo spegnimento, lo faccio da VNC e poi, con un altro comando da browser, spengo anche lo switch internet e tolgo così la tensione di rete all’alimentatore del notebook. In questa situazione, tutto è pronto per iniziare una nuova sessione.

Ecco lo schema, disegnato a mano perché penso che questo resterà un “modello unico”:

Nota: tra i pin Vcc e Gnd del micro c’è un 100nF che mi è sfuggito nel disegno. Il prototipo è stato fissato al notebook in ditta. Il mio amico Rossano (per inciso, il socio fondatore della ditta) ha fatto le foto che allego, oltre a fissare fisicamente il circuito al computer. Che dire… funziona perfettamente! 🙂

Il servomotore che preme il pulsante di accensione
Lo switch remoto via Internet
Il notebook che fa da “muletto” per lavori in sede e in giro
La postazione di lavoro

Ecco, infine, l’intera cartella di lavoro, liberamente scaricabile dal mio sito. L’archivio è compresso con password eficara. Questo è il contenuto della cartella ATtiny24 contenuta nello zip:

Chi volesse programmare il micro senza modifiche, potrà usare il file pressbutton.hex contenuto nella cartella Release/Exe. Le informazioni relative ai “fuse” sono in testa al file sorgente main.c (high e low).

I tempi per il PWM sono approssimati, ma funzionano bene con il motore mostrato nelle figure. Il programma è stato scritto in maniera “quick and dirty” ed è migliorabile. A me serviva SUBITO e così appena ha funzionato in modo stabile, ho chiuso tutto.

Buon divertimento!