FlashFloppy OSD controlar Goteck desde el teclado Amiga o CPC
Publicado: 30 Nov 2019, 00:20
Hace unas semanas comprobé que el firmware libre para GOTEK FlashFloppy, tenia una novedad de hardware que permite controlar la GOTEK directamente desde el teclado del propio dispositivo Amiga o CPC, todo un puntazo ya que de esta manera uno se olvida de cortar la carcasa para llegar a los botones, o cambiar estos por unos mas largos, o poner una pantalla en la parte superior rompiendo la estética, etc. Así que decidí ponérselo a un A500 con placa REV5 y esto es lo que sucedió.
Lo primero es poner la lista de materiales que necesite:
GOTEK
Controlador STM32
Programador TTL-USB
Cables
Resistencias 4.7k y 270-ohm
La verdad que si ya tenemos la GOTEK lo mas caro es el microcontrolador STM32 que esta entre 3€ y 6€, por lo que esta solución es bastante económica.
Lo primero fue programar la GOTEK con el firmware v3.7a (Experimental) o superior, no vale la rama estable. Si tenemos ya una versión de firmware de FlashFloppy instalada en la GOTEK no nos hará falta programarla con el TTL-USB, si no que es posible hacerlo directamente desde un usb, las instrucciones aquí
Era el momento de programar el STM32 con el programador TTL-USB con el firmware FF_OST 1.7, este es el esquema de conexión que use:
TTL STM32
5V = 5V
GND = G
RXD = A9
TXD = A10
Para entrar en modo programación recordar poner el puente BOOT0 en 1 del STM32 (ver imagen anterior para localizarlo)
Una vez conectado todo correctamente solo me quedaba programarlo, como uso Linux utilice estos comandos:
# unzip FF_OSD-v1.7.zip
# sudo stm32flash -b 115200 -vw FF_OSD-v1.1/FF_OSD-v1.1.hex /dev/ttyUSB0
Para Windows se puede hacer con este soft para mas información se puede seguir la guía de esta web
Una vez programado el STM32 me quedaba conectarlo a la GOTEK de la siguiente manera.
STM32 = GOTEK
B6 = SCL (ojo)
B7 = SDA (ojo)
3.3 = VCC
G = GND
Ojo muy importante, en los pines B6 y B7 hay que poner una resistencia de 4.7k por cada pin, y conectarla a 3.3v usando un cable en forma de "Y". Es decir, el cable sale desde B6 o B7 a la resistencia, esta a 3.3v de la placa STM32, y a su vez el conjunto de estos dos cables a la GOTEK. Perdonar que insista pero recordar las resistencias para B6 y B7, si no, no funciona. Dejo el diagrama de FlashFloppy para mejor comprensión aun que lo tenéis en su web.
Ya estaba preparada la parte de la GOTEK, ahora tocaba meterle mano al Amiga 500.
Tocaba localizar cuatro puntos en la placa, dos para la señal de video y otros dos puntos para la señal del teclado.
Primero localice las señales R, G y B, y elegí una, en concreto la G para que el color del menú fuera verde, pero se puede elegir cualquiera de las tres. La ubicación de estas señales en concreto se localiza justo donde esta el conector de video con tres resistencias, soldando directamente el cable a una de estas resistencias seleccionada, y colocando la resistencia de 270-ohm entre la señal de video y el pin B15 de la STM32.
Ahora la señal Sync, esta la saque del pin 32 del Denise, para terminar de conectarla por el otro extremo al pin A8 del STM32
Ya solo me quedaba sacar las dos señales del teclado KB_CLOCK y KB_DATA, para controlar la GOTEK y poder cambiar entre los diferentes ADF que contenga el usb.
Estas se puedes sacar de los pines 2 y 3 del array de resistencias que hay al lado del conector del teclado, encima de una de las CIA, se puede localizar por la huella RP501.
El pin 2 del array corresponde a la señal KB_CLOCK que tiene que ir al B4 del STM32, y la señal KB_DATA corresponde al pin 3 del array que tiene que ir al B3 del STM32.
El resultado final queda perfectamente integrado dentro de la GOTECK, y una vez cerrada solo los cables pueden dar una pista de la modificación.
Lo mejor de esta modificación es que ya no se necesita ningún tipo de pantalla en la GOTEK, es totalmente reversible y perfectamente configurable el menú del OSD, permite incluso colocar el menú en cualquier parte de la pantalla para su mejor visualización. Como comente al principio, la GOTEK se controla perfectamente desde el teclado del amiga con una configuración de teclas, permitiendo cambiar al vuelo de ADF y pudiendo ver el nombre del fichero antes de cargarse. Este OSD es un lujazo en toda regla, ya solo me queda que se puedan eliminar los botones y que se pueda actualizar el firmware sin necesidad de ellos
Dejo un video con las pruebas realizadas para que veáis lo bien que funciona.
Toda la información de este FF_OSD la tenéis en el GitHub del proyecto, con mas configuraciones de hardware como una pantalla OLED, Rotary, etc. Por desgracia con respecto al CPC no dice nada, pero se puede ver un video de un 6128 funcionando con este mod.
Lo primero es poner la lista de materiales que necesite:
GOTEK
Controlador STM32
Programador TTL-USB
Cables
Resistencias 4.7k y 270-ohm
La verdad que si ya tenemos la GOTEK lo mas caro es el microcontrolador STM32 que esta entre 3€ y 6€, por lo que esta solución es bastante económica.
Lo primero fue programar la GOTEK con el firmware v3.7a (Experimental) o superior, no vale la rama estable. Si tenemos ya una versión de firmware de FlashFloppy instalada en la GOTEK no nos hará falta programarla con el TTL-USB, si no que es posible hacerlo directamente desde un usb, las instrucciones aquí
Era el momento de programar el STM32 con el programador TTL-USB con el firmware FF_OST 1.7, este es el esquema de conexión que use:
TTL STM32
5V = 5V
GND = G
RXD = A9
TXD = A10
Para entrar en modo programación recordar poner el puente BOOT0 en 1 del STM32 (ver imagen anterior para localizarlo)
Una vez conectado todo correctamente solo me quedaba programarlo, como uso Linux utilice estos comandos:
# unzip FF_OSD-v1.7.zip
# sudo stm32flash -b 115200 -vw FF_OSD-v1.1/FF_OSD-v1.1.hex /dev/ttyUSB0
Para Windows se puede hacer con este soft para mas información se puede seguir la guía de esta web
Una vez programado el STM32 me quedaba conectarlo a la GOTEK de la siguiente manera.
STM32 = GOTEK
B6 = SCL (ojo)
B7 = SDA (ojo)
3.3 = VCC
G = GND
Ojo muy importante, en los pines B6 y B7 hay que poner una resistencia de 4.7k por cada pin, y conectarla a 3.3v usando un cable en forma de "Y". Es decir, el cable sale desde B6 o B7 a la resistencia, esta a 3.3v de la placa STM32, y a su vez el conjunto de estos dos cables a la GOTEK. Perdonar que insista pero recordar las resistencias para B6 y B7, si no, no funciona. Dejo el diagrama de FlashFloppy para mejor comprensión aun que lo tenéis en su web.
Ya estaba preparada la parte de la GOTEK, ahora tocaba meterle mano al Amiga 500.
Tocaba localizar cuatro puntos en la placa, dos para la señal de video y otros dos puntos para la señal del teclado.
Primero localice las señales R, G y B, y elegí una, en concreto la G para que el color del menú fuera verde, pero se puede elegir cualquiera de las tres. La ubicación de estas señales en concreto se localiza justo donde esta el conector de video con tres resistencias, soldando directamente el cable a una de estas resistencias seleccionada, y colocando la resistencia de 270-ohm entre la señal de video y el pin B15 de la STM32.
Ahora la señal Sync, esta la saque del pin 32 del Denise, para terminar de conectarla por el otro extremo al pin A8 del STM32
Ya solo me quedaba sacar las dos señales del teclado KB_CLOCK y KB_DATA, para controlar la GOTEK y poder cambiar entre los diferentes ADF que contenga el usb.
Estas se puedes sacar de los pines 2 y 3 del array de resistencias que hay al lado del conector del teclado, encima de una de las CIA, se puede localizar por la huella RP501.
El pin 2 del array corresponde a la señal KB_CLOCK que tiene que ir al B4 del STM32, y la señal KB_DATA corresponde al pin 3 del array que tiene que ir al B3 del STM32.
El resultado final queda perfectamente integrado dentro de la GOTECK, y una vez cerrada solo los cables pueden dar una pista de la modificación.
Lo mejor de esta modificación es que ya no se necesita ningún tipo de pantalla en la GOTEK, es totalmente reversible y perfectamente configurable el menú del OSD, permite incluso colocar el menú en cualquier parte de la pantalla para su mejor visualización. Como comente al principio, la GOTEK se controla perfectamente desde el teclado del amiga con una configuración de teclas, permitiendo cambiar al vuelo de ADF y pudiendo ver el nombre del fichero antes de cargarse. Este OSD es un lujazo en toda regla, ya solo me queda que se puedan eliminar los botones y que se pueda actualizar el firmware sin necesidad de ellos
Dejo un video con las pruebas realizadas para que veáis lo bien que funciona.
Toda la información de este FF_OSD la tenéis en el GitHub del proyecto, con mas configuraciones de hardware como una pantalla OLED, Rotary, etc. Por desgracia con respecto al CPC no dice nada, pero se puede ver un video de un 6128 funcionando con este mod.