Portfolio

Simulador de sockets AX.25 para conexiones TCP.
Se trata de una capa que emula una interfaz compatible con una TNC con The Firmware de WA8DED. El tráfico normal TCP/IP aparenta ser una comunicación AX.25 por puerto serie.
Así podemos utilizar programas clásicos como Graphic Packet o TSTHOST con BBS actuales por Internet via Telnet.
Herramientas en línea de comandos para trabajar con los chips Microchip Crypto-Authentication.
Incluye configuración de ejemplo para probar y aprender, comandos básicos, ejemplos y casos de uso.
Código fuente: ATECC608-Tools
Artículo: Chips criptográficos de usar y tirar

Varios proyectos para aprender cómo usar una FPGA.
Basados en la placa Sipeed Tang Nano y una pantalla LCD VGA.
Los proyectos van en grado de dificultad creciente:
- Patrones simples
- Imágenes desde la ROM
- Texto
- Terminal serie
Cada subdirectorio del proyecto principal tiene su propio README con los puntos clave y ejemplos (en inglés). Así como un artículo con una extensa explicación (en español).
Artículos:
- Primeras experiencias con Sipeed Tang Nano. Impresiones, primeros circuitos en verilog y errores de principante.
- Pantalla LCD con Tang Nano parte I. Patrones. Cómo manejar una pantalla VGA. Señales de reloj.
- Pantalla LCD con Tang Nano parte II. Imágenes. Mostrar imágenes monocromo. Ruido blanco. Colores CGA. Texturas.
- Gráficos VGA con FPGA Tang Nano parte III. Texto. Repasamos la historia de la informática mientras diseñamos un controlador VGA para texto.
- Mi propia consola serie y el terminal de Unix. Desde hacer un terminal serie a hackear con STTY. Pasando por la historia del teletipo, la disciplina de línea o Terminfo.

La librería en Python más completa para usar los chips MCP2221 y MCP2221A.
Totalmente documentada y con muchísimos ejemplos.
Código fuente y ejemplos: Easy MCP2221.

Prueba de concepto para permitir o denegar el acceso a dispositivos conocidos. Se basa en la instalación de un certificado local y un agente que actua como API REST. El navegador puede llamarlo y comprobar las credenciales.

Gráficos de Matlab simulando un osciloscopio.
Tiene en cuenta la velocidad de barrido para hacer gráficos más realistas tal y como se verían en un osciloscopio analógico.

Librería en C para manejar una LCD I2C (basada en el chip PCF8574). Prinicpales características:
- Funciones simples muy básicas (posicionar el cursor, escribir texto).
- Integración con printf para formato de texto y texto multilinea.
- Soporte de caracteres personalizados.
- Tabla de reemplazo para carácteres UTF8 anchos (ñ, tildes, etc).
- Lectura de datos desde el controlador LCD.
- Control de iluminación posterior (atenuación con PWM).
Pensada en un primer momento para Raspberry Pi utiliza la librería wPi_soft_i2c. Se puede portar fácilmente a otras plataformas como ESP32.
Implementación en C del protocolo I2C. Pensado en un primer momento para Raspberry Pi utiliza la librería WiringPi. Se puede portar fácilmente a otras plataformas.
Implementación en Perl del paper de Jesse Kornblum Identifying almost identical files using context triggered piecewise hashing (CTPH).
Gracias a Christoph Biedl por generar un paquete Debian de este módulo: libdigest-ssdeep-perl.