# Repo Durante el primer endo-taller stuvimos trabajando con los sensores de luz y humedad de suelo. El código está en [este repo](https://0xacab.org/hueretechno/endo-talleres/), y puede servir para cualquiera que se acerque por primera vez al proyecto. # Arduino Instalamos el Arduino IDE v 1.8.5 "portable" (no es el que aparece primero llamado "web o agent creator" xq sólo funciona online) de la [página](https://www.arduino.cc/en/Main/Software). En [esta guia](https://www.arduino.cc/en/Guide/PortableIDE) explican como instalar. En GNU/Linux agregamos los usuarios al grupo `dialout` (en debian; pero `uucp` y `lock` en arch/manjaro). En Mac no pudimos hacer que reconozca el ide al com port.~~hace falta descargar e instalar [estos drivers](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers). Para ello hacia el final de la instalacion hay que apretar "Permitir" en una ventana a la que se llega yendo a Settings > Security & Privacy > General > 'Permitir...'.~~ Vimos como funciona un poco cada uno de los botones del [IDE](https://www.arduino.cc/en/Guide/Environment). En particular estuvimos viendo las opciones de `File` y `Tools`. En este segundo encontramos donde abrir el `Boards Manager`, adentro de `Boards: ...` en donde se elige que placa vamos a estar programando con esta ventana del IDE que tenemos abierta. También instalamos [librerías](https://www.arduino.cc/en/Guide/Libraries) [adafruit_sensor](https://github.com/adafruit/Adafruit_Sensor) y la mas especifica de [DHT](https://github.com/adafruit/DHT-sensor-library) para manejar los sensores. Por último instalamos el [core](https://www.arduino.cc/en/Guide/Cores) esp8266 de para tener otras boards disponibles en `Tools` > `Boards: ...` (incluye nodeMCU 0.9 que usamos). Para esto agregamos la URL: "http://arduino.esp8266.com/stable/package_esp8266com_index.json" en las opciones del Arduino IDE (`Files > Preferences` o `Ctrl+,`) antes de buscar el core en el `Boards Manager`.. Antes de programar chequiamos la eleccion del `Puerto` ahi mismo en `Tools`, que debía aparecer como /dev/usb0 para nodemcu o /dev/ACM0 para arduino. ¿[Dudas](https://www.arduino.cc/en/Guide/Troubleshooting)? ## Recursos La [presentacion oficial](https://www.arduino.cc/en/Guide/Introduction) tira un par de postas sobre qué es y por qué usar Arduino. Pero lo mejor está en los [tutoriales oficiales](https://www.arduino.cc/en/Tutorial/HomePage) ya que van desde lo mas básico hasta lo mas avanzado. Hay para entretenerse un par de tardes... Hay una lista de videos en [YouTube](https://www.youtube.com/playlist?list=PLT6rF_I5kknPf2qlVFlvH47qHvqvzkknd) donde muestran cada uno de los proyectos que se pueden hacer según el kit para principiantes oficial de arduino. La version pirata de este libro debe estar en libgen.io pero no sé si da linkear acá :P de última en [ardumania](http://www.ardumania.es/aprende/) la verdad que pusieron unos tutoriales muy cortitos y al pie, en castellano. Otro recurso completo y en castellano es [este](http://www.ardumania.es/wp-content/uploads/2011/10/Arduino_programing_notebook_ES.pdf) [libro](https://arduinobot.pbworks.com/f/Manual+Programacion+Arduino.pdf). El manual de referencia es el último recurso quizás, pero siempre vale [tenerlo cerca y a mano](https://www.arduino.cc/reference/en/). Es como lo que tenes que saberte de memoria para ser programador de arduino de nivel soviético. # Git Nos registramos en 0xacab.org y nos agregamos usuarias en el repo con rol developer. Agregamos llave SSH las que ya la teníamos generada. Algunas clonamos por HTTPS y otras por SSH. Por eso ahora vamo a poner a propósito las dos formas de URL. Clonamos https://0xacab.org/hueretechno/endo-talleres/ y practicamos un commit, push y pull. También clonamos git@0xacab.org:hueretechno/HuerTechno.wiki.git para estar listas todas a documentar y colectivizar saberes. ## Recursos Los tutoriales de [Atlassian](https://www.atlassian.com/git/tutorials) (la compañia que desarrolla BitBucket, competencia de GitHub) tienen el camino a la sabiduría real sobre cómo resolver en `git` algunas "situaciones locas"... ¡los conflictos de merge no son nada!