diff --git a/roles/firmware/tasks/download.yml b/roles/firmware/tasks/download.yml index d35147013..83a3438eb 100644 --- a/roles/firmware/tasks/download.yml +++ b/roles/firmware/tasks/download.yml @@ -1,22 +1,27 @@ -- name: Back up original e.g. OS-provided firmware (for RPi internal WiFi) +- name: Back up 4 OS-provided firmware files to .orig (for RPi internal WiFi) copy: - src: "/lib/firmware/brcm/{{ item }}" - dest: "/lib/firmware/brcm/{{ item }}.orig" + src: /lib/firmware/brcm/{{ item }} + dest: /lib/firmware/brcm/{{ item }}.orig with_items: - brcmfmac43430-sdio.bin + - brcmfmac43430-sdio.clm_blob - brcmfmac43455-sdio.bin - brcmfmac43455-sdio.clm_blob + ignore_errors: yes -- name: Download high-capacity older firmware (for RPi internal WiFi, per https://github.com/iiab/iiab/issues/823#issuecomment-662285202) +- name: Download high-capacity firmware (for RPi internal WiFi, per https://github.com/iiab/iiab/issues/823#issuecomment-662285202) get_url: - url: "{{ item.url }}" - dest: "{{ item.dest }}" + url: "{{ item }}" + dest: /lib/firmware/brcm/ timeout: "{{ download_timeout }}" with_items: - - { url: 'http://d.iiab.io/packages/brcmfmac43430-sdio.bin_2018-09-11_7.45.98.65', dest: '/lib/firmware/brcm/brcmfmac43430-sdio.bin.iiab' } - - { url: 'http://d.iiab.io/packages/brcmfmac43430-sdio.clm_blob_2018-09-11_7.45.98.65', dest: '/lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.iiab' } - - { url: 'http://d.iiab.io/packages/brcmfmac43455-sdio.bin_2015-03-01_7.45.18.0_ub19.10.1', dest: '/lib/firmware/brcm/brcmfmac43455-sdio.bin.iiab' } - - { url: 'http://d.iiab.io/packages/brcmfmac43455-sdio.clm_blob_2018-02-26_rpi', dest: '/lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.iiab' } + - http://d.iiab.io/packages/brcmfmac43455-sdio.bin_2021-11-30_minimal # 19 -- from https://github.com/RPi-Distro/firmware-nonfree/blob/feeeda21e930c2e182484e8e1269b61cca2a8451/debian/config/brcm80211/cypress/cyfmac43455-sdio-minimal.bin + - http://d.iiab.io/packages/brcmfmac43455-sdio.bin_2021-10-05_3rd-trial-minimal # 24 + - http://d.iiab.io/packages/brcmfmac43455-sdio.clm_blob_2021-11-17_rpi # Works w/ both above -- from https://github.com/RPi-Distro/firmware-nonfree/blob/dc406650e840705957f8403efeacf71d2d7543b3/debian/config/brcm80211/cypress/cyfmac43455-sdio.clm_blob + - http://d.iiab.io/packages/brcmfmac43455-sdio.bin_2015-03-01_7.45.18.0_ub19.10.1 # 32 + - http://d.iiab.io/packages/brcmfmac43455-sdio.clm_blob_2018-02-26_rpi + - http://d.iiab.io/packages/brcmfmac43430-sdio.bin_2018-09-11_7.45.98.65 # 30 + - http://d.iiab.io/packages/brcmfmac43430-sdio.clm_blob_2018-09-11_7.45.98.65 # RECORD firmware AS DOWNLOADED diff --git a/roles/firmware/tasks/install.yml b/roles/firmware/tasks/install.yml index ce7004ea2..3b3b78e9a 100644 --- a/roles/firmware/tasks/install.yml +++ b/roles/firmware/tasks/install.yml @@ -2,6 +2,67 @@ include_tasks: download.yml when: firmware_downloaded is undefined # SEE ALSO firmware_installed below + +# Set 2 symlinks for RPi 3 B+ and 4 + +- name: Populate rpi3bplus_rpi4_wifi_firmwares dictionary (lookup table for 43455 .bin and .clm_blob files in /lib/firmware/brcm) + set_fact: + rpi3bplus_rpi4_wifi_firmwares: # Dictionary keys (left side) are always strings, e.g. "19" + os: + - brcmfmac43455-sdio.bin.orig + - brcmfmac43455-sdio.clm_blob.orig + 19: + - brcmfmac43455-sdio.bin_2021-11-30_minimal + - brcmfmac43455-sdio.clm_blob_2021-11-17_rpi + 24: + - brcmfmac43455-sdio.bin_2021-10-05_3rd-trial-minimal + - brcmfmac43455-sdio.clm_blob_2021-11-17_rpi + 32: + - brcmfmac43455-sdio.bin_2015-03-01_7.45.18.0_ub19.10.1 + - brcmfmac43455-sdio.clm_blob_2018-02-26_rpi + +- name: Symlink brcmfmac43455-sdio.bin.iiab -> {{ rpi3bplus_rpi4_wifi_firmwares[rpi3bplus_rpi4_wifi_firmware][0] }} (as rpi3bplus_rpi4_wifi_firmware is "{{ rpi3bplus_rpi4_wifi_firmware }}") + file: + src: "{{ rpi3bplus_rpi4_wifi_firmwares[rpi3bplus_rpi4_wifi_firmware][0] }}" + path: /lib/firmware/brcm/brcmfmac43455-sdio.bin.iiab + state: link + force: yes + +- name: Symlink brcmfmac43455-sdio.clm_blob.iiab -> {{ rpi3bplus_rpi4_wifi_firmwares[rpi3bplus_rpi4_wifi_firmware][1] }} (as rpi3bplus_rpi4_wifi_firmware is "{{ rpi3bplus_rpi4_wifi_firmware }}") + file: + src: "{{ rpi3bplus_rpi4_wifi_firmwares[rpi3bplus_rpi4_wifi_firmware][1] }}" + path: /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.iiab + state: link + force: yes + + +# Set 2 symlinks for RPi Zero W and 3 + +- name: Populate rpizerow_rpi3_wifi_firmwares dictionary (lookup table for 43430 .bin and .clm_blob files in /lib/firmware/brcm) + set_fact: + rpizerow_rpi3_wifi_firmwares: + os: + - brcmfmac43430-sdio.bin.orig + - brcmfmac43430-sdio.clm_blob.orig + 30: + - brcmfmac43430-sdio.bin_2018-09-11_7.45.98.65 + - brcmfmac43430-sdio.clm_blob_2018-09-11_7.45.98.65 + +- name: Symlink brcmfmac43430-sdio.bin.iiab -> {{ rpizerow_rpi3_wifi_firmwares[rpizerow_rpi3_wifi_firmware][0] }} (as rpizerow_rpi3_wifi_firmware is "{{ rpizerow_rpi3_wifi_firmware }}") + file: + src: "{{ rpizerow_rpi3_wifi_firmwares[rpizerow_rpi3_wifi_firmware][0] }}" + path: /lib/firmware/brcm/brcmfmac43430-sdio.bin.iiab + state: link + force: yes + +- name: Symlink brcmfmac43430-sdio.clm_blob.iiab -> {{ rpizerow_rpi3_wifi_firmwares[rpizerow_rpi3_wifi_firmware][1] }} (as rpizerow_rpi3_wifi_firmware is "{{ rpizerow_rpi3_wifi_firmware }}") + file: + src: "{{ rpizerow_rpi3_wifi_firmwares[rpizerow_rpi3_wifi_firmware][1] }}" + path: /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.iiab + state: link + force: yes + + - name: 'Install from template: /usr/bin/iiab-check-firmware, /etc/systemd/system/iiab-check-firmware.service & /etc/profile.d/iiab-firmware-warn.sh' template: src: "{{ item.src }}" diff --git a/roles/firmware/templates/iiab-check-firmware b/roles/firmware/templates/iiab-check-firmware index aeda2366e..024a074b7 100644 --- a/roles/firmware/templates/iiab-check-firmware +++ b/roles/firmware/templates/iiab-check-firmware @@ -1,6 +1,6 @@ #!/bin/bash -WARN=0 +WARN=false DATE=$(date +%F-%T) # 2021-08-18: bash scripts using default_vars.yml &/or local_vars.yml @@ -13,43 +13,41 @@ DATE=$(date +%F-%T) if grep -q '^wifi_hotspot_capacity_rpi_fix:\s\+[fF]alse\b' /etc/iiab/local_vars.yml ; then echo "'wifi_hotspot_capacity_rpi_fix: False' found in /etc/iiab/local_vars.yml" echo "...so WiFi firmware will NOT be checked or replaced." - exit 0 fi echo -e "'wifi_hotspot_capacity_rpi_fix: True' presumed..." echo -e "...in /etc/iiab/local_vars.yml (or /opt/iiab/iiab/vars/default_vars.yml ?)\n" -if ! $(diff -q /lib/firmware/brcm/brcmfmac43455-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43455-sdio.bin); then +if ! cmp -s /lib/firmware/brcm/brcmfmac43455-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43455-sdio.bin ; then mv /lib/firmware/brcm/brcmfmac43455-sdio.bin /lib/firmware/brcm/brcmfmac43455-sdio.bin.$DATE - cp /lib/firmware/brcm/brcmfmac43455-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43455-sdio.bin - echo "Replacing /lib/firmware/brcm/brcmfmac43455-sdio.bin" - WARN=1 + ln -sf brcmfmac43455-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43455-sdio.bin + echo "Replaced /lib/firmware/brcm/brcmfmac43455-sdio.bin" + WARN=true fi -if ! $(diff -q /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob); then +if ! cmp -s /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob ; then mv /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.$DATE - cp /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob - echo "Replacing /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob" - WARN=1 + ln -sf brcmfmac43455-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob + echo "Replaced /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob" + WARN=true fi -if ! $(diff -q /lib/firmware/brcm/brcmfmac43430-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43430-sdio.bin); then +if ! cmp -s /lib/firmware/brcm/brcmfmac43430-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43430-sdio.bin ; then mv /lib/firmware/brcm/brcmfmac43430-sdio.bin /lib/firmware/brcm/brcmfmac43430-sdio.bin.$DATE - cp /lib/firmware/brcm/brcmfmac43430-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43430-sdio.bin - cp /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob - echo "Replacing /lib/firmware/brcm/brcmfmac43430-sdio.bin" - WARN=1 + ln -sf brcmfmac43430-sdio.bin.iiab /lib/firmware/brcm/brcmfmac43430-sdio.bin + echo "Replaced /lib/firmware/brcm/brcmfmac43430-sdio.bin" + WARN=true fi -if ! $(diff -q /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob); then +if ! cmp -s /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob ; then mv /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.$DATE - cp /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob - echo "Replacing /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob" - WARN=1 + ln -sf brcmfmac43430-sdio.clm_blob.iiab /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob + echo "Replaced /lib/firmware/brcm/brcmfmac43430-sdio.clm_blob" + WARN=true fi -if [ "$WARN" = "1" ]; then +if $($WARN); then echo -e "\n \e[41;1mWiFi Firmware has been replaced, per iiab/iiab#823.\e[0m" echo -e " \e[41;1mReboot is required to activate.\e[0m\n" touch /.fw_replaced @@ -62,5 +60,3 @@ else rm /.fw_replaced fi fi - -# exit 0 diff --git a/vars/default_vars.yml b/vars/default_vars.yml index 128cb899b..db9fb8659 100644 --- a/vars/default_vars.yml +++ b/vars/default_vars.yml @@ -111,14 +111,29 @@ host_country_code: US host_ssid: Internet in a Box host_wifi_mode: g host_channel: 6 -hostapd_secure: False # 2021-03-02 #2696 WiFi EAPOL fails if hotspot passwords, -hostapd_password: changeme # eg if firmware wifi_hotspot_capacity_rpi_fix: True +hostapd_secure: False # 2021-03-02 WiFi EAPOL fails if hotspot passwords, +hostapd_password: changeme # espec if WiFi firmware patched below? #2696 hostapd_install: True # 2020-01-21: this var MIGHT be implemented in future. hostapd_enabled: True -wifi_hotspot_capacity_rpi_fix: True # Restores the ability of RPi internal -# WiFi hotspots to service 30-to-32 client devices. Background explanation: -# https://github.com/iiab/iiab/issues/823#issuecomment-662285202 and PR #2472. -wifi_up_down: True # Creates a 2nd virtual WiFi adapter for upstream WiFi + +# Raspberry Pi 3 B+ and 4 OS's don't allow more than ~4 students to use the +# internal WiFi hotspot. Increase this to 19 or 24 student WiFi devices (or +# 32 on older OS's from 2020) using EXACTLY 1 of the 4 lines below: +# +#rpi3bplus_rpi4_wifi_firmware: os # Use your OS's WiFi firmware e.g. 7.45.241 +rpi3bplus_rpi4_wifi_firmware: 19 # SEE: github.com/iiab/iiab/issues/2853 +#rpi3bplus_rpi4_wifi_firmware: 24 # REQUIRES "wifi_up_down: False" BELOW! +#rpi3bplus_rpi4_wifi_firmware: 32 # UNRELIABLE (INTERMITTENT) with 2021+ OS's +# +# BACKGROUND: https://github.com/iiab/iiab/issues/823#issuecomment-662285202 +# +# Raspberry Pi Zero W and 3 OS's don't allow more than ~10 students to use the +# internal WiFi hotspot. Or you can increase this to 30 student WiFi devices: +# +#rpizerow_rpi3_wifi_firmware: os # Use yr OS WiFi firmware e.g. 7.45.98.118 +rpizerow_rpi3_wifi_firmware: 30 # Or firmware 7.45.98.65 from 2018-09-28 + +wifi_up_down: True # AP+STA mode: Uses "ap0" WiFi adapter for upstream WiFi # (e.g. to Internet) in addition to downstream WiFi (e.g. classroom hotspot). # Set True if client machines should have "passthrough" access to WAN/Internet: diff --git a/vars/local_vars_large.yml b/vars/local_vars_large.yml index 6ca05ce25..cb86a0f81 100644 --- a/vars/local_vars_large.yml +++ b/vars/local_vars_large.yml @@ -1,7 +1,7 @@ # This is local_vars_large.yml -- copy it to /etc/iiab/local_vars.yml then... # modify variables below, to override /opt/iiab/iiab/vars/default_vars.yml -# PLZ READ http://wiki.laptop.org/go/IIAB/local_vars.yml AND http://FAQ.IIAB.IO +# READ "What is local_vars.yml and how do I customize it?" AT http://FAQ.IIAB.IO # Orig Idea: branch github.com/xsce/xsce-local for your deployment/community # IIAB does NOT currently support uninstalling apps! So: if any IIAB app is @@ -54,17 +54,32 @@ iiab_domain: lan # YOU'LL PREVENT OLDER LAPTOPS/PHONES/TABLETS (WHICH REQUIRE 2.4 GHz) FROM # CONNECTING TO YOUR IIAB'S INTERNAL HOTSPOT. See "wifi_up_down: True" below. # -# Raspberry Pi OS requires Wi-Fi country since March 2018. Please set it here: +# Raspberry Pi OS requires WiFi country since March 2018. Please set it here: host_country_code: US host_ssid: Internet in a Box host_wifi_mode: g host_channel: 6 -hostapd_secure: False # 2021-03-02 #2696 WiFi EAPOL fails if hotspot passwords, -hostapd_password: changeme # eg if firmware wifi_hotspot_capacity_rpi_fix: True -wifi_hotspot_capacity_rpi_fix: True # Restores the ability of RPi internal -# WiFi hotspots to service 30-to-32 client devices. Background explanation: -# https://github.com/iiab/iiab/issues/823#issuecomment-662285202 and PR #2472. -wifi_up_down: True # Creates a 2nd virtual WiFi adapter for upstream WiFi +hostapd_secure: False # 2021-03-02 WiFi EAPOL fails if hotspot passwords, +hostapd_password: changeme # espec if WiFi firmware patched below? #2696 + +# Raspberry Pi 3 B+ and 4 OS's don't allow more than ~4 students to use the +# internal WiFi hotspot. Increase this to 19 or 24 student WiFi devices (or +# 32 on older OS's from 2020) using EXACTLY 1 of the 4 lines below: +# +#rpi3bplus_rpi4_wifi_firmware: os # Use your OS's WiFi firmware e.g. 7.45.241 +rpi3bplus_rpi4_wifi_firmware: 19 # SEE: github.com/iiab/iiab/issues/2853 +#rpi3bplus_rpi4_wifi_firmware: 24 # REQUIRES "wifi_up_down: False" BELOW! +#rpi3bplus_rpi4_wifi_firmware: 32 # UNRELIABLE (INTERMITTENT) with 2021+ OS's +# +# BACKGROUND: https://github.com/iiab/iiab/issues/823#issuecomment-662285202 +# +# Raspberry Pi Zero W and 3 OS's don't allow more than ~10 students to use the +# internal WiFi hotspot. Or you can increase this to 30 student WiFi devices: +# +#rpizerow_rpi3_wifi_firmware: os # Use yr OS WiFi firmware e.g. 7.45.98.118 +rpizerow_rpi3_wifi_firmware: 30 # Or firmware 7.45.98.65 from 2018-09-28 + +wifi_up_down: True # AP+STA mode: Uses "ap0" WiFi adapter for upstream WiFi # (e.g. to Internet) in addition to downstream WiFi (e.g. classroom hotspot). # Set True if client machines should have "passthrough" access to WAN/Internet: diff --git a/vars/local_vars_medium.yml b/vars/local_vars_medium.yml index 10ae8f042..dfbfcfc2e 100644 --- a/vars/local_vars_medium.yml +++ b/vars/local_vars_medium.yml @@ -1,7 +1,7 @@ # This is local_vars_medium.yml -- copy it to /etc/iiab/local_vars.yml then... # modify variables below, to override /opt/iiab/iiab/vars/default_vars.yml -# PLZ READ http://wiki.laptop.org/go/IIAB/local_vars.yml AND http://FAQ.IIAB.IO +# READ "What is local_vars.yml and how do I customize it?" AT http://FAQ.IIAB.IO # Orig Idea: branch github.com/xsce/xsce-local for your deployment/community # IIAB does NOT currently support uninstalling apps! So: if any IIAB app is @@ -54,17 +54,32 @@ iiab_domain: lan # YOU'LL PREVENT OLDER LAPTOPS/PHONES/TABLETS (WHICH REQUIRE 2.4 GHz) FROM # CONNECTING TO YOUR IIAB'S INTERNAL HOTSPOT. See "wifi_up_down: True" below. # -# Raspberry Pi OS requires Wi-Fi country since March 2018. Please set it here: +# Raspberry Pi OS requires WiFi country since March 2018. Please set it here: host_country_code: US host_ssid: Internet in a Box host_wifi_mode: g host_channel: 6 -hostapd_secure: False # 2021-03-02 #2696 WiFi EAPOL fails if hotspot passwords, -hostapd_password: changeme # eg if firmware wifi_hotspot_capacity_rpi_fix: True -wifi_hotspot_capacity_rpi_fix: True # Restores the ability of RPi internal -# WiFi hotspots to service 30-to-32 client devices. Background explanation: -# https://github.com/iiab/iiab/issues/823#issuecomment-662285202 and PR #2472. -wifi_up_down: True # Creates a 2nd virtual WiFi adapter for upstream WiFi +hostapd_secure: False # 2021-03-02 WiFi EAPOL fails if hotspot passwords, +hostapd_password: changeme # espec if WiFi firmware patched below? #2696 + +# Raspberry Pi 3 B+ and 4 OS's don't allow more than ~4 students to use the +# internal WiFi hotspot. Increase this to 19 or 24 student WiFi devices (or +# 32 on older OS's from 2020) using EXACTLY 1 of the 4 lines below: +# +#rpi3bplus_rpi4_wifi_firmware: os # Use your OS's WiFi firmware e.g. 7.45.241 +rpi3bplus_rpi4_wifi_firmware: 19 # SEE: github.com/iiab/iiab/issues/2853 +#rpi3bplus_rpi4_wifi_firmware: 24 # REQUIRES "wifi_up_down: False" BELOW! +#rpi3bplus_rpi4_wifi_firmware: 32 # UNRELIABLE (INTERMITTENT) with 2021+ OS's +# +# BACKGROUND: https://github.com/iiab/iiab/issues/823#issuecomment-662285202 +# +# Raspberry Pi Zero W and 3 OS's don't allow more than ~10 students to use the +# internal WiFi hotspot. Or you can increase this to 30 student WiFi devices: +# +#rpizerow_rpi3_wifi_firmware: os # Use yr OS WiFi firmware e.g. 7.45.98.118 +rpizerow_rpi3_wifi_firmware: 30 # Or firmware 7.45.98.65 from 2018-09-28 + +wifi_up_down: True # AP+STA mode: Uses "ap0" WiFi adapter for upstream WiFi # (e.g. to Internet) in addition to downstream WiFi (e.g. classroom hotspot). # Set True if client machines should have "passthrough" access to WAN/Internet: diff --git a/vars/local_vars_small.yml b/vars/local_vars_small.yml index ffba2d848..79ac39b94 100644 --- a/vars/local_vars_small.yml +++ b/vars/local_vars_small.yml @@ -1,7 +1,7 @@ # This is local_vars_small.yml -- copy it to /etc/iiab/local_vars.yml then... # modify variables below, to override /opt/iiab/iiab/vars/default_vars.yml -# PLZ READ http://wiki.laptop.org/go/IIAB/local_vars.yml AND http://FAQ.IIAB.IO +# READ "What is local_vars.yml and how do I customize it?" AT http://FAQ.IIAB.IO # Orig Idea: branch github.com/xsce/xsce-local for your deployment/community # IIAB does NOT currently support uninstalling apps! So: if any IIAB app is @@ -54,17 +54,32 @@ iiab_domain: lan # YOU'LL PREVENT OLDER LAPTOPS/PHONES/TABLETS (WHICH REQUIRE 2.4 GHz) FROM # CONNECTING TO YOUR IIAB'S INTERNAL HOTSPOT. See "wifi_up_down: True" below. # -# Raspberry Pi OS requires Wi-Fi country since March 2018. Please set it here: +# Raspberry Pi OS requires WiFi country since March 2018. Please set it here: host_country_code: US host_ssid: Internet in a Box host_wifi_mode: g host_channel: 6 -hostapd_secure: False # 2021-03-02 #2696 WiFi EAPOL fails if hotspot passwords, -hostapd_password: changeme # eg if firmware wifi_hotspot_capacity_rpi_fix: True -wifi_hotspot_capacity_rpi_fix: True # Restores the ability of RPi internal -# WiFi hotspots to service 30-to-32 client devices. Background explanation: -# https://github.com/iiab/iiab/issues/823#issuecomment-662285202 and PR #2472. -wifi_up_down: True # Creates a 2nd virtual WiFi adapter for upstream WiFi +hostapd_secure: False # 2021-03-02 WiFi EAPOL fails if hotspot passwords, +hostapd_password: changeme # espec if WiFi firmware patched below? #2696 + +# Raspberry Pi 3 B+ and 4 OS's don't allow more than ~4 students to use the +# internal WiFi hotspot. Increase this to 19 or 24 student WiFi devices (or +# 32 on older OS's from 2020) using EXACTLY 1 of the 4 lines below: +# +#rpi3bplus_rpi4_wifi_firmware: os # Use your OS's WiFi firmware e.g. 7.45.241 +rpi3bplus_rpi4_wifi_firmware: 19 # SEE: github.com/iiab/iiab/issues/2853 +#rpi3bplus_rpi4_wifi_firmware: 24 # REQUIRES "wifi_up_down: False" BELOW! +#rpi3bplus_rpi4_wifi_firmware: 32 # UNRELIABLE (INTERMITTENT) with 2021+ OS's +# +# BACKGROUND: https://github.com/iiab/iiab/issues/823#issuecomment-662285202 +# +# Raspberry Pi Zero W and 3 OS's don't allow more than ~10 students to use the +# internal WiFi hotspot. Or you can increase this to 30 student WiFi devices: +# +#rpizerow_rpi3_wifi_firmware: os # Use yr OS WiFi firmware e.g. 7.45.98.118 +rpizerow_rpi3_wifi_firmware: 30 # Or firmware 7.45.98.65 from 2018-09-28 + +wifi_up_down: True # AP+STA mode: Uses "ap0" WiFi adapter for upstream WiFi # (e.g. to Internet) in addition to downstream WiFi (e.g. classroom hotspot). # Set True if client machines should have "passthrough" access to WAN/Internet: diff --git a/vars/local_vars_unittest.yml b/vars/local_vars_unittest.yml index 02e928c90..b54d575f1 100644 --- a/vars/local_vars_unittest.yml +++ b/vars/local_vars_unittest.yml @@ -1,7 +1,7 @@ # This is local_vars_unittest.yml -- copy it to /etc/iiab/local_vars.yml then... # modify variables below, to override /opt/iiab/iiab/vars/default_vars.yml -# PLZ READ http://wiki.laptop.org/go/IIAB/local_vars.yml AND http://FAQ.IIAB.IO +# READ "What is local_vars.yml and how do I customize it?" AT http://FAQ.IIAB.IO # Orig Idea: branch github.com/xsce/xsce-local for your deployment/community # IIAB does NOT currently support uninstalling apps! So: if any IIAB app is @@ -54,17 +54,32 @@ iiab_domain: lan # YOU'LL PREVENT OLDER LAPTOPS/PHONES/TABLETS (WHICH REQUIRE 2.4 GHz) FROM # CONNECTING TO YOUR IIAB'S INTERNAL HOTSPOT. See "wifi_up_down: True" below. # -# Raspberry Pi OS requires Wi-Fi country since March 2018. Please set it here: +# Raspberry Pi OS requires WiFi country since March 2018. Please set it here: host_country_code: US host_ssid: unittest host_wifi_mode: g host_channel: 6 -hostapd_secure: False # 2021-03-02 #2696 WiFi EAPOL fails if hotspot passwords, -hostapd_password: changeme # eg if firmware wifi_hotspot_capacity_rpi_fix: True -wifi_hotspot_capacity_rpi_fix: True # Restores the ability of RPi internal -# WiFi hotspots to service 30-to-32 client devices. Background explanation: -# https://github.com/iiab/iiab/issues/823#issuecomment-662285202 and PR #2472. -wifi_up_down: True # Creates a 2nd virtual WiFi adapter for upstream WiFi +hostapd_secure: False # 2021-03-02 WiFi EAPOL fails if hotspot passwords, +hostapd_password: changeme # espec if WiFi firmware patched below? #2696 + +# Raspberry Pi 3 B+ and 4 OS's don't allow more than ~4 students to use the +# internal WiFi hotspot. Increase this to 19 or 24 student WiFi devices (or +# 32 on older OS's from 2020) using EXACTLY 1 of the 4 lines below: +# +#rpi3bplus_rpi4_wifi_firmware: os # Use your OS's WiFi firmware e.g. 7.45.241 +rpi3bplus_rpi4_wifi_firmware: 19 # SEE: github.com/iiab/iiab/issues/2853 +#rpi3bplus_rpi4_wifi_firmware: 24 # REQUIRES "wifi_up_down: False" BELOW! +#rpi3bplus_rpi4_wifi_firmware: 32 # UNRELIABLE (INTERMITTENT) with 2021+ OS's +# +# BACKGROUND: https://github.com/iiab/iiab/issues/823#issuecomment-662285202 +# +# Raspberry Pi Zero W and 3 OS's don't allow more than ~10 students to use the +# internal WiFi hotspot. Or you can increase this to 30 student WiFi devices: +# +#rpizerow_rpi3_wifi_firmware: os # Use yr OS WiFi firmware e.g. 7.45.98.118 +rpizerow_rpi3_wifi_firmware: 30 # Or firmware 7.45.98.65 from 2018-09-28 + +wifi_up_down: True # AP+STA mode: Uses "ap0" WiFi adapter for upstream WiFi # (e.g. to Internet) in addition to downstream WiFi (e.g. classroom hotspot). # Set True if client machines should have "passthrough" access to WAN/Internet: