Come accendere/spegnere un PC senza premere meccanicamente il pulsante di accensione

Dopo aver esaminato la tua domanda in dettaglio, sembra che la difficoltà chiave che stai affrontando non è come ottenere un arduino per spegnere un computer (che la maggior parte delle altre risposte hanno affrontato), ma piuttosto, come accendere un tablet (senza intestazione di alimentazione facilmente accessibile come per un desktop, né WoL non avendo ethernet) indietro utilizzando un arduino collegato solo tramite la porta USB.

La sfida qui, presumibilmente, è il fatto che un tablet spento basato su Windows (sembra che tu stia usando un tablet HP) non ha ingressi facilmente accessibili per svegliare la macchina. Ho affrontato lo stesso problema con il mio robot di telepresenza che usa un tablet Dell windows - come faccio a svegliare il tablet da remoto quando voglio usarlo?

main-qimg-c78913fea702666e3b823be9867fb3aa.webp

Ho fatto qualche ricerca su questo, e ho trovato alcune soluzioni. Tuttavia, la maggior parte sembra funzionare solo se il tablet è in sospensione, piuttosto che spento. Ma credo che tu possa avere una terminologia sbagliata nei dettagli della tua domanda - in questi giorni sui tablet Windows, premendo il pulsante di accensione una volta si mette il tablet a riposo, e premendolo di nuovo lo si sveglia istantaneamente. Questo è un sonno a basso consumo ed è sufficiente per la maggior parte delle persone. È possibile spegnere completamente utilizzando l'opzione dal menu, o tenendo il pulsante di accensione per 5-8 secondi, ma l'avvio di nuovo richiederà diversi secondi o minuti. Penso che forse volevi dire che la gente non dovrebbe consigliare di usare solo lo screensaver.

Qui ci sono le opzioni che ho trovato che funzionano sul mio tablet, che possono o non possono funzionare per il tuo, semplici test che puoi fare per scoprirlo, e alcuni suggerimenti su come implementarle. Ho dato per scontato che la tua attuale implementazione abbia Arduino collegato come CDC/VCOM e qualche script host che interpreta i byte ricevuti ed esegue script esterni come autohotkey per eseguire la pressione dei tasti.

  1. Il tablet POTREBBE svegliarsi sull'attività della tastiera. Puoi testare questo collegando una tastiera, addormentando il tablet, e premendo un tasto per vedere se si sveglia. Se questo funziona, dovresti collegare qualcosa che si enumeri come una tastiera, e inviare una pressione di tasti per svegliarsi. Questo potrebbe significare sia la conversione dell'hardware arduino per agire come una tastiera USB (che è un'opzione che mi piace come convenientemente permette di inviare effettivamente le sequenze di tasti come indietro / avanti / sonno / ecc E il movimento del mouse direttamente emulando un dispositivo composito tastiera/mouse, senza bisogno di uno script host); o cablare un secondo dispositivo come la matrice di una tastiera fisica che viene attivata da un GPIO da arduino; o un secondo dispositivo programmabile come un TeensyUSB
  2. Il tablet POTREBBE svegliarsi su qualsiasi attività USB. Provate questo: scollegare e ricollegare l'Arduino causa un risveglio? Se è così, si potrebbe collegare il pin di reset sulla parte usb-seriale dell'arduino al microcontrollore principale (pin 5 sull'header ICSP iirc), che quando viene pulsato basso dovrebbe causare un reset nella usb-seriale, e potrebbe segnalare al tablet di svegliarsi. In alternativa penso che tirare il filo D+ alto abbia lo stesso effetto.
  3. Il tablet potrebbe svegliarsi quando il caricatore è collegato/scollegato. Puoi testare questo mettendo il tablet a riposo e vedere se torna online se tiri e/o reinserisci l'alimentazione. Questo è in realtà l'eventuale meccanismo che uso nel robot di telepresenza. Ho un relè NC nella linea di alimentazione, che disconnette momentaneamente l'alimentazione dal caricatore. Sul mio tablet Dell, questo risveglia il tablet per 5 secondi. Ordinariamente il tablet torna subito a dormire, ma io ho montato uno script autohotkey che viene innescato da un segnale di risveglio che disattiva la schermata di blocco e impedisce al tablet di tornare immediatamente a dormire. Se questo metodo funziona per te, avresti bisogno di un relè o di un modulo SSR collegato all'alimentazione (che nella maggior parte dei tablet è fortunatamente un semplice cavo USB).

BONUS: altre opzioni: controlla le impostazioni del BIOS, se ha un "stato di accensione dopo la perdita di potenza", l'opzione 3 funziona alla grande (ma pochi tablet hanno questa opzione a causa della presenza di una batteria. Alcuni tablet possono avere un modulo wifi sempre attivo che può implementare WoL, io non l'ho trovato per funzionare...

Spero che una di queste opzioni funzioni per te