Seguimos con el proyecto!
Para el panel mi idea es utilizar lo siguiente:
- Arduino Pro Micro (por la compatibilidad HID, el precio y el tamaño)
- 3 MCP23017. Un microprocesador que permite conectar 16 entradas y salidas al arduino por SDA y SCL (aunque esto aún no pude probarlo).
- 56 botones CherryMX para darle un tacto duro al teclado.
- 13 encoders rotatorios con pulsador.
- 1 LCD 100x16 y su adaptador I2C.
- 3 trackballs con conexion PS/2.
En cuanto a los botones, veo que el acercamiento óptimo es
hacer una matriz de 7x8 para reducir el número de pines utilizados (de 56 a 15).
Aquí hay un buen ejemplo con fotos de lo que creo que sería ideal. Ya os digo que tampoco estoy seguro de que sea la mejor opción, si conocéis otra estoy abierto a sugerencias evidentemente.
En cuanto a los 13 encoders del otro lado, sus pulsadores sí que van conectados en otra matriz de 3x5, reduciendo también el número de pines. Los 2 canales necesarios para detectar dirección de cada uno irían conectados a los MCP23017 (los encoders necesitarían 26 pines).
Como veis, sin los MCP23017 no es posible conectar todo. Mi plan es utilizar uno en la matriz de 56 botones, utilizando 15 de los 16 pines disponibles. El pin libre podría utilizarse para un LED de status.
El segundo de los MCP23017 recoge los inputs de 8 de los 10 encoders de la parte superior derecha, llenando sus entradas.
El tercero de ellos se utiliza para lo mismo que el segundo, así como para recibir la señal de la matriz de botones de los encoders (la de 3x5).
A pesar de esto, faltaría un encoder por conectar, así como la pantalla del LCD. Pero teniendo en cuenta que los MCP23017 van a los puertos 2 y 3 del Arduino (SDA y SCL), nos quedan la mayoría disponibles. Por lo tanto, el encoder que falta irá con sus pines directo al Arduino. El LCD se comunica por I2C por lo que también utiliza SDA y SCL. Para todo esto, habrá que configurar el LCD y cada uno de los MCP23017 para que funcionen en address diferentes.
Faltaría ver cómo se conectan los trackballs, pero aún no me ha llegado el que pedí así que necesitaría experimentar un poco con él para decidirlo.
Sé que no suelen gustar los esquemáticos de Fritzing, pero la verdad no sé representarlo de otra manera. Os adjunto la distribución sin cableado.
Ahora claro, falta poner a prueba la teoría. En el siguiente os enseño el prototipo que tengo, pero tengo dudas respecto al cableado de todo. Lo he planteado en Fritzing, y
lo adjunto aquí por si alguien quiere echarle un vistazo para comprobarlo. Un saludo!