Eu tenho um projeto que exigirá o uso de um Raspberry Pi em um ambiente de baixo consumo de energia, mas também exigirá uma conexão 3G. Ainda não testei, mas estou sob a suposição (e me corrija se estiver errado) de que um modem 3G conectado a um Raspberry Pi e conectado a uma rede consumirá energia e, ao ambiente, qualquer energia extra o uso não é obrigatório. Então, como, programaticamente, posso ligar e desligar um modem 3G ou o conector USB em um Raspberry Pi?
13
Respostas:
Infelizmente, não há como desligar totalmente o software sozinho. Você precisará adicionar um circuito de comutação conectado pelos pinos do GPIO para acionar uma "desconexão do hardware" cortando a energia do seu hardware.
Editar:
Para mudar com o GPIO, é apenas um circuito de transistor simples.
B
está anexado ao seu pino GPIO. Dependendo se é ALTO ou BAIXO, o transistor está ligado ou desligado.C
eE
você coloca a linha de força no dispositivo USB (R L ).Para obter informações mais detalhadas, consulte este site: http://www.kpsec.freeuk.com/trancirc.htm#switching e especialmente em http://www.kpsec.freeuk.com/trancirc.htm#ic
fonte
Eu não aconselho que você LIGUE / DESLIGUE um dispositivo USB apenas usando uma chave de base do transistor, pois o protocolo ON / OFF de alimentação e a interface elétrica adequados devem ser usados conforme definido pelas especificações USB.
Prefiro usar um hub USB comutável que permita ativar / desativar qualquer uma de suas portas downstream através do software usando um comando simples.
Algo como este hub comutável USB deve funcionar para o que você deseja.
fonte
Você pode usar minha ferramenta uhubctl , ela suporta os modelos Raspberry Pi B +, 2B, 3B, 3B + e 4B - esses modelos possuem capacidade de hardware para desligar e ligar a energia USB. Mas lembre-se de que este hardware suporta apenas desligar ou ligar todas as portas USB de uma só vez, não de forma independente. No entanto, os trilhos de alimentação USB e Wifi + Ethernet podem ser controlados independentemente (exceto o 4B, que não usa a interface USB para rede).
Use-o assim:
Desligue a energia de todas as portas USB (deve usar a porta 2):
Ligue a energia de todas as portas USB (deve usar a porta 2):
Desligue a energia do Wifi + Ethernet (deve usar a porta 1):
Observe que o Raspberry Pi 4 é muito diferente dos modelos anteriores, pois possui chip USB3. Você usaria um comando como este para desligar (deve usar a porta 4):
Se o seu Raspberry Pi não suportar comutação de energia USB, você poderá conectar um hub USB externo compatível (consulte a lista de modelos compatíveis ) e controlar a energia nesse hub externo usando uhubctl.
fonte
Oi Concordo com @electrfunch, pois estou trabalhando em um projeto de controle de dispositivos nas portas USB. Em vez do circuito eletrônico integrado proposto pelo @Mose, criei minha própria placa de isolamento usando relés e parecido com o USB Switch Hub, e isso faz sentido, pois, embora inicialmente ignorado, as correntes no Raspberry Pi começarão a se tornar um critério em um execução mais longa, o que pode afetar o desempenho do seu Pi.
Para o que quero dizer, você pode consultar estes manuais para medições de baixa corrente:
Referência 1
Referência 2
fonte