Sobre el proyecto

fynescope es una interfaz gráfica de usuario prototipo y aplicación de control para osciloscopios de PC de las series PicoScope 2000B y 2000B MSO. Está escrito en Go y construido sobre el conjunto de widgets Fyne junto con el SDK de la serie PicoScope 2000A. Las plataformas compatibles son Linux y Windows 11 (x64, ARM64 / Raspberry Pi 4 y posteriores). Capacidades principales - Osciloscopio en dominio del tiempo f(t): captura de formas de onda multicanal, divisiones verticales y temporales, interpolación lineal y sin(x)/x, persistencia y una ventana independiente de Zoom Temporal para inspección simultánea a escala amplia y en detalle. - Soporte de señal mixta (MSO): visualización de canales digitales (D0-D15) para modelos MSO como el 2206B MSO, disparadores digitales por flanco/patrón, umbrales lógicos configurables (TTL, CMOS, ECL o personalizados) y apilamiento flexible de canales. - Disparo: Simple Edge, Advanced Edge, Window, Interval, Pulse Width, Window Pulse Width, Runt, Dropout, Window Dropout, Logic y disparadores complejos multicanal. - Decodificación de protocolos: decodificación UART y SPI integrada en canales analógicos con superposiciones de tokens de trama en línea y banderas de error. - Analizador de espectro FFT: análisis en dominio de frecuencia en tiempo real con ejes de frecuencia lineales o logarítmicos. - Análisis de respuesta en frecuencia f(f) / diagramas de Bode: barridos de frecuencia automatizados con gráficos de magnitud y fase, integrados con el AWG incorporado o generadores de señal SCPI externos. - Modo X-Y f(v): grafica un canal contra otro para analizar relaciones de fase y patrones de Lissajous. - Canales virtuales/matemáticos: canales calculados en tiempo real a partir de entradas físicas usando expresiones arbitrarias (por ejemplo chA + chB, chA * chB, offsets y escalado) mediante el motor expr. - Filtros digitales y analógicos: filtros FIR/IIR de paso bajo, paso alto, paso banda y banda eliminada en tiempo real con capacidad de fase cero (FiltFilt), además de filtros RLC simulados en modo demo. - Correlación: correlación escalar de Pearson en tiempo real y correlación cruzada entre canales. - Generador de señal / AWG: control de generadores de forma de onda arbitraria incorporados (seno, cuadrada, triangular, rampa, DC, ruido, barridos). - Soporte SCPI: control de generadores de señal SCPI externos por USB para pruebas automatizadas y generación de diagramas de Bode. - Modo demo sin hardware: simulador de señal incorporado que produce formas de onda analógicas multicanal, patrones digitales, barridos y ruido, de modo que la interfaz completa puede explorarse sin hardware. - Servidor web remoto y control por voz: transmisión MJPEG en vivo a un navegador web con comandos de voz manos libres mediante la Web Speech API (-webport), protegido por autenticación básica. - API REST HTTPS remota: consulta el estado del osciloscopio y configura parámetros programáticamente (-apiport, -apiauth). Compilación y uso El modo demo se ejecuta sin PicoSDK ni una cadena de herramientas C: go run -tags=demo . -demo. La compilación con soporte de hardware real requiere Go 1.27, un compilador C y el SDK oficial de PicoScope (libps2000a). Las etiquetas de compilación incluyen demo (simulador en Go puro), sim (simulador de hardware que emula la interfaz del controlador C de PicoScope), scpi (control de generador SCPI externo para barridos de Bode) y web (servidor de transmisión MJPEG y control por voz). Las opciones CLI comunes cubren modo demo, escalado del tamaño de pantalla, puerto web, puerto API, exportación GIF, nivel de registro y salida de versión/acerca de. Documentación y limitaciones El repositorio incluye un directorio github-wiki y una GitHub Wiki en línea que cubre primeros pasos, características y controles, modo demo, control del generador, canales virtuales, modos de disparo, decodificación de protocolos, aumento de resolución, servidor web y control por voz, pruebas y depuración, estructura del programa y limitaciones. El proyecto declara que algunas características del software oficial PicoScope 7 no están implementadas, como mediciones estadísticas profundas, pruebas de límite de máscara y protocolos adicionales. Las herramientas de desarrollo mencionadas incluyen LiteIDE y asistencia de codificación con IA. El proyecto está licenciado bajo BSD 3-Clause e incorpora código y estructuras de API de otros proyectos de código abierto y proveedores de hardware.