• Hace tiempo que hablamos con Thierry en IRC sobre conectar la C64 a internet, y aparte de las clasicas placas de red, que por supuesto tienen de todo, me comentaba que habia unas mas baratas que usaban un modulo wifi, y que hacian de una especie de router, que de un lado se establece una conexion a un BBS por telnet, y del lado de la C64, la maquina lo ve como si fuera un modem normal por RS232.
    Es decir que la C64 se conecta por RS232 (por el puerto del usuario) con un programa terminal comun, porque cree que es una conexion por modem, pero el modulo wifi hace de puente entre lo que la C64 envia y recibe, y lo que envia y recibe un BBS remoto por telnet. Lo interesante de esto es justamente que no hace falta soft especial, se usa cualquier terminal.
    Hace un tiempo the woz se pidio unos componentes a China, y entre ellos un par de modulos wifi basados en el ESP8266, de los cuales me regalo uno. Son unos modulos muy chicos de tamaño y muy baratos, pero bastante potentes, y para la maquina son como modems por RS232 que aceptan comandos AT.
    El asunto es que una de las placas para C64 que usan este modulo venia con un arduino y una pantalla OLED para configurarlo, por eso estaba bastante cara para lo que es, pero despues salio otra bastante mas barata y con menos componentes. Asi que como tenia el modulo guardado esperando probarse, decidi ahora intentar conectarlo a la C64, ya que habia hecho pruebas de RS232 a 3,3V, y podia aprovechar eso (el modulo se alimenta con 3,3V y hay que adaptar todo para conectarlo a la C64). Como habia hecho unas pruebas con la lectura de joystick de PC para el sintetizador de voz, y para esa ocasion saque del olvido al protoboard, aproveche para armar todo ahi y probarlo desde la PC, usando tambien una placa que adaptaba de RS232 estandar a RS232 de 3,3V, que use para conectar la PC con la Raspberry Pi 3.
    Asi se veia el experimento:

    1475159525 75 FT0 103 1342s

    1475159525 75 FT0 103 1343s

    1475159525 75 FT0 103 1344s

    La placa verde es la que arme para agregarle cosas a la Pi, tiene los pines para conectarse directamente a la maquina y un DB9 para conectar un RS232 normal, solo hacia falta tomar los 5V y 3,3V del protoboard.
    El modulo wifi es esa plaquita a la que le solde unos alambres de resistencias para poder conectarla.
    Aca se ve ya con los alambres soldados:

    1475182119 75 FT0 103 1349s


     

  • Espero ansioso a ver como sigue esto . . . smile
     

  • Una vez probada la conexion desde la PC, decidi armar una placa para conectar el modulo a la C64, aprovechando nuevamente la placa que uso para los sintetizadores de voz, que en este caso solo me proporciona las lineas RX y TX del RS232, y masa, ya que la alimentacion la tomo aparte desde una fuente de 5V, por el elevado consumo que tiene el modulo para los modestos 100mA que da el puerto del usuario.
    La placa quedo asi:

    1475182798 75 FT106098 103 1365s

    1475182798 75 FT106098 103 1366s

    1475182798 75 FT106098 103 1367s

    1475182798 75 FT106098 103 1368s

    Esta placa va conectada en el zocalo de la que se conecta la C64, pero de esa solo uso el conector, el resto de los componentes quedan sin conectar:

    1475183018 75 FT106098 103 1364s

    Aca la placa ya conectada y lista para probar en la C64:

    1475183069 75 FT106098 103 1363s
     

  • tiene toda la pinta!!!
    VIDEOOO
     

  • La placa conectada a la C64, y la maquina corriendo el VIP Terminal XL:

    1475183394 75 FT106098 103 1356s

    1475183394 75 FT106098 103 1357s

    1475183394 75 FT106098 103 1358s

    Para no hacer mas suspenso, la C64 conectada a un BBS por telnet:

    1475183595 75 FT106098 103 1353s

    En una busqueda rapida no pude encontrar un BBS de C64 que estuviera andando o libre, habia uno que me aceptaba la conexion pero la cerraba porque estaba ocupado, ese que se ve en la foto es uno de Synchronet, que tengo que ver a 80 columnas por lo cual casi no se entiende nada.
    Aca una foto "mejor":

    1475183805 75 FT106098 103 1354s

    En esta otra se ve en modo de 40 columnas, se lee mejor pero no todos los menus del BBS se ven bien con tan pocas columnas, en este caso se listan los usuarios que se conectaron hoy, ahi aparezco como "Puerto Madryn, Argentina":

    1475184053 75 FT106098 103 1360s

    Para terminar, un par de fotos mas en 40 columnas, hay que aclarar que esta C64 tiene DIN 5 en la salida de video, por lo que solo se puede ver por video compuesto, ademas al conectarle alguna otra cosa se mete bastante interferencia, por eso la imagen no se ve tan bien.

    1475184351 75 FT106098 103 1361s

    En la pantalla de preferencias del usuario en el BBS:

    1475184432 75 FT106098 103 1362s
     

  • Muy bien ! Se entiende ehh, se lee bastante para ser 80 columnas
     

  • Por ahi tendria que buscar una terminal en la C128 para usar un modo de video compatible con esos BBS, la C128 en 80 columnas me parece que usa esos mismos caracteres.
     

  • Lo que necesitamos para este proyecto es por empezar un modulo wifi basado en el ESP8266, hay un monton de modelos y fabricantes pero todos compatibles, el ESP8266 es un modulo inteligente que tiene casi todo, le falta la antena y unos componentes minimos, por eso hay mucha gente que hace placas donde esta todo incluido. La que yo probe es una ESP12E, los nombres de las señales varian segun la placa pero basicamente todas tienen las mismas cosas. Uno de estos modulos en ML se vende desde $130 para arriba.
    Despues hace falta una fuente de 5V y un regulador de 3,3V, yo uso una fuente de 3A y un regulador GJ1117A, pero tambien hay muchas opciones.
    Para conectar a la C64, hace falta un conector para el puerto del usuario, esto seria bueno averiguar si podemos conseguirlos a precio razonable, un importador de componentes me paso algo de 6 dolares mas IVA, teniendo en cuenta que en ebay por esa plata se compran 10, se puede decir que no es razonable. El tema es que no se si van a hacer problema en la aduana por traer 10 conectores, hay 20 o 100 todavia mucho mas baratos. El conector aparentemente es el LW-N12A2G.
    Para la parte de conexion RS232, se necesita adaptar los 5V del puerto del usuario a los 3,3V del modulo, ahi uso una resistencia de 10K y otra de 15K para bajar de 5V a 3,3V para la salida TX desde la C64, y para RX desde el modulo, uso un transistor BC548, una resistencia de 4K7 y otra de 10K.
    Y aparte de esto, alguna placa donde soldar todo, y cables.
    Como veran, esta todo hecho con componentes minimos y conseguibles.
    Con respecto a la parte de soft, estos modulos admiten el cambio de firmware, que se carga por RS232, e incluso creo que se puede actualizar por internet. Hay firmware que lo hace funcionar como modem con comandos AT, que es el que venia en esta placa, pero hay otros que permiten cargarle scripts en distintos lenguajes, porque la placa misma seria algo parecido a un Arduino, tiene pines de entrada/salida que se pueden programar y conectar a otras cosas.
    El detalle con este firmware es que viene preconfigurado para arrancar a 115200 bps, por lo que es necesario conectarlo a una PC y configurarlo para 1200 bps, que es lo que hice para poder "hablarle" desde la C64. Una vez que esta a 1200 ya se queda grabada esa configuracion y arranca siempre asi. Desde la terminal de C64 se puede listar las redes wifi disponibles y conectar a una especificando nombre y clave. Esto tambien queda grabado, y cuando arranca el modulo se establece la conexion automaticamente.
    Una vez que se configuro todo, se enciende el modulo en la C64 y hay que hay dos cosas, primero conectar a un BBS con un comando AT que especifica la direccion, el tipo de conexion y el puerto, por ejemplo para el BBS de las fotos use:

    AT+CIPSTART="TCP", "bbs.synchro.net", 23

    Esto le dice al modulo que iniciamos una conexion TCP a bbs.synchro.net por el puerto 23 (telnet).
    Luego de eso se conecta al BBS y empieza a imprimir texto en pantalla, para poder tipear hay que poner un comando AT con el texto, pero este firmware viene preparado para el caso, y permite ingresar dos comandos que lo hacen de forma transparente. Hay que tipear esto:

    AT+CIPMODE=1

    y luego:  AT+CIPSEND

    Con esto el modulo deja de estar en modo de comando y "puentea" la conexion TCP al puerto serie, por lo que lo que envia la C64 va directo al BBS y lo que recibe va a la C64, sin tener que ingresar comandos AT.
    Si queremos volver a modo comando, para cortar la conexion o cualquier otra cosa, hay que ingresar +++, pero tienen que ser caracteres enviados a maxima velocidad, no a velocidad de tipeo, esto se hace asi para que no se tipee de casualidad. Lo que hay que hacer es configurar la terminal para que se envie esa secuencia de caracteres al presionar una combinacion de teclas.
    Una vez que se vuelve al modo comando, para cortar la conexion al BBS ingresamos:

    AT+CIPCLOSE

    Por supuesto el modulo sirve para otras cosas ademas de entrar a BBS, pero para aprovecharlo hay que escribir soft que lo use, no se si ya hay algo hecho para estos modulos.

     

  • Sarpado , creo que no hay escusas para armarse una y hacer pruebas, hay que empezar a averiguar por donde conseguir los componentes para poder armarlo
     

  • Hice un video probando algunos comandos y despues entrando a un BBS de Commodore desde Novaterm 9.6.

     

    Esta es la descripcion que puse en youtube:

    Se prueba un modulo wifi ESP-12E basado en el ESP8266, este modulo se controla por RS232 y tiene cargado el firmware que permite configurarlo con comandos AT. En esta prueba el modulo esta configurado para comunicarse por RS232 a 1200 bps, ya que esta es la maxima velocidad que manejan todos los programas emuladores de terminal en la Commodore 64. Hay programas que manejan 2400 bps pero 1200 bps es una velocidad que aceptan todos.
    El modulo puede dejarse configurado en determinada velocidad, y guarda los datos de la ultima conexion wifi, por lo que una vez establecidas la velocidad de RS232 y la primera conexion wifi, basta con encenderlo para que se vuelva a conectar automaticamente.
    Primero se configura Novaterm 9.6 para la RS232 del puerto del usuario a 1200,8N1, y se asignan los comandos para conectar y desconectar de BBS a las teclas de funcion, para poder responder mas rapido.
    Despues de encender el modulo wifi, se prueban el comando AT+GMR para ver informacion del modulo y firmware, y luego AT+CWLAP para listar las redes wifi detectadas.
    Al final se conecta al BBS Commodore Image, que aparentemente no deja entrar como invitado, luego se desconecta la sesion para que el BBS sepa que desconectamos, esto se confirma cuando se imprime en pantalla "CLOSED".

     

Moderador (s): thierry, homecomputer, Selandari, pastbytes, Durandal