Tengo un proyecto que requerirá el uso de una Raspberry Pi en un entorno de baja potencia, pero también requerirá una conexión 3G. Todavía no he hecho ninguna prueba, pero supongo (y me corrijo si me equivoco) que un módem 3G conectado a una Raspberry Pi y conectado a una red usará energía y, dado el entorno, cualquier energía adicional El uso no es un requisito. Entonces, ¿cómo, programáticamente, puedo encender y apagar un módem 3G o el conector USB en una Raspberry Pi?
13
Respuestas:
Lamentablemente, no hay forma de apagarse completamente solo con el software. Deberá agregar un circuito de conmutación conectado a través de los pines GPIO para activar una "desconexión de hardware" cortando la alimentación de su hardware.
Editar:
Para cambiar con GPIO es solo un simple circuito de transistor.
B
está conectado a su pin GPIO. Dependiendo de si es ALTO o BAJO, el transistor está encendido o apagado.C
yE
pones la línea de alimentación al dispositivo USB (R L ).Para obtener información más detallada, consulte mejor este sitio: http://www.kpsec.freeuk.com/trancirc.htm#switching y especialmente en http://www.kpsec.freeuk.com/trancirc.htm#ic
fuente
No le aconsejaría que ENCIENDA / APAGUE un dispositivo USB simplemente usando un interruptor de base de transistor porque el protocolo de ENCENDIDO / APAGADO y la interfaz eléctrica deben usarse según lo definido por las especificaciones del USB.
Prefiero usar un concentrador USB conmutable que le permita ENCENDER / APAGAR cualquiera de sus puertos descendentes a través del software mediante un simple comando.
Algo como este concentrador USB conmutable debería funcionar para lo que desea.
fuente
Puede usar mi herramienta uhubctl , es compatible con los modelos B +, 2B, 3B, 3B + y 4B de Raspberry Pi: estos modelos tienen capacidad de hardware para apagar y encender el USB. Pero tenga en cuenta que este hardware solo admite apagar o encender todos los puertos USB a la vez, no de forma independiente. Sin embargo, los rieles de alimentación USB y Wifi + Ethernet se pueden controlar de forma independiente (a excepción de 4B, que no utiliza la interfaz USB para la conexión en red).
Úselo así:
Apague todos los puertos USB (debe usar el puerto 2):
Encienda la alimentación de todos los puertos USB (debe usar el puerto 2):
Apague la alimentación de Wifi + Ethernet (debe usar el puerto 1):
Tenga en cuenta que Raspberry Pi 4 es muy diferente de los modelos anteriores, ya que tiene un chip USB3. Usaría un comando como este para apagar (debe usar el puerto 4):
Si su Raspberry Pi no es compatible con la conmutación de alimentación USB, puede conectar un concentrador USB externo que sí lo hace (consulte la lista de modelos compatibles ) y controlar la alimentación de ese concentrador externo utilizando uhubctl.
fuente
Hola, estoy de acuerdo con @electrfunch ya que estoy trabajando en un proyecto de control de dispositivos en los puertos USB. En lugar del circuito electrónico a bordo propuesto por @Mose, creé mi propia placa de aislamiento utilizando relés y se parece al Hub de conmutador USB y esto tiene sentido ya que, aunque inicialmente se ignora, las corrientes dentro de la Raspberry Pi comenzarán a convertirse en un criterio en un ejecución más larga que podría afectar su rendimiento de Pi.
Por lo que quiero decir, puede consultar estos manuales para mediciones de baja corriente:
Referencia 1
Referencia 2
fuente