diff --git a/.gitignore b/.gitignore
index ce72e53..7c12ea3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,7 @@ site
Pipfile
Pipfile.lock
docs.code-workspace
+
+.venv-ml/
+site/
+.DS_Store
diff --git a/docs/assets/configs/erx-config.tar.gz b/docs/en/assets/configs/erx-config.tar.gz
similarity index 100%
rename from docs/assets/configs/erx-config.tar.gz
rename to docs/en/assets/configs/erx-config.tar.gz
diff --git a/docs/assets/images/Centered Text Logo-RGB.png b/docs/en/assets/images/Centered Text Logo-RGB.png
similarity index 100%
rename from docs/assets/images/Centered Text Logo-RGB.png
rename to docs/en/assets/images/Centered Text Logo-RGB.png
diff --git a/docs/assets/images/Circular Logo-RGB.png b/docs/en/assets/images/Circular Logo-RGB.png
similarity index 100%
rename from docs/assets/images/Circular Logo-RGB.png
rename to docs/en/assets/images/Circular Logo-RGB.png
diff --git a/docs/assets/images/PCWorg Logo-RGB.svg b/docs/en/assets/images/PCWorg Logo-RGB.svg
similarity index 100%
rename from docs/assets/images/PCWorg Logo-RGB.svg
rename to docs/en/assets/images/PCWorg Logo-RGB.svg
diff --git a/docs/assets/images/device-configs/erx/eth0.jpeg b/docs/en/assets/images/device-configs/erx/eth0.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/erx/eth0.jpeg
rename to docs/en/assets/images/device-configs/erx/eth0.jpeg
diff --git a/docs/assets/images/device-configs/erx/hardware.jpg b/docs/en/assets/images/device-configs/erx/hardware.jpg
similarity index 100%
rename from docs/assets/images/device-configs/erx/hardware.jpg
rename to docs/en/assets/images/device-configs/erx/hardware.jpg
diff --git a/docs/assets/images/device-configs/erx/login.jpeg b/docs/en/assets/images/device-configs/erx/login.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/erx/login.jpeg
rename to docs/en/assets/images/device-configs/erx/login.jpeg
diff --git a/docs/assets/images/device-configs/erx/system.jpeg b/docs/en/assets/images/device-configs/erx/system.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/erx/system.jpeg
rename to docs/en/assets/images/device-configs/erx/system.jpeg
diff --git a/docs/assets/images/device-configs/erx/wiring.jpeg b/docs/en/assets/images/device-configs/erx/wiring.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/erx/wiring.jpeg
rename to docs/en/assets/images/device-configs/erx/wiring.jpeg
diff --git a/docs/assets/images/device-configs/erx/wizard.jpeg b/docs/en/assets/images/device-configs/erx/wizard.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/erx/wizard.jpeg
rename to docs/en/assets/images/device-configs/erx/wizard.jpeg
diff --git a/docs/assets/images/device-configs/mesh/Materials.jpeg b/docs/en/assets/images/device-configs/mesh/Materials.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/mesh/Materials.jpeg
rename to docs/en/assets/images/device-configs/mesh/Materials.jpeg
diff --git a/docs/assets/images/device-configs/mesh/Ports.jpeg b/docs/en/assets/images/device-configs/mesh/Ports.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/mesh/Ports.jpeg
rename to docs/en/assets/images/device-configs/mesh/Ports.jpeg
diff --git a/docs/assets/images/device-configs/mesh/Reset.jpeg b/docs/en/assets/images/device-configs/mesh/Reset.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/mesh/Reset.jpeg
rename to docs/en/assets/images/device-configs/mesh/Reset.jpeg
diff --git a/docs/assets/images/device-configs/mesh/SSH.png b/docs/en/assets/images/device-configs/mesh/SSH.png
similarity index 100%
rename from docs/assets/images/device-configs/mesh/SSH.png
rename to docs/en/assets/images/device-configs/mesh/SSH.png
diff --git a/docs/assets/images/device-configs/mesh/Wiring.jpeg b/docs/en/assets/images/device-configs/mesh/Wiring.jpeg
similarity index 100%
rename from docs/assets/images/device-configs/mesh/Wiring.jpeg
rename to docs/en/assets/images/device-configs/mesh/Wiring.jpeg
diff --git a/docs/assets/images/device-configs/mesh/hace_wall_mesh.jpg b/docs/en/assets/images/device-configs/mesh/hace_wall_mesh.jpg
similarity index 100%
rename from docs/assets/images/device-configs/mesh/hace_wall_mesh.jpg
rename to docs/en/assets/images/device-configs/mesh/hace_wall_mesh.jpg
diff --git a/docs/assets/images/device-configs/static-ip/mac1.png b/docs/en/assets/images/device-configs/static-ip/mac1.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/mac1.png
rename to docs/en/assets/images/device-configs/static-ip/mac1.png
diff --git a/docs/assets/images/device-configs/static-ip/mac2.png b/docs/en/assets/images/device-configs/static-ip/mac2.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/mac2.png
rename to docs/en/assets/images/device-configs/static-ip/mac2.png
diff --git a/docs/assets/images/device-configs/static-ip/mac3.png b/docs/en/assets/images/device-configs/static-ip/mac3.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/mac3.png
rename to docs/en/assets/images/device-configs/static-ip/mac3.png
diff --git a/docs/assets/images/device-configs/static-ip/ubuntu1.png b/docs/en/assets/images/device-configs/static-ip/ubuntu1.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/ubuntu1.png
rename to docs/en/assets/images/device-configs/static-ip/ubuntu1.png
diff --git a/docs/assets/images/device-configs/static-ip/ubuntu2.png b/docs/en/assets/images/device-configs/static-ip/ubuntu2.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/ubuntu2.png
rename to docs/en/assets/images/device-configs/static-ip/ubuntu2.png
diff --git a/docs/assets/images/device-configs/static-ip/windows1.png b/docs/en/assets/images/device-configs/static-ip/windows1.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/windows1.png
rename to docs/en/assets/images/device-configs/static-ip/windows1.png
diff --git a/docs/assets/images/device-configs/static-ip/windows2.png b/docs/en/assets/images/device-configs/static-ip/windows2.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/windows2.png
rename to docs/en/assets/images/device-configs/static-ip/windows2.png
diff --git a/docs/assets/images/device-configs/static-ip/windows3.png b/docs/en/assets/images/device-configs/static-ip/windows3.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/windows3.png
rename to docs/en/assets/images/device-configs/static-ip/windows3.png
diff --git a/docs/assets/images/device-configs/static-ip/windows4.png b/docs/en/assets/images/device-configs/static-ip/windows4.png
similarity index 100%
rename from docs/assets/images/device-configs/static-ip/windows4.png
rename to docs/en/assets/images/device-configs/static-ip/windows4.png
diff --git a/docs/assets/images/favicon.ico b/docs/en/assets/images/favicon.ico
similarity index 100%
rename from docs/assets/images/favicon.ico
rename to docs/en/assets/images/favicon.ico
diff --git a/docs/assets/images/installations/airmonitors/am5.jpg b/docs/en/assets/images/installations/airmonitors/am5.jpg
similarity index 100%
rename from docs/assets/images/installations/airmonitors/am5.jpg
rename to docs/en/assets/images/installations/airmonitors/am5.jpg
diff --git a/docs/assets/images/installations/install/image1.jpg b/docs/en/assets/images/installations/install/image1.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image1.jpg
rename to docs/en/assets/images/installations/install/image1.jpg
diff --git a/docs/assets/images/installations/install/image2.jpg b/docs/en/assets/images/installations/install/image2.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image2.jpg
rename to docs/en/assets/images/installations/install/image2.jpg
diff --git a/docs/assets/images/installations/install/image3.jpg b/docs/en/assets/images/installations/install/image3.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image3.jpg
rename to docs/en/assets/images/installations/install/image3.jpg
diff --git a/docs/assets/images/installations/install/image4.jpg b/docs/en/assets/images/installations/install/image4.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image4.jpg
rename to docs/en/assets/images/installations/install/image4.jpg
diff --git a/docs/assets/images/installations/install/image5.jpg b/docs/en/assets/images/installations/install/image5.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image5.jpg
rename to docs/en/assets/images/installations/install/image5.jpg
diff --git a/docs/assets/images/installations/install/image6.jpg b/docs/en/assets/images/installations/install/image6.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image6.jpg
rename to docs/en/assets/images/installations/install/image6.jpg
diff --git a/docs/assets/images/installations/install/image7.jpg b/docs/en/assets/images/installations/install/image7.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image7.jpg
rename to docs/en/assets/images/installations/install/image7.jpg
diff --git a/docs/assets/images/installations/install/image8.jpg b/docs/en/assets/images/installations/install/image8.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image8.jpg
rename to docs/en/assets/images/installations/install/image8.jpg
diff --git a/docs/assets/images/installations/install/image9.jpg b/docs/en/assets/images/installations/install/image9.jpg
similarity index 100%
rename from docs/assets/images/installations/install/image9.jpg
rename to docs/en/assets/images/installations/install/image9.jpg
diff --git a/docs/assets/images/installations/install/nkcdc_roof.png b/docs/en/assets/images/installations/install/nkcdc_roof.png
similarity index 100%
rename from docs/assets/images/installations/install/nkcdc_roof.png
rename to docs/en/assets/images/installations/install/nkcdc_roof.png
diff --git a/docs/assets/images/installations/solar/ap_install.jpg b/docs/en/assets/images/installations/solar/ap_install.jpg
similarity index 100%
rename from docs/assets/images/installations/solar/ap_install.jpg
rename to docs/en/assets/images/installations/solar/ap_install.jpg
diff --git a/docs/assets/images/installations/solar/colobo_ap.jpg b/docs/en/assets/images/installations/solar/colobo_ap.jpg
similarity index 100%
rename from docs/assets/images/installations/solar/colobo_ap.jpg
rename to docs/en/assets/images/installations/solar/colobo_ap.jpg
diff --git a/docs/assets/images/installations/solar/solar_with_info.jpg b/docs/en/assets/images/installations/solar/solar_with_info.jpg
similarity index 100%
rename from docs/assets/images/installations/solar/solar_with_info.jpg
rename to docs/en/assets/images/installations/solar/solar_with_info.jpg
diff --git a/docs/assets/images/pcw_hero.svg b/docs/en/assets/images/pcw_hero.svg
similarity index 100%
rename from docs/assets/images/pcw_hero.svg
rename to docs/en/assets/images/pcw_hero.svg
diff --git a/docs/device-configuration/configure-IoT.md b/docs/en/device-configuration/configure-IoT.md
similarity index 100%
rename from docs/device-configuration/configure-IoT.md
rename to docs/en/device-configuration/configure-IoT.md
diff --git a/docs/device-configuration/configure-ap-mesh.md b/docs/en/device-configuration/configure-ap-mesh.md
similarity index 100%
rename from docs/device-configuration/configure-ap-mesh.md
rename to docs/en/device-configuration/configure-ap-mesh.md
diff --git a/docs/device-configuration/configure-computer.md b/docs/en/device-configuration/configure-computer.md
similarity index 100%
rename from docs/device-configuration/configure-computer.md
rename to docs/en/device-configuration/configure-computer.md
diff --git a/docs/device-configuration/configure-edgerouter-x.md b/docs/en/device-configuration/configure-edgerouter-x.md
similarity index 100%
rename from docs/device-configuration/configure-edgerouter-x.md
rename to docs/en/device-configuration/configure-edgerouter-x.md
diff --git a/docs/device-configuration/troubleshoot-devices.md b/docs/en/device-configuration/troubleshoot-devices.md
similarity index 100%
rename from docs/device-configuration/troubleshoot-devices.md
rename to docs/en/device-configuration/troubleshoot-devices.md
diff --git a/docs/index.md b/docs/en/index.md
similarity index 100%
rename from docs/index.md
rename to docs/en/index.md
diff --git a/docs/installations/buildingassessment.md b/docs/en/installations/buildingassessment.md
similarity index 100%
rename from docs/installations/buildingassessment.md
rename to docs/en/installations/buildingassessment.md
diff --git a/docs/installations/hardware.md b/docs/en/installations/hardware.md
similarity index 100%
rename from docs/installations/hardware.md
rename to docs/en/installations/hardware.md
diff --git a/docs/installations/installations.md b/docs/en/installations/installations.md
similarity index 100%
rename from docs/installations/installations.md
rename to docs/en/installations/installations.md
diff --git a/docs/installations/solar.md b/docs/en/installations/solar.md
similarity index 100%
rename from docs/installations/solar.md
rename to docs/en/installations/solar.md
diff --git a/docs/resources.md b/docs/en/resources.md
similarity index 100%
rename from docs/resources.md
rename to docs/en/resources.md
diff --git a/docs/es/assets/configs/erx-config.tar.gz b/docs/es/assets/configs/erx-config.tar.gz
new file mode 100644
index 0000000..0131589
Binary files /dev/null and b/docs/es/assets/configs/erx-config.tar.gz differ
diff --git a/docs/es/assets/images/erx/eth0.jpeg b/docs/es/assets/images/erx/eth0.jpeg
new file mode 100644
index 0000000..cf8a509
Binary files /dev/null and b/docs/es/assets/images/erx/eth0.jpeg differ
diff --git a/docs/es/assets/images/erx/hardware.jpg b/docs/es/assets/images/erx/hardware.jpg
new file mode 100644
index 0000000..ddda00d
Binary files /dev/null and b/docs/es/assets/images/erx/hardware.jpg differ
diff --git a/docs/es/assets/images/erx/login.jpeg b/docs/es/assets/images/erx/login.jpeg
new file mode 100644
index 0000000..89ca169
Binary files /dev/null and b/docs/es/assets/images/erx/login.jpeg differ
diff --git a/docs/es/assets/images/erx/system.jpeg b/docs/es/assets/images/erx/system.jpeg
new file mode 100644
index 0000000..0c450fb
Binary files /dev/null and b/docs/es/assets/images/erx/system.jpeg differ
diff --git a/docs/es/assets/images/erx/wiring.jpeg b/docs/es/assets/images/erx/wiring.jpeg
new file mode 100644
index 0000000..44732cd
Binary files /dev/null and b/docs/es/assets/images/erx/wiring.jpeg differ
diff --git a/docs/es/assets/images/erx/wizard.jpeg b/docs/es/assets/images/erx/wizard.jpeg
new file mode 100644
index 0000000..2320c6e
Binary files /dev/null and b/docs/es/assets/images/erx/wizard.jpeg differ
diff --git a/docs/es/assets/images/install/image1.jpg b/docs/es/assets/images/install/image1.jpg
new file mode 100644
index 0000000..66fb427
Binary files /dev/null and b/docs/es/assets/images/install/image1.jpg differ
diff --git a/docs/es/assets/images/install/image2.jpg b/docs/es/assets/images/install/image2.jpg
new file mode 100644
index 0000000..dd002c5
Binary files /dev/null and b/docs/es/assets/images/install/image2.jpg differ
diff --git a/docs/es/assets/images/install/image3.jpg b/docs/es/assets/images/install/image3.jpg
new file mode 100644
index 0000000..28fd585
Binary files /dev/null and b/docs/es/assets/images/install/image3.jpg differ
diff --git a/docs/es/assets/images/install/image4.jpg b/docs/es/assets/images/install/image4.jpg
new file mode 100644
index 0000000..7e1e50f
Binary files /dev/null and b/docs/es/assets/images/install/image4.jpg differ
diff --git a/docs/es/assets/images/install/image5.jpg b/docs/es/assets/images/install/image5.jpg
new file mode 100644
index 0000000..aa7ee35
Binary files /dev/null and b/docs/es/assets/images/install/image5.jpg differ
diff --git a/docs/es/assets/images/install/image6.jpg b/docs/es/assets/images/install/image6.jpg
new file mode 100644
index 0000000..dc75f03
Binary files /dev/null and b/docs/es/assets/images/install/image6.jpg differ
diff --git a/docs/es/assets/images/install/image7.jpg b/docs/es/assets/images/install/image7.jpg
new file mode 100644
index 0000000..153a1a2
Binary files /dev/null and b/docs/es/assets/images/install/image7.jpg differ
diff --git a/docs/es/assets/images/install/image8.jpg b/docs/es/assets/images/install/image8.jpg
new file mode 100644
index 0000000..6572757
Binary files /dev/null and b/docs/es/assets/images/install/image8.jpg differ
diff --git a/docs/es/assets/images/install/image9.jpg b/docs/es/assets/images/install/image9.jpg
new file mode 100644
index 0000000..e7f10ca
Binary files /dev/null and b/docs/es/assets/images/install/image9.jpg differ
diff --git a/docs/es/assets/images/mesh/Materials.jpeg b/docs/es/assets/images/mesh/Materials.jpeg
new file mode 100644
index 0000000..679cb7a
Binary files /dev/null and b/docs/es/assets/images/mesh/Materials.jpeg differ
diff --git a/docs/es/assets/images/mesh/Ports.jpeg b/docs/es/assets/images/mesh/Ports.jpeg
new file mode 100644
index 0000000..f8fcf3e
Binary files /dev/null and b/docs/es/assets/images/mesh/Ports.jpeg differ
diff --git a/docs/es/assets/images/mesh/Reset.jpeg b/docs/es/assets/images/mesh/Reset.jpeg
new file mode 100644
index 0000000..da042bb
Binary files /dev/null and b/docs/es/assets/images/mesh/Reset.jpeg differ
diff --git a/docs/es/assets/images/mesh/SSH.png b/docs/es/assets/images/mesh/SSH.png
new file mode 100644
index 0000000..804f464
Binary files /dev/null and b/docs/es/assets/images/mesh/SSH.png differ
diff --git a/docs/es/assets/images/mesh/Wiring.jpeg b/docs/es/assets/images/mesh/Wiring.jpeg
new file mode 100644
index 0000000..10df1a4
Binary files /dev/null and b/docs/es/assets/images/mesh/Wiring.jpeg differ
diff --git a/docs/es/assets/images/static-ip/Network_1.png b/docs/es/assets/images/static-ip/Network_1.png
new file mode 100644
index 0000000..c6992ea
Binary files /dev/null and b/docs/es/assets/images/static-ip/Network_1.png differ
diff --git a/docs/es/assets/images/static-ip/Network_2.png b/docs/es/assets/images/static-ip/Network_2.png
new file mode 100644
index 0000000..f8c36e0
Binary files /dev/null and b/docs/es/assets/images/static-ip/Network_2.png differ
diff --git a/docs/es/assets/images/static-ip/Network_3.png b/docs/es/assets/images/static-ip/Network_3.png
new file mode 100644
index 0000000..73da786
Binary files /dev/null and b/docs/es/assets/images/static-ip/Network_3.png differ
diff --git a/docs/es/device-configuration/configure-ap-mesh.md b/docs/es/device-configuration/configure-ap-mesh.md
new file mode 100644
index 0000000..1f68f40
--- /dev/null
+++ b/docs/es/device-configuration/configure-ap-mesh.md
@@ -0,0 +1,85 @@
+---
+Title: Configurar AP Mesh
+
+---
+# Configurar AP Mesh
+
+Esta guía lo guiará a través de la configuración de una malla de punto de acceso Ubiquiti para que pueda ser adoptada por la red PCW.
+
+## Hardware requerido
+
+* Unidad de malla AP: [Ubiquiti Mesh Dual-Band Access Point](https://store.ui.com/products/unifi-ac-mesh-ap) (antena Ubiquiti blanca con orejas de conejo)
+* Inyector PoE
+* Cable Ethernet
+* Ordenador
+* Adaptador Ethernet USB (si el ordenador no tiene puerto ethernet)
+* Cable de regleta/alargador
+* Paperclip
+
+
+
+## Pasos de instalación
+
+### Establecer IP estática en el equipo
+
+Instrucciones para Mac (otros sistemas operativos por determinar)
+
+1. Abra `System Preferences` > `Network`.
+2. Seleccione la conexión Ethernet que tiene con la unidad de malla AP. 
+3. Cambie el valor de `Configure IPv4` a `Manually`.
+ 
+4. Establezca la dirección IP en `192.168.1.29` (aunque la mayoría de los valores deberían funcionar aquí).
+5. Establezca la máscara de subred a `255.255.255.0`
+ 
+6. Haga clic en `Apply`
+
+### Conecte la unidad de malla AP.
+
+1. Conecte el inyector PoE a una toma de corriente o a una regleta.
+2. Conecte el puerto `POE` del inyector a la unidad de malla AP con un cable ethernet.
+3. Conecte el puerto `LAN` del inyector al ordenador, utilizando el adaptador Ethernet USB si no dispone de un puerto Ethernet.
+ 
+ 
+
+### Restablecimiento de fábrica de la unidad de malla AP.
+
+Las unidades de malla AP han tenido un comportamiento inesperado incluso fuera de la caja, por lo que se recomienda reiniciarlas de fábrica antes de continuar.
+
+1. Con el clip, pulse el botón de restablecimiento situado en la parte inferior de la unidad de malla AP hasta que haga clic.
+2. Mantenga pulsado durante 15 segundos.
+3. Una vez que la luz de estado de la unidad de malla AP ha destellado y se ha apagado, el dispositivo se ha restablecido.
+
+### Conecte a la unidad de malla AP.
+
+1. Abra un símbolo del sistema
+2. Si se ha conectado previamente a una unidad de malla de AP, tendrá que editar el archivo de `known_hosts` , o obtendrá un error de`Host key verification failed` error.
+ 1. Abra `~/.ssh/known_hosts` con `vim`, `nano`, o el editor de texto que desee.
+ 2. Elimine la línea que comienza por `192.168.1.20` (tendrá un aspecto similar a `192.168.1.20 ssh-rsa AAAAB3NzaC1yc2E...`), y guarde el archivo.
+3. Ejecute el comando `ssh ubnt@192.168.1.20`
+4. Puede ver la alerta:
+
+ The authenticity of host '192.168.1.20 (192.168.1.20)' can't be established.
+ RSA key fingerprint is SHA256:oUG6ABM3uor6lfBpJFcnHWyhhPnCrIx2Jf0U1+UAg4g.
+ Are you sure you want to continue connecting (yes/no/[fingerprint])?
+
+ Presione sí para continuar.
+5. Cuando se le solicite la contraseña, escriba `ubnt`.
+6. Ahora debe estar conectado a la unidad de malla AP.
+ 
+
+### Adopte AP Mesh Unit
+
+Necesitará acceso al portal Philly Community Wireless HostiFi para completar este paso.
+
+1. De su `ssh` , ejecute el comando `set-inform http://unifi.phillycommunitywireless.org:8080/inform`.
+ * Esto alertará al controlador HostiFi de que la unidad de malla AP desea ser adoptada.
+2. Abra el portal HostiFi en el explorador y desplácese a la lista de dispositivos.
+3. La unidad de malla AP debe aparecer en la lista de dispositivos en espera de adopción.
+4. Pulse `Adopt` para adoptar la unidad de malla AP.
+
+## Solución de problemas
+
+1. Computadora no reconoce la unidad de malla AP en la configuración de red o el comando`ssh` falla.
+ * La unidad de malla AP puede tardar unos minutos en iniciarse después de enchufarla, por lo que espere hasta que la luz de estado se ilumine en blanco y vuelva a intentarlo.
+2. ¿Qué significa este patrón de luces de estado?
+ * [LED Color Patterns for UniFi Devices](https://help.ui.com/hc/en-us/articles/204910134-UniFi-LED-Color-Patterns-for-UniFi-Devices)
diff --git a/docs/es/device-configuration/configure-edgerouter-x.md b/docs/es/device-configuration/configure-edgerouter-x.md
new file mode 100644
index 0000000..8a83aba
--- /dev/null
+++ b/docs/es/device-configuration/configure-edgerouter-x.md
@@ -0,0 +1,44 @@
+---
+Title: Configurar ERX Router
+
+---
+# Configurar ERX Router
+
+Esta guía le guiará a través de la configuración de un Ubiquiti EdgeRouter X.
+
+## Hardware requerido
+
+* Router e cable de alimentación
+* Tranque cable
+* Computador
+* Adaptador Ethernet USB (si la computadora no tiene puerto Ethernet)
+
+
+
+## Pasos de instalación
+
+### Establecer IP estática en el equipo
+
+Ver [Configurar una IP estática](configure-computer.md)
+
+### Conecte el ERX
+
+1. Conecte el ERX a su cable de alimentación y conecte el cable de alimentación a una toma de corriente.
+2. Conecte el puerto `eth0` del ERX al ordenador con un cable Ethernet, utilizando el adaptador Ethernet USB si no dispone de un puerto Ethernet.
+
+
+
+
+### Configurar ERX
+
+1. Descargue el [ERX config file](../assets/configs/erx-config.tar.gz)
+2. Navegue al portal en [https://192.168.1.1](https://192.168.1.1) en su navegador.
+3. Regístrese sesión en el portal con nombre de usuario `ubnt`, contraseña `ubnt`.
+ 
+4. En el `Use wizard?` , presione no.
+ 
+5. Presione la pestaña `System` en la parte inferior de la página.
+6. En la sección `Restore Config` , presione `Upload a file` y seleccione el archivo de configuración de ERX que descargó.
+ 
+7. El ERX se reiniciará utilizando la nueva configuración.
+8. ¡Eso es todo! Si necesita realizar más configuración, puede volver a iniciar sesión en el portal utilizando el nombre de usuario `pcwadmin`, y una contraseña que puede obtener de los mantenedores del proyecto.
diff --git a/docs/es/index.md b/docs/es/index.md
new file mode 100644
index 0000000..9e724c9
--- /dev/null
+++ b/docs/es/index.md
@@ -0,0 +1,32 @@
+---
+
+---
+# **Documentación técnica**
+
+## El proyecto PCW
+**Philly Community Wireless** (PCW) es un proyecto para desarrollar redes de malla de propiedad comunitaria en North Philly. Somos un grupo de trabajo de organizadores, tecnólogos, académicos, maestros de escuelas públicas y personal del Ayuntamiento de Filadelfia. Durante una época de distanciamiento social y enseñanza en línea, aproximadamente la mitad de los estudiantes de las escuelas públicas de la ciudad carecen de conexión wifi en casa. En ciertos vecindarios, aún más residentes carecen de conexión a Internet. Buscamos abordar la brecha digital de **la ciudad con tecnologías de red de malla operadas y propiedad de la comunidad.**
+
+Las redes de malla permiten compartir una única conexión a Internet entre un grupo más amplio de usuarios con muy poco coste o infraestructura necesaria. Con la ayuda de **PhillyWisper**, un proveedor de servicios de Internet inalámbrico, pro-neutral, estamos trabajando para instalar dos sitios piloto en **Kensington y Fairhill**. A partir de ahí, planearemos talleres de diseño participativo y capacitación técnica para la comunidad que los capacitará para mantener y hacer crecer esta conexión de red gratuita.
+
+## Los documentos de PCW
+Esta página de documentos proporciona información técnica en desarrollo y guías para replicar la configuración y distribución del proyecto de routers y antenas para construir una red de malla.
+
+Si está buscando una **descripción no técnica del proyecto** o está interesado en suscribirse a la cobertura de PCW, visite nuestra [homepage](https://phillycommunitywireless.org).
+
+### [Recursos Académicos](resources.md)
+Esta página describe recursos secundarios sobre los problemas del acceso de banda ancha y la inequidad digital en ciudades urbanas como Philadelphia.
+
+### [Hardware requerido](installations/hardware.md)
+Visión general del hardware necesario para la infraestructura del proyecto PCW.
+
+### [Instalaciones de antenas](installations/installations.md)
+Esta guía describe el proceso de instalación de antenas en la azotea como base para la red de malla inalámbrica y el wifi público gratuito.
+
+### [Configurar enrutadores ERX](device-configuration/configure-edgerouter-x.md)
+La página Configurar enrutadores ERX explica la fase de configuración de los hosts de enrutador de las instalaciones en tejados.
+
+### IP estática
+Esta guía describe cómo configurar el ordenador con una IP estática, de modo que pueda configurar el router y el kit de malla.
+
+### [Configurar AP-Mesh](device-configuration/configure-ap-mesh.md)
+Esta guía describe la configuración de un kit de malla que se puede instalar en cualquier hogar muy cerca (medio bloque de vecindario) de un host de antena en la azotea.
diff --git a/docs/es/installations/hardware.md b/docs/es/installations/hardware.md
new file mode 100644
index 0000000..e94504c
--- /dev/null
+++ b/docs/es/installations/hardware.md
@@ -0,0 +1,32 @@
+---
+Title: Hardware
+
+---
+# Hardware requerido
+
+## Kit de malla
+
+* [Ubiquiti Mesh Dual-Band Access Point](https://store.ui.com/products/unifi-ac-mesh-ap)
+
+## Instalación de antena en la azotea
+
+* [airMAX LiteBeam AC 5 GHz Bridge](https://store.ui.com/collections/wireless/products/litebeam-5ac-gen2)
+* [Ubiquiti EdgeRouter ERX](https://dl.ui.com/qsg/ER-X/ER-X_EN.html)
+* [Ubiquiti Mesh Dual-Band Access Point](https://store.ui.com/products/unifi-ac-mesh-ap)
+
+## Antenas adicionales
+
+* [Ubiquiti Directional Dual-Band Antenna](https://store.ui.com/collections/operator-airmax-and-ltu-antennas/products/directional-dual-band-antenna-for-uap-ac-m)
+
+### Routers alternativos
+
+* [MikroTik hEX PoE](https://www.doubleradius.com/mikrotik-hex-poe-rb960pgs)
+
+## Accesorios
+
+* [Ethernet Cables 3'](https://www.newegg.com/Product/ComboDealDetails?ItemList=Combo.4307102&quicklink=true)
+* [6-outlet power strip](https://www.newegg.com/apc-pe63-nema-5-15r/p/1B4-0052-000C2?Description=power%20strip&cm_re=power_strip-_-1B4-0052-000C2-_-Product&quicklink=true)
+* [Extension cords](https://www.newegg.com/black-monoprice-6-00-ft-others/p/0N6-01B8-002D6)
+* [PoE Injector/Splitter](https://www.newegg.com/p/2WG-00DK-00004)
+* [Ethernet to Ethernet adapter](https://www.newegg.com/p/0Y3-02J6-00001)
+* [USB Type C to Ethernet adapter](https://www.ebay.com/itm/132225990432?epid=910384900&hash=item1ec9487f20:g:FhgAAOSwqiVdyN)
diff --git a/docs/es/installations/installations.md b/docs/es/installations/installations.md
new file mode 100644
index 0000000..515e46d
--- /dev/null
+++ b/docs/es/installations/installations.md
@@ -0,0 +1,78 @@
+---
+Title: Instalación de antenas
+
+---
+# Instalación de antenas
+
+Philly Community Wireless se ha asociado con PhillyWisper para instalar antenas para la red wifi gratuita en los tejados del barrio de Norris Square Park. PhillyWisper es un proveedor de servicios de Internet inalámbrico (WISP), lo que significa que nuestro proyecto ofrece Internet a nuestros clientes a través de la tecnología de radio.
+
+## Proceso de instalación en la azotea
+
+La mayoría de las instalaciones se realizaron en el siguiente orden:
+
+1. Examine el edificio y la azotea para evaluar la línea de visión (LOV) de la torre de origen de la ubicación alta para la señal de banda ancha.
+2. Instale la antena en la azotea y conecte el cable al edificio.
+3. Configure el router wifi y los kits de malla (para obtener más información, consulte nuestra guía [Configurar AP-Mesh](../device-configuration/configure-ap-mesh.md) y nuestra guía [Configurar enrutadores ERX](../device-configuration/configure-edgerouter-x.md)).
+4. Es posible que instale una antena montada en la pared para propagar la señal por la calle.
+
+## Duración de las instalaciones de antenas
+
+Normalmente, las instalaciones tardan entre dos y cuatro horas en completarse, pero en algunos casos pueden tardar más. El proceso de instalación completo, desde una antena en el techo hasta un kit de malla montado en la pared, puede implicar 2-3 visitas, cada una de las cuales implica una o dos horas de trabajo.
+
+# Hardware para la instalación
+
+Las instalaciones en la azotea constan de una antena en la azotea, un inyector de alimentación a través de Ethernet, un router y un punto de acceso de malla. Philly Community Wireless y PhillyWisper utilizan principalmente radios y equipos de red Ubiquiti. Como cada techo es diferente, la instalación se personaliza para cada ubicación para garantizar la colocación más segura de acuerdo con los estándares del sector.
+
+En general, instalamos una antena Ubiquiti LiteBeam en el techo de la casa, que recibe la señal de una torre PhillyWisper. La antena se conecta al hogar mediante un cable Ethernet. Actualmente, esta parte de la instalación debe ser completada por un técnico de PhillyWisper. Para fines de instalación, esto significa que los técnicos de PhillyWisper tendrán que montar una antena de radio pequeña (aproximadamente 14 x 11 x 11 pulgadas) a la altura del techo y apuntar con precisión a la torre más cercana.
+
+PhillyWisper se esfuerza al máximo por impactar los edificios durante la instalación. Utilizan técnicas no invasivas al montar la radio (consulte las imágenes adjuntas de las distintas técnicas de montaje que aparecen a continuación). Nunca penetran en el sistema de techado mismo y ellos intentan y utilizan estructuras preexistentes (chimeneas, tubos de ventilación, etc) cuando es posible.
+
+Si las estructuras preexistentes no son una opción, utilizarán un soporte de techo no penetrante, que se pesa correctamente y descansa sobre una alfombrilla de goma en la parte superior de su techo. A continuación, aseguran un cable de red estabilizado a los rayos UV para exteriores desde la radio del techo, hacia abajo a lo largo del exterior del edificio y el interior donde se ubicará el router WiFi.
+
+Tanto Philly Community Wireless y PhillyWisper como la de la comunidad Philly garantizan que el recorrido del cable sea lo más discreto posible y garantizan que el cable tenga mucha tensión para que no se solapa con el viento. Si hay alguna penetración preexistente que entra en el edificio de ISP anteriores, utilizarán eso si es posible y calafatearás cuando termine.
+
+## Ejemplos de instalación
+
+### Soportes de techo no penetrantes
+
+Utilizamos soportes de techo no penetrantes (NPRM). Una alfombra de goma gruesa se coloca debajo del NPRM para proteger el techo. Los bloques de cemento se utilizan como lastre para asegurar el NPRM:
+
+
+
+
+### Antenas montadas en la pared
+
+La siguiente imagen muestra dos mástiles montados en la pared con radios, junto con un interruptor exterior y una caja de conexiones.
+
+El mástil de la izquierda tiene una radio Ubiquiti AF-24 que funciona a 24 GHz y proporciona una conexión de retorno de 1,4 Gbps al centro de datos.
+
+
+
+
+
+
+El mástil de la derecha tiene radios PTMP con antenas de bocina simétricas. Las radios proporcionan servicio a clientes individuales.
+
+El dispositivo blanco cuadrado entre y debajo de los mástiles es un Ubiquiti EP-S16, un conmutador de red para exteriores. Se suministra alimentación de 54 V CC al EP-S16, que a su vez suministra alimentación a las radios mediante POE (alimentación de Ethernet).
+
+# Instalación de kit de malla para hosts de antena en la azotea
+
+Los anfitriones de las instalaciones en la azotea también albergará un router en la casa cerca de la ventana al frente de la casa. En algunos casos podemos instalar una antena montada en la pared en el exterior de la casa para propagar la señal de banda ancha a través del vecindario.
+
+Proporcionamos un kit con un inyector PoE y un AP de malla de orejas de conejo. Philly Community Wireless puede instalar el kit, o el residente puede instalar las orejas de conejo en cualquier lugar dentro de su casa, siempre y cuando otros puntos de acceso de malla estén dentro del alcance de radio (estamos planeando sugerir la entrada de la casa o el porche -- los puntos de acceso son impermeables).
+
+## Descripción general del kit de malla
+
+El cable Ethernet pasa a través de un inyector de alimentación a través de Ethernet (PoE), que añade alimentación a la señal que transporta el cable Ethernet y permite que los dispositivos de bajada se alimenten únicamente a través de Ethernet.
+
+
+
+El cable Ethernet alimentado está conectado a un Ubiquiti EdgeRouter-X (o posiblemente a otro router en el futuro) configurado para admitir redes de malla. El router gestiona el tráfico de cada uno de los puntos de acceso (AP) con los que está conectado en malla.
+
+
+
+Por último, un Ubiquiti Mesh AP (“orejas de conejito” porque miren a ellos!) está conectado al router y permite que los dispositivos de su rango de señal de radio se conecten a la red. Las orejas de conejito deben instalarse en una ubicación que sea radiovisible para los puntos de acceso de malla en las instalaciones domésticas a su alcance.
+
+
+
+Para obtener más información sobre el kit de malla, consulte nuestra guía [Configurar AP-Mesh](../device-configuration/configure-ap-mesh.md)
diff --git a/docs/es/resources.md b/docs/es/resources.md
new file mode 100644
index 0000000..1fae1bd
--- /dev/null
+++ b/docs/es/resources.md
@@ -0,0 +1,71 @@
+---
+Title: Recursos Académicos
+
+---
+# Recursos Académicos
+
+## Historia de la tecnología comunitaria en Philadelphia
+
+Breitbart, Joshua, Naveen Lakshmipathy, and Sascha D. Meinrath. “[The Philadelphia Story: Learning from a Municipal Wireless Pioneer](https://technical.ly/wp-content/uploads/2017/03/wireless-philadelphia-report-breitbart-et-al.pdf).” Washington DC: New America Foundation, December 2007.
+
+Dunbar-Hester, Christina. _Low Power to the People: Pirates, Protest, and Politics in FM Radio Activism._ MIT Press, 2014.
+
+
+
+## Currículo
+
+[Teaching Community Technology Handbook](https://detroitcommunitytech.org/teachcommtech) \[pdf\], Detroit Community Technology Project
+
+> designed using a "popular education method grounded in the history of Civil Rights-era Citizenship Schools and Paulo Freire’s _Pedagogy of the Oppressed._ . . . \[a\] people-guided approach to bring tech education to communities that have been harmed and oppressed by technology."
+
+[Neighborhood Network Construction Kit: Do-it-ourselves Guide to Community Networks](https://communitytechnology.github.io/docs/cck/index.html)
+
+> originally released as [Commotion Construction Kit](https://commotionwireless.net/docs/cck/), this tutorial was co-designed by New America's Open Technology Institute, The Work Department, Allied Media Projects, and the Detroit Community Technology Project
+
+[Portable Network Kit Setup Guide](http://communitytechny.org/stepping-through-the-portal-ctny-the-pandemic/), Community Tech NY
+
+[Wireless Networking in the Developing World](http://wndw.net). 3rd Edition. Copenhagen, 2013.
+
+[The Community Network Manual: How to Build the Internet Yourself](https://bibliotecadigital.fgv.br/dspace/handle/10438/25696)
+
+[Meshnet DWeb Camp 2019](https://dweb-camp-2019.github.io/meshnet/)
+
+
+
+## Modelos de política y organización
+
+[Detroit Digital Stewards Program](https://www.alliedmedia.org/dctp/digitalstewards)
+
+National Urban League's [Lewis Latimer Plan for Digital Equity and Inclusion](https://nul.org/news/national-urban-league-unveils-new-framework-bridge-digital-divide)
+
+Nicol Turner Lee (Brookings) proposing a “[Tech New Deal](https://www.brookings.edu/blog/techtank/2021/01/12/why-america-needs-a-tech-new-deal-to-build-back-better/)"
+
+
+
+## Lecturas adicionales
+
+Byrum, Greta. “[Building the People’s Internet](https://urbanomnibus.net/2019/10/building-the-peoples-internet/).” _Urban Omnibus_, October 2, 2019.
+
+Park, Claire. “[Community Broadband: The Fast, Affordable Internet Option That’s Flying Under the Radar](https://www.newamerica.org/oti/reports/community-broadband/).” Washington D.C.: New America Foundation, May 19, 2020.
+
+Rey-Moreno, Carlos. “[Supporting the Creation and Scalability of Affordable Access Solutions: Understanding Community Networks in Africa](https://www.internetsociety.org/resources/doc/2017/supporting-the-creation-and-scalability-of-affordable-access-solutions-understanding-community-networks-in-africa/).” Internet Society, May 2017.
+
+Sanchez, Alvaro. “[Toward Digital Inclusion: Broadband Access in the Third Federal Reserve District](https://www.philadelphiafed.org/-/media/egmp/resources/reports/toward-digital-inclusion-broadband-access-in-the-third-federal-reserve-district.pdf).” Cascade Focus. Federal Reserve Bank of Philadelphia, March 2020.
+
+Shaffer, Gwen. “[Common Sense: An Examination of Three Los Angeles Community WiFi Projects That Privileged Public Funding Over Commons-Based Infrastructure Management](https://doi.org/10.2139/ssrn.2941920).” Rochester, NY: Social Science Research Network, March 28, 2017.
+
+Solomon, Rory. [_Meshiness: Mesh Networks and the Politics of Connectivity_](http://search.proquest.com/pqdtglobal/docview/2408892960/abstract/479AB38D8B044610PQ/1)_._ Ph.D., New York University, 2020.
+
+Thakur, Dhanaraj, and Teddy Woodhouse. “[Meaningful Connectivity: A New Standard to Raise the Bar for Internet Access](https://a4ai.org/meaningful-connectivity/).” Alliance for Affordable Internet, 2020.
+
+
+
+## Prensa local
+
+Graham, Kristen A. “[Philly Schools Chief Says Internet Providers Refuse to Open Their Networks so Students Can Access Education](https://www.inquirer.com/education/internet-access-philadelphia-coronavirus-comcast-budget-council-hite-school-district-20200520.html).” _The Philadelphia Inquirer,_ May 20, 2020.
+
+Gross, Paige. “[A Digital Literacy Alliance Grant Is Creating Roles to Help Residents Access and Use Tech during the Pandemic](https://technical.ly/philly/2020/05/29/digital-literacy-alliance-grant-digital-navigator-help-residents-access-use-tech-during-pandemic/).” _Technical.Ly Philly,_ May 29, 2020, sec. Civic.
+
+Hetrick, Christian, and Dylan Purcell. “[Thousands of Philly Students Are Stuck at Home with No Computer or Internet after Coronavirus Closed Schools](https://www.inquirer.com/education/coronavirus-students-digital-divide-philadelphia-comcast-20200403.html).” _The Philadelphia Inquirer,_ April 3, 2020.
+
+Noor, Jaisal. “[Baltimore City Students Demand Comcast Increase Internet Speed During Pandemic](https://baltimorebeat.com/2020/05/26/baltimore-city-students-demand-comcast-increase-internet-speed-during-pandemic/).” _Baltimore Beat_, May 26, 2020.
diff --git a/mkdocs.yml b/mkdocs.yml
index c5affd0..a13c769 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -1,5 +1,5 @@
site_name: Philly Community Wireless Docs
-site_url: https://docs.phillycommunitywireless.org/en/latest/
+site_url: https://docs.phillycommunitywireless.org
theme:
name: material
@@ -8,20 +8,9 @@ theme:
favicon: assets/icons/favicon/favicon.ico
custom_dir: overrides
features:
- # Enable this if searching ever becomes slow
- # - navigation.instant
- navigation.tracking
- navigation.sections
palette:
- # Dark mode
- - scheme: slate
- media: "(prefers-color-scheme: dark)"
- primary: black
- accent: deep purple
- toggle:
- icon: material/weather-sunny
- name: Switch to light mode
- # Light mode
- scheme: default
media: "(prefers-color-scheme: light)"
primary: indigo
@@ -29,20 +18,60 @@ theme:
toggle:
icon: material/weather-night
name: Switch to dark mode
+ - scheme: slate
+ media: "(prefers-color-scheme: dark)"
+ primary: black
+ accent: deep purple
+ toggle:
+ icon: material/weather-sunny
+ name: Switch to light mode
-# extra:
-# homepage: https://phillycommunitywireless.org
-# alternate:
-# - name: English
-# link: /en/latest
-# lang: en
+plugins:
+ - search
+ - i18n:
+ docs_structure: folder
+ fallback_to_default: true
+ reconfigure_material: true
+ reconfigure_search: true
+ languages:
+ - locale: en
+ default: true
+ name: English
+ build: true
+ - locale: es
+ name: Español
+ build: true
+ nav_translations:
+ Home: Inicio
+ Installations: Instalaciones
+ Installation Overview: Descripción general
+ Building Assessment: Evaluación del edificio
+ Hardware: Hardware
+ Solar Mesh Nodes: Nodos solares
+ Device Configuration: Configuración de dispositivos
+ Set a Static IP Address: Configurar una IP estática
+ Configure EdgeRouter X: Configurar EdgeRouter X
+ Configure Unifi APs: Configurar APs Unifi
+ Configure IoT Devices: Configurar dispositivos IoT
+ Troubleshoot Devices: Solución de problemas
+ Resources: Recursos
-# - name: Español
-# link: /es/latest
-# lang: es
+nav:
+ - Home: index.md
+ - Installations:
+ - Installation Overview: installations/installations.md
+ - Building Assessment: installations/buildingassessment.md
+ - Hardware: installations/hardware.md
+ - Solar Mesh Nodes: installations/solar.md
+ - Device Configuration:
+ - Set a Static IP Address: device-configuration/configure-computer.md
+ - Configure EdgeRouter X: device-configuration/configure-edgerouter-x.md
+ - Configure Unifi APs: device-configuration/configure-ap-mesh.md
+ - Configure IoT Devices: device-configuration/configure-IoT.md
+ - Troubleshoot Devices: device-configuration/troubleshoot-devices.md
+ - Resources: resources.md
markdown_extensions:
- - meta
- tables
- admonition
- pymdownx.details
diff --git a/overrides/main.html b/overrides/main.html
index 9684904..4a3f0eb 100644
--- a/overrides/main.html
+++ b/overrides/main.html
@@ -1,6 +1,7 @@
{% extends "base.html" %}
{% block site_meta %}
+
diff --git a/requirements.txt b/requirements.txt
index f914d7d..6081fda 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,22 +1,3 @@
-argh==0.26.2
-click==8.0.1
-ghp-import==2.0.1
-importlib-metadata==4.6.1
-Jinja2==3.1.6
-Markdown==3.6
-MarkupSafe==2.0.1
-mergedeep==1.3.4
-mkdocs==1.6.1
-mkdocs-material==7.1.10
-mkdocs-material-extensions==1.0.1
-packaging==21.0
-Pygments==2.15.0
-pymdown-extensions==10.16.1
-pyparsing==2.4.7
-python-dateutil==2.8.2
-PyYAML==6.0.1
-pyyaml-env-tag==0.1
-six==1.16.0
-typing-extensions==3.10.0.0
-watchdog==2.1.3
-zipp==3.19.1
+mkdocs>=1.5
+mkdocs-material>=9.5,<10
+mkdocs-static-i18n==1.3.0