Jolines...pues he borrado todas las librerias y he empezado desinstalando arduino tambien..
He cogido las librerias que proporcionas junto al codigo y las he puesto en arduino/libraries
Luego he instalado la de fastled luego la de mapfloat ,luego la de adafruit ssd1306 y voila compila perfectamente.
No me ha hecho falta el ultimo archivo que pones..
Es que esto de las librerias era un follon..
Podria subir en una carpeta las que tengo yo ahora..
Pero es que me compila bien solo la de los potenciometros...
La de pedalboard neopixel no me compila..me da fallo con el tuner (tuner was not declared in this scope)
Muchas gracias
Desde el arduino IDE habria que entrar en HERRAMIENTAS--ADMINISTRADOR DE BIBLIOTECAS y buscar e instalar las librerias:
-Analog-digital multiplexers (¿o igual sería mejor instalar la que has puesto tu antes?)
-FastLed
-Adafruit SSD1306
Acabo de hacer la instalación desde cero y eso es lo que hace falta para poder compilar el codigo de los potenciometros..
Voy a seguir probando con la de pedalboard neopixel (es la única que no me compila)
¿las librerias de uno y otro codigo son las mismas no?
EDITO:He probado a meter la ultima libreria que pasas la de ad mux y en la versión 1.13 me da fallo de (tuner was not declared in this scope)
y en la versión 1.12 me da fallo (sigpin was not declared in this scope).
No hay manera de que me compile la neopixel..y mira que en su dia la compile perfectamente..que estará fallando dios mio
Sustituye la librería de Marekburiak por esta, la que tienes le falta el array para el icono del afinador. He subido la versión correcta a GitHub también.
Nada..no era eso..si era lo de images.h ya lo tenía cambiado
Me sigue saliendo lo mismo...en la pedalboard neopixel:
versión 1.13 :tuner was not declared..
version 1.12 :sigpin was not declared etc etc
Mira bien a ver si está el array del tuner abajo del todo en images.h o que no te haya quedado una versión anterior del Marekburiak por ahí, porque el error es debido a que no encuentra el array para "tuner".
Lo de "sigPin" es por la librería del mux que hacía conflicto con FastLed e hice cambios en la propia librería. Pero no hacía falta y eso está corregido en la versión 1.13.
1 Me he dado cuenta del error en que estaba pillando las librerias que habia dejado en una instalación que ni me acordaba que estaba alli (/documents/arduino)
Lo unico que he hecho ha sido cambiar el nombre de esta carpeta (he quitado el nombre de arduino). Ya no pilla las libreías que no debe...
2He tenido que quitar la libreria de arduino ad-mux (que previamente yo había dicho de instalar mediante el administrador de bibliotecas, perdón..no hay que instalarla porque no compilareis).
Metiendo las cuatro librerias que proporcionas con el codigo solo faltaria de instalar la de adafruit ssd1306; la de mapfloat o mapf y la de fastled; y compilará perfectamente.
Perdón y muchas gracias por la ayuda, no me daba cuenta que el problema lo tenía en esa maldita carpeta y que es que no estaba leyendo todo el error de compilación del arduino ide.
Bueno pues la parte de los potenciometros ya esta casí..
No se como conectar el A4 que sirve para leer el voltaje de la bateria (yo lo pongo a ground y no me atrevo donde ponerlo)
No tengo lectura de voltaje de bateria.
El pin 10 que sirve para resetear el movimiento por los bancos a mi no me funciona..no se porque..tambien lo tengo desde el pin 10 hasta ground pasando por el botón.
La pantalla del principio es así?? como puntitos blancos hasta que salen las letras?? (eso es lo normal en una 1306? algo debo tener mal..)
Estoy utilizando dos potenciometros que sustituyen el joystick analógico pero me funciona fatal..tendré que conectar el joystick analógico..
Os paso fotos y video del montaje.Primero un video..
La nitida pantalla SSD1306 (si le quito el plastico , el mundo sería peor..yo creo..)
Una vista occidental
Intra-cospedal
Perspectiva, caballero...
Y...como si fuera un toro..
Pues, que decir..que aun me queda conectarlo todo mejor y afinar el tema pero pinta muy bien...todavía no lleva el bluetooth (poco a poco)
En el video os pongo los materiales, pero lo repito por aquí..
1 joystick analógico (dos contactos analógicos para direcciones, +V y GROUND y el botón digital del joystick, cinco pines en total)
2Un multiplexor 4051
3Un chip atmega 1284 (opcional el FTDI, pero es más comodo subir codigo con el FTDI que con un arduino programador) (componentes necesarios para el chip:cristal de 16 megaherzios, dos condensadores de 22 picofaradios, un condensador electrolitico de 10 microfaradios, una resistencia de 10 kiloohmios y las resistencias y el cableado que necesites para los leds que quieras poner)ç
4Una pantalla SSD1306
5potenciometros lineales de 10 kiloohmios (12 en total)
6Baterias (opcional si pones el cable USB)
7Protoboard
Para medir el voltaje de la batería conectas el positivo de la batería a A4, preferiblemente a través de una resistencia de 1k - 10k y que se pueda desconectar cuando quitas la alimentación (yo uso un interruptor 2PDT). Peeero si no usas algo que dé 5v constantes (un booster DC-DC) para el circuito, no vas a poder medir el voltaje de la batería porque se necesita una referencia - en este caso esos 5v.
Lo de los puntitos al iniciar la pantalla es normal, he usado varias y todas hacen lo mismo.
El botón de reset no te funcionará porque lo tengo cableado con resistencia pullup externa de 10k. O le pones eso, o la línea 97 la cambias a
Vamos avanzando..
solucionado lo del voltaje de la bateria..
Voy a hacer un mapa de conexiones con fritzing y lo voy a compartir por aquí, para que cualquiera quiera probar con su arduino, pero os lo digo ya..
-Conectar el pin A4 del arduino a +5V del circuito, y reiniciar (me faltaba esto) y ya tenemos lectura de la bateria en la pantalla..
Me queda averiguar porque no me funciona el boton de reset en el pin10..
Y probare a ponerle el modulo bluetooth HC-05..
Y luego ya por fin pasaré a la pedalera neopixel que ya he conseguido compilar(estoy deseando sustituir mi arduino mega por el atmel 1284 y meterle el bluetooth tambien).
Gracias!!
EDITO:
Prefiero ponerle de momento la resistencia de 10k.
¿se pone entre ground y el boton? o la ponemos entre el pin 10 del atmel y el boton y luego ya un cable desde el botón a +5v???
¿el pin 10 de atmel 1284 mightycore es el pin 16 del chip DIP40???
Funciona muy suave..jajaj es increible yo pensaba que iba a flipar con las interferencias
He pensado..no solo poner los potes del 0-12 (si dejas un 5, te quedas como preocupado.. hasta la proxima vez que mueves el pot)
Como un homenaje a spinal tap..no solo hacer un cubo que contenga nuestros potenciometros, botones..etc.. sino que hacer un pentagono..
Lo veo..
En la página 3 de este hilo hay un diagrama de cómo cablear un botón con resistencia pullup.
Sí, pin 10 en mightycore es el pin 16 físico del atmega.
El código está calibrado para medir en el pin A4 el voltaje de una batería 18650, que cuando está llena, da unos 4,2v y vacía, unos 3v. Pero como digo, eso solo lo puede hacer si el resto del circuito está alimentado con 5v constantes - eso lo hago con un booster DC-DC que se coloca entre la batería y el circuito. Si alimentas el circuito directamente de la batería e intentas medir el voltaje en A4, siempre te va a poner que está al 100%. Esto es porque A4 compara el voltaje que recibe con el de la alimentación como referencia. Si son iguales, el ratio siempre va a ser 100% - no sé si me explico.