¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Talleres en UPAYAKUWASI - Cayambe, Ecuadro
Contenido
- Introducción de los espacios (upayakuwasi-un/loquer)
- Presentación de participantes y expectativas
- Uso y adaptación a recursos naturales (Caminata por UPAYAKUWASI)
- Introducción a electrónica, sensores y actuadores
- Control de Entradas y Salidas
- ESP8266
- Arduino
- Sensor humedad
- Sensor temperatura y humedad
- Sensor luz
- Actuador relevo
- Práctica
Taller Mujeres
http://piratepad.net/unloquerupayakuwasi
- Taller en 4 capas
- Riego, Automatización Válvulas, Sensores, Plataforma
- Primera capa: (Analógico) Ellas dibujan sus huertos, ¿de donde sacan el agua?, ¿cuáles válvulas prenden?, ¿A qué horas?, presentan al resto
- Segunda capa: (Automatización abrir cerrar válvulas) Se programan tiempos para abrir válvulas
- Tercer capa: (¿qué pasa si llueve?, necesito saber que ya no tengo que regar) Cuáles son los sensores, ¿cómo se programan?
- Cuarta capa: (Afinación y plataforma de control)
¿Qué es lo que se llevan? → Relevo con ESP8266
Cada etapa tiene que tener su presupuesto.
Conexión de wifi para raspberrypi vía esp8266
Por medio del puerto serie
http://pwiatrowski.com/technology/raspberry-pi-zero-esp8266-internet/
https://github.com/jeelabs/esp-link
Por medio de SPI
https://oshlab.com/esp8266-raspberry-pi-gpio-wifi/ Proyecto original https://hackaday.io/project/8678/instructions
Para instalar el driver en archlinux-arm nos basamos en el paquete https://aur.archlinux.org/packages/esp8089-git/ pero se modifica el PKGBUILD como se muestra a continuación:
# Maintainer: Swift Geek # TODO: DKMS _gitname=esp8089 pkgname=$_gitname-git pkgver=2016.08.07 pkgrel=1 pkgdesc="Linux kernel module driver for the ESP8089 WiFi chip" arch=('i686' 'x86_64' 'armv7h' 'armv6h') url="https://github.com/al177/$_gitname" license=('GPL') install=$_gitname.install depends=('linux') makedepends=('git' 'linux-headers') options=(!strip) source=("git+${url}.git") md5sums=('SKIP') pkgver() { cd "$srcdir/$_gitname" git log -1 --format="%cd" --date=short | sed 's|-|.|g' } prepare() { sed -i s/RX_FLAG_HT/RX_ENC_HT/ esp8089/esp_sip.c sed -i s/RX_FLAG_SHORT_GI/RX_ENC_FLAG_SHORT_GI/ esp8089/esp_sip.c } build() { cd "$srcdir/$_gitname/" make modules M=../$_gitname CONFIG_ESP8089=m gzip -f esp8089.ko } package() { cd "$srcdir/$_gitname/" install -Dm644 esp8089.ko.gz "$pkgdir/usr/lib/modules/$(uname -r)/kernel/drivers/net/wireless/esp8089.ko.gz" #depmod -a $(uname -r) }
una vez instalado el paquete se instala el módulo con sudo modprobe esp8089
Para configurar la red inalámbrica se usa netctl
como dice acá https://raspberrypi.stackexchange.com/questions/7987/wifi-configuration-on-arch-linux-arm#7992
/etc/netctl# install -m640 examples/wireless-wpa wireless-home /etc/netctl# cat wireless-home Description='A simple WPA encrypted wireless connection' Interface=wlan0 Connection=wireless Security=wpa IP=dhcp ESSID='MyNetwork' # Prepend hexadecimal keys with \" # If your key starts with ", write it as '""<key>"' # See also: the section on special quoting rules in netctl.profile(5) Key='WirelessKey' # Uncomment this if your ssid is hidden #Hidden=yes
Luego arranque el servicio # netctl start wireless-home
Tenemos problemas con la asignación de dirección ip por dhcpd, relacionado con timeouts
https://wiki.archlinux.org/index.php/Netctl#Troubleshooting
https://bbs.archlinux.org/viewtopic.php?pid=1399842#p1399842
https://archlinuxarm.org/forum/viewtopic.php?f=31&t=5424
RTC digital por medio de la libreria Time para ESP8266
Básicamente la libreria funciona por alarmas y temporizadores. Una Alarma es una tarea que ocurre a determinada hora del día. Mientras que un temporizador es una tarea programada que ocurré después de que haya pasado algún intervalo de tiempo.
Muy importante recordar que en vez de usar el delay(algunvalor) de Arduino, se debe usar el de la libreria alarm. De esta manera: Alarm.delay(algunvalor)