¿Deshabilitar el encendido de las interfaces Wifi y Bluetooth durante el arranque?

19

Tengo un Raspberry Pi 3 Modelo B Rev 1.2. Me gustaría asegurarme de que Wifi y Bluetooth no se enciendan ni consuman corriente ya que el dispositivo está utilizando Ethernet por cable.

Según dmesg, el dispositivo se está iniciando con:

[    0.000000] Kernel command line: 8250.nr_uarts=0 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656
bcm2708_fb.fbheight=416 bcm2709.boardrev=0xa22082 bcm2709.serial=0xe7ffc20d smsc95xx.macaddr=B8:...:0D
bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 
dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4
elevator=deadline fsck.repair=yes rootwait

Sé dónde agregar los parámetros de la línea de comandos. No sé cuáles son los parámetros de la línea de comando.

¿Cómo deshabilito Wifi y Bluetooth y me aseguro de que no haya consumo de energía durante el arranque?


$ uname -a
Linux raspberrypi 4.4.13-v7+ #894 SMP Mon Jun 13 13:13:27 BST 2016 armv7l GNU/Linux

$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 8.0 (jessie)
Release:    8.0
Codename:   jessie
Ricitos de oro
fuente

Respuestas:

31

Como está ejecutando con Jessie, se supone que debe definir el hardware en /boot/config.txt( Referencia a las superposiciones para pi ).

Deshabilite Bluetooth y WiFi agregando las líneas

dtoverlay=pi3-disable-bt
dtoverlay=pi3-disable-wifi

Opcionalmente, también puede deshabilitar el siguiente servicio

sudo systemctl disable hciuart

Consulte también la siguiente discusión sobre la desactivación de BT y WiFi

Alejandro
fuente
99
dtoverlay=pi3-disable-wifidesactivará WiFi en RasPi actual con Raspbian Jessie actualizado. No es necesario poner en la lista negra manualmente los módulos del controlador.
byteborg
12

Aquí hay un enlace que debería ayudar con el lado del diente azul. en la última versión de abril de 2016.

https://discourse.osmc.tv/t/disable-rpi3-internal-bluetooth-device/15760

Habrá un pequeño consumo de energía durante el arranque, los chips se encenderán y ejecutarán su firmware interno y esperarán a que los controladores se hagan cargo. La lista negra del controlador es la mejor opción de IMO.

/etc/modprobe.d/raspi-blacklist.conf

#wifi
blacklist brcmfmac
blacklist brcmutil
#bt
blacklist btbcm
blacklist hci_uart
CapeCoder
fuente
A pesar de la calificación en la recompensa, esta es la respuesta correcta. Las radios usan la energía principalmente cuando transmiten, y no transmitirán nada si no están en uso. No hay razón para creer que el "poder se puede cortar", ya que esto implicaría un circuito adicional con muy poco propósito: si cada característica de la caja de esquina se incluyera con el Pi, sería una computadora del tamaño de una tarjeta de crédito de $ 150 plagada de fallarán más componentes (y la mitad de las otras características adicionales de la caja de esquina probablemente aumentarían la cantidad de energía requerida).
Ricitos de oro
@goldilocks: ¿cómo se obtienen estadísticas para la interfaz con los controladores en la lista negra? Las estadísticas TX y RX son parte de la razón por la que sé que la interfaz no está apagada. También me sorprendería si el circuito no estuviera ya en su lugar. Supongo que es una cuestión de aplicar y quitar energía en ciertos pines. Lo que no tengo claro: ¿el controlador de código cerrado permite el control que necesitamos?
El chip que proporciona comunicación inalámbrica tiene un modo de baja potencia. Tiene reguladores internos que se pueden configurar (no estoy seguro de cómo). Aquí está la sección del documento que puede ayudar. ¿Supongo que esto es lo que estás buscando en los controladores? El BCM43438 permite un modo de consumo de energía extremadamente bajo al apagar completamente los reguladores CBUCK, CLDO y LNLDO. Cuando está en este estado, LPLDO1 proporciona al BCM43438 todo el voltaje requerido, reduciendo aún más las corrientes de fuga. enlace a la hoja de datos: cypress.com/file/298076/download
CapeCoder