- Según Elecrow, por US$18 se puede usar como instrumento de medición de bajo costo para experimentos y educación, al combinar en una sola placa un osciloscopio de 18 Msps, un analizador lógico de señal mixta y un generador de formas de onda integrado
- Se controla sin una app aparte desde un navegador basado en Chromium mediante WebUSB/Web Serial, y fue probado en Windows, macOS, Linux, ChromeOS y Android
- La entrada analógica ofrece hasta 18 Msps con un ADC de 12 bits y un ancho de banda utilizable de aproximadamente 4 MHz; las 9 entradas digitales se muestrean simultáneamente junto con la entrada analógica
- La interfaz web maneja disparo, captura con retardo, mediciones y calibración; las formas de onda basadas en DAC llegan hasta 40 kHz, y la square wave hasta 4 MHz
- Para mantener el bajo precio depende de componentes no precisos y calibración, por lo que tiene limitaciones en precisión de voltaje, ruido, AC coupling, tierra USB y compatibilidad con algunos navegadores móviles
Configuración básica de la placa de medición USB de US$18
- Flea-Scope es una placa de bajo costo que combina un osciloscopio USB, un analizador lógico de señal mixta y un generador de formas de onda integrado
- El precio indicado por Elecrow es de US$18
- El control se realiza desde una página web, sin instalar una app aparte
- Usa la WebUSB API o la Web Serial API en navegadores basados en Chromium
- Soporta conexión con computadoras, tabletas y teléfonos
- El usuario conecta el dispositivo con un cable de datos micro-USB, abre
flea-scope.htmly, enStart Connect, selecciona el dispositivo USB o el serial port - En Ubuntu Linux, se requiere ejecutar
sudo adduser user dialoutysudo adduser root dialout, y luego cerrar sesión
Especificaciones del hardware de medición
- La entrada analógica es de 1 canal y soporta muestreo de hasta 18 Msps con un ADC de 12 bits
- El ancho de banda analógico utilizable es de aproximadamente 4 MHz
- Incluye un conector BNC de tamaño completo
- La impedancia de entrada es de 1 Mohm, 14 pF
- Con sonda x1: -6V~+6V, resolución de 10 mV
- Con sonda x10: -60V~+60V, resolución de 100 mV
- Soporta DC coupling o digital AC coupling
- Las entradas del analizador lógico digital son 9 y se muestrean simultáneamente con la entrada analógica
- Son compatibles con niveles lógicos de 3.3V o 5V
- Los modos de disparo soportados son auto, level, rise, fall
- El rango de disparo/captura con retardo es de 0us~1s
- Con el pin
trigger outse pueden hacer funcionar varios Flea-Scope juntos para manejar más canales
- La precisión objetivo es de alrededor de 2% tanto en voltaje como en temporización
- El tamaño de la placa es 1" x 3" o 2.54cm x 7.62cm
Generación de formas de onda y mediciones en la interfaz web
- La salida de formas de onda de prueba funciona de dos maneras
- La arbitrary waveform basada en DAC genera formas de onda sine, triangle y ekg hasta 40 kHz
- La square wave se genera hasta 4 MHz
- Las formas de onda basadas en DAC repiten 100 puntos por ciclo
- En una arbitrary waveform de 40 kHz, el DAC genera puntos a 4 Msps
- En el estado predeterminado, el pin
wave outemite una sine wave de 1 kHz - La interfaz web ofrece un área de visualización analógica y un área de visualización digital
- Muestra voltajes promedio, peak-to-peak y RMS
- Con la función
measurese puede medir el tiempo y voltaje de un punto, o la diferencia de tiempo, diferencia de voltaje y frecuencia entre dos puntos
- Con los botones
pause,resumeysinglese puede detener la captura repetitiva o realizar una captura única por disparo
Disparo y escalas de tiempo y voltaje
- La escala horizontal se configura en el rango 0.5us/div~100ms/div
- El área de visualización completa está compuesta por 10 divisions
- Captura aproximadamente 1000 muestras de izquierda a derecha de la pantalla y captura unas 1000 muestras adicionales fuera del lado derecho, que pueden verse desplazándose
- En el tramo más rápido de escala horizontal, 2.5us/div o menos, las muestras capturadas se muestran ampliadas horizontalmente
- En ese caso, la cantidad de muestras visibles por division puede ser de alrededor de 50, 20 o 10, en lugar de unas 100
- El disparo analógico funciona mediante una combinación de una línea de voltaje especificada y los modos
auto,level,rise,fallautodispara automáticamente si no hay disparo en 100 ms, para que la pantalla no quede vacíariseyfallfuncionan con base en transiciones de voltaje después de un filtrado digital de 3 muestras
- El disparo digital se usa configurando los bits
b0~b8como0,1o don't care- El botón
cleardevuelve todos los bits de disparo digital a don't care y regresa al disparo analógico
- El botón
- La captura con retardo espera el tiempo especificado después del disparo y luego captura las muestras
- El tiempo se especifica con el sufijo
mpara milisegundos yupara microsegundos - El retardo máximo es de 1 segundo
- El tiempo se especifica con el sufijo
Calibración y rango de entrada
- Antes de usarlo, hay que calibrar el Flea-Scope y la sonda
- Los modos de sonda x1 y x10 tienen valores de calibración separados
- Los valores de calibración se guardan de forma permanente en la flash del MCU
- Si se usa el comando
newoclear flash, los valores de calibración se borran
- La calibración se realiza conectando 0V y 3.3V respectivamente, y presionando
cal_zeroycal_3v3- Debe repetirse en los modos x1 y x10
- La compensación de la sonda x10 puede ajustarse usando la salida de square wave de 1 kHz del Flea-Scope
- El modo de señal se elige entre unipolar, bipolar y digital AC coupling
- El valor predeterminado es unipolar, que muestra voltajes positivos con referencia a USB ground
acmuestra la señal con referencia al voltaje promedio digital
- La escala vertical predeterminada es 0V~3.3V, y en la interfaz se puede elegir un rango full scale de 0.5V~6.6V
- Reducir el rango de visualización vertical no aumenta la resolución de captura analógica
- En rangos de visualización de 0.33V o menos, las muestras capturadas se muestran ampliadas verticalmente
Limitaciones y precauciones del diseño de bajo costo
- Flea-Scope apunta a ser un dispositivo barato y “suficientemente bueno”, y depende de componentes no precisos y de calibración
- El ADC opera en modo de 12 bits y tiene un único rango de voltaje de entrada
- La resolución vertical teórica es de aproximadamente 4 mV
- El piso de ruido es de alrededor de +/-10~15 mV
- Si se necesita AC coupling real o si el DC offset supera el rango de entrada del ADC, se puede implementar con un capacitor externo de 0.1uF
- El retardo de disparo es de menos de 1us
- Si se usa una PC antigua con enchufe de 3 patas o preocupa un ground loop, se recomienda separar el ground wire de la sonda del osciloscopio de la tierra de la PC mediante un full-speed USB isolator
- El generador de arbitrary waveform basado en DAC puede producir ruido, especialmente a frecuencias altas, debido a una velocidad de conversión de 1 Msps y a la ausencia de double-buffer
Ancho de banda y compatibilidad de plataformas
- En una prueba de square wave de 1 MHz, muestra una fidelidad de señal acorde con lo esperable para un osciloscopio con muestreo de 18 Msps
- En la prueba de 4 MHz, sigue estando por encima del corte de ancho de banda analógico -3 dB, 70.7% de un osciloscopio típico, pero el límite de Nyquist restringe la fidelidad de la señal
- Fue probado en Windows, macOS, Linux, ChromeOS y Android
- Los navegadores probados fueron Google Chrome y Microsoft Edge
- En macOS, seleccionar Web Serial en lugar de WebUSB en la página web
manualpuede ofrecer mejor rendimiento
- La información sobre WebUSB y Web Serial puede consultarse en WebUSB y Web Serial, respectivamente
- iPhone e iPad todavía no funcionan con Flea-Scope porque no exponen dispositivos USB a WebUSB o Web Serial desde JavaScript del navegador
- Algunos teléfonos Samsung toman el dispositivo USB con un serial driver, pero luego no lo exponen al navegador mediante Web Serial, por lo que no puede accederse desde JavaScript
- En el firmware v2.27j, al encender se puede conectar el pin
a0a ground para forzar la exposición de un non-CDC/ACM USB endpoint - Después se puede usar el atajo de hacer clic en
USBen lugar deCommen la página webmanual
- En el firmware v2.27j, al encender se puede conectar el pin
Deep Dive Interactive Mode y reprogramación
- Si se abre
stickos-basic.htmlen lugar deflea-scope.html, se accede directamente por terminal al entorno StickOS BASIC que corre en el MCU- Como solo una página web puede abrir Flea-Scope a la vez, hay que cerrar la ventana existente de
flea-scope.html
- Como solo una página web puede abrir Flea-Scope a la vez, hay que cerrar la ventana existente de
- StickOS BASIC es un entorno de programación interactivo dentro del MCU
- Incluye editor de programas, compilador line-by-line, depurador interactivo, edit-and-continue, perfilador de rendimiento y sistema de archivos flash
- El MCU es un PIC32MK0512GPK064 de 120 MHz
- El rendimiento de BASIC es de alrededor de 150,000 líneas por segundo
- En deep-dive interactive mode, se pueden configurar interactivamente 18 pines de I/O multifunción
- digital input/output
- analog input/output PWM
- frequency output
- servo output PWM
- I2C master
- SPI master
- UART input/output
- Con el comando
hostname hostnamese puede establecer un nombre para distinguir varios Flea-Scope en USB y en la interfaz web- Después de cambiar el hostname, hay que reiniciar con el botón MCLR
- Con el conector ICSP de 6 pines, se puede reprogramar directamente la placa en C usando Microchip Pickit 3, Pickit 4 o Snap programmer y MPLAB X
- Se puede empezar con el repositorio de GitHub
hello - Luego se puede volver al firmware de Flea-Scope con
board/pic32.X.27*.production.hexdel repositorio StickOS2
- Se puede empezar con el repositorio de GitHub
1 comentarios
Opiniones de Hacker News
Por el precio, este pequeño dispositivo es realmente excelente.
Creo que convendría corregir el título del post para que no diga simplemente “More”, sino que también deje ver la función de generador de funciones/formas de onda.
Tal vez por eso la mayoría de los comentarios parecen centrarse solo en la parte del osciloscopio.
Cualquiera que haya hecho un poco de electrónica sabrá que una mesa de trabajo típica está compuesta por un osciloscopio, un analizador lógico, un generador de formas de onda, un multímetro digital y, por lo general, una fuente de alimentación de 12 V DC.
Este osciloscopio/generador de señales híbrido de 18 dólares parece poder realizar la mayoría de esas funciones, y el hecho de estar integrado en un solo dispositivo, sin tener que sincronizar equipos por separado, también es una gran ventaja.
Si se arma con equipos separados, como en las antiguas mesas de trabajo de electrónica HP/Agilent/Keysight, fácilmente se gastan decenas de miles de dólares.
Como alternativa moderna están las series Digilent Discovery Pro 3000/4000/5000, descritas como “All-In-One High-Speed Mixed Signal Oscilloscope, Function Generator, Power Supply, and DMM”, y cuestan miles de dólares.
La serie más barata Digilent Discovery 1/2/3 también ronda los 400 dólares, pero su ancho de banda y recursos son bastante limitados, así que es más comparable con Flea-Scope.
[1] Digilent Analog Discovery 3 vs. Digilent Pro ADP2230 [video]:
https://youtu.be/yr9SGxiBAnI
Este dispositivo tiene tantas funciones únicas, interesantes y útiles que hay demasiados elementos dignos de incluir en el título.
Edición: parece que ahora ya no puedo cambiar el título del post; qué lástima.
Soy nuevo por aquí.
Uno de los comentarios de abajo es un poco engañoso. No son 100 Msps sino 18 Msps, así que, con una fidelidad razonable, conviene pensar que sirve para señales de aproximadamente 1 MHz o menos.
No usa un STM32 sino un PIC32, y aunque el ADC es de 12 bits, por el piso de ruido en la práctica está más cerca de 10 u 11 bits.
Aun así, es genial que pueda hacer captura digital y generación de formas de onda al mismo tiempo, pero en general es un dispositivo bastante sencillo.
El objetivo era poner uno en cada lugar de un salón de clases que ya tenga computadoras, tablets o Chromebooks, y que “simplemente funcione”.
Lo que más me gusta es el acceso mediante JavaScript. Para la GUI basta una página web, sin instalar software ni pasar por tiendas de apps.
Para profundizar más en los experimentos de clase, se puede usar una página web separada de “deep dive” con una UI de línea de comandos para iniciar sesión de forma interactiva y controlar todos los pines de manera programática con BASIC.
También se puede configurar la placa para que ejecute automáticamente un programa BASIC al encenderse.
Con 4 interruptores, 4 LED, un buzzer y unas 100 líneas de código se puede crear un juego “Simon”; y con un termopar, un amplificador operacional y un relé de estado sólido, también se puede hacer un controlador de temperatura para un horno tostador de soldadura por reflujo. De hecho, así hice el prototipo.
Lo bueno es que el acceso JavaScript del lado del host sigue viniendo gratis, y BASIC puede comunicarse directamente con la computadora host. Por ejemplo, puede ejecutar Python o PowerShell.
Los ejemplos están aquí: https://rtestardi.github.io/pages/
Las aplicaciones automotrices también fueron interesantes. Con Flea-Scope es fácil sacar solo el teléfono o la tablet y medir el sensor del cigüeñal. Sin eso, uno termina adivinando según el diagrama de diagnóstico y cambiando piezas.
Todas las licencias son open source, y cualquiera puede rehacerlo e incluso venderlo.
El BASIC interno está patentado, pero las compilaciones de software que hice, probé y lancé tienen una licencia perpetua.
En teoría también se podría hacer el osciloscopio sin BASIC. No es necesario salvo cuando se usa la placa en el modo “deep dive” para programar en BASIC.
Si hay interés, también he pensado en un Mosquito-Scope: un dispositivo basado en el todavía muy nuevo dsPIC33A, con 2 canales y amplificación de entrada seleccionable para manejar señales submilivoltio; el dsPIC33A en realidad es más barato y más rápido que el PIC32MK.
-- Rich
Eso sí, suponiendo que la interfaz se mejore un poco para poder manejar varios osciloscopios al mismo tiempo.
Así se mantendría el formato pequeño y se evitarían compromisos de diseño.
Está claro que pensaste mucho en los elementos necesarios para que tenga éxito.
No hay mejor sustituto que que cada estudiante tenga su propio entorno experimental.
Cuando tuve mi primer contacto con un osciloscopio, toda la clase compartía un enorme Tek serie 7k, que en ese momento era de lo mejor; aprendí lo básico, pero realmente aprendí a usarlo de forma útil cuando tuve mi propio osciloscopio, con muchas menos funciones.
Por cierto, si eres nuevo aquí, te aviso: en este sitio, cuando alguien publica algo diciendo “yo lo hice”, es común que aparezcan comentarios señalando problemas menores como si fueran grandes errores, diciendo que si ellos lo hubieran hecho les habría salido mucho mejor, o preguntando por qué lo hicieron si en Alibaba compraron algo más barato.
Por supuesto, también dirán que debió estar escrito en Rust. Puedes ignorar todo eso.
Estoy satisfecho con este analizador lógico que compré en Amazon por un precio parecido, unos 13 dólares
Gasté más en las sondas que en el analizador. Las sondas costaron 24 dólares ;-)
Para usarlo empleo SigRock/PulseView, y lo reconoce como un clon compatible
Es sorprendente poder ver señales de decenas de nanosegundos de ancho por tan poco dinero
[1] https://www.amazon.com/dp/B077LSG5P2
[2] https://www.amazon.com/dp/B0CLB63GL3
[3] https://sigrok.org/wiki/PulseView
Se desconecta todo el tiempo y también tiene problemas con la enumeración del dispositivo. Todavía no probé sigrok
Si subís y bajás varios pines GPIO antes y después de secciones importantes del código, podés ver los resultados en SigRock
Al usar un osciloscopio USB, hay que tener cuidado con los bucles de tierra
La mayoría de los osciloscopios USB baratos comparten la tierra con la PC a través del puerto USB
Si medís circuitos de alto voltaje, por ejemplo la red eléctrica o una fuente conmutada, puede aparecer una diferencia de potencial peligrosa y terminar dañando la computadora o generando riesgos aún más graves
Algunos osciloscopios ofrecen entradas aisladas, pero si no es el caso hay que usar una sonda diferencial o un transformador de aislamiento
Si no, podrías terminar depurando no el circuito, sino el controlador USB quemado de tu laptop
Incluso vi salir humo por una de las rejillas de ventilación, pero el resto de la computadora sobrevivió
Se siente como magia
Para comparar, un osciloscopio USB de 2 dólares se ve así. Es de 800 ksps y tiene 2 rangos de voltaje: https://files.catbox.moe/0t0dq3.jpg
Un proyecto así habría sido una salvación hace 20 o 30 años, cuando incluso un osciloscopio básico costaba tanto como un auto usado
Hoy se venden osciloscopios bastante buenos por 300 dólares, con 200 MHz de ancho de banda, buena interfaz de usuario y una pantalla con buena respuesta. Me refiero a equipos de Siglent, Rigol, UNI-T y similares
Por eso, la ventaja de armar uno mismo algo mucho peor ya no es tan grande como antes
Un osciloscopio es el equipo que usás para solucionar problemas en todos los demás diseños, así que conviene que sea confiable, fácil de usar y preciso
Por supuesto, tiene valor publicarlo como un proyecto divertido y geek. Pero eso sería después de ya tener un osciloscopio de verdad
Si apenas estás armando tu equipo, te conviene gastar un poco más por tu propio bien. El resto del equipo no es tan crítico
300 dólares es una cifra bastante alta en relación con los salarios mínimos del mundo[1], y en lugares como mi país es muy probable que el precio termine siendo el doble
Además, la gente que realmente podría sacarle mucho provecho a este dispositivo, por ejemplo estudiantes de secundaria, normalmente tiene mucho menos dinero disponible
Más aún si considerás el efecto secundario de armarlo uno mismo y aprender cómo funciona
[1] https://en.wikipedia.org/wiki/List_of_countries_by_minimum_wage
Si no sabés exactamente para qué lo vas a usar, no vas a gastar 300 dólares, pero 20 dólares es fácil y 2 dólares se vuelve una compra impulsiva
Ofrece un front-end con ADC de 12 bits, entrada por pantalla táctil realmente usable y control remoto muy sencillo mediante conexión de red. Aunque consultar la dirección IP usando solo la pantalla táctil es un poco engorroso
Como tiene entrada de alimentación USB-C, si querés también puede funcionar con una batería externa
Trae integrados gratis todos los decodificadores esenciales, como I2C, SPI y UART
Se puede montar en VESA, así que pude ponerlo en un brazo de monitor y recuperar espacio en el escritorio; esa función me encanta
También es muy fácil hackear un modelo barato y actualizarlo al modelo de 250 MHz :D
Creo que, desde casi cualquier ángulo, una barrera de entrada baja es un elemento central de ese objetivo
[0]: https://www.youtube.com/watch?v=sbRXDkHS_V0
Si sos un profesional de cuello blanco en Estados Unidos, puede ser
Pero para la mayor parte de la población mundial, la diferencia entre 300 y 18 dólares es enorme
Corrección: la licencia está compuesta por ARR, dominio público y MIT
https://github.com/rtestardi/StickOS2/blob/main/license.txt
https://github.com/rtestardi/usbte/blob/master/LICENSE
Llamar a esto FOSS es totalmente inexacto
Algunas partes tienen todos los derechos reservados, otras son de dominio público y otras solo permiten uso no comercial
El dominio público no es open source y, en particular, tampoco es free en el sentido de libertad
La restricción de uso comercial tampoco es software libre
En el mejor de los casos, este proyecto puede describirse como parcialmente source-available
Puedo recomendar este dispositivo a alguien que recién empieza a aprender electrónica
Recibí uno en Hackerbox 102[1], y me pareció que ofrece buen valor por su precio en relación con el ancho de banda
Al hablar con amigos ingenieros, como era de esperarse, escuché reacciones tipo “es solo un juguete”, y claramente tiene muchas limitaciones
Pero incluso dentro de esas limitaciones, hay muchas oportunidades para enseñar temas como electrónica analógica, donde lo mejor es aprender viendo las señales directamente
Quienes recién empiezan muchas veces ni siquiera saben por qué necesitan un osciloscopio, así que es una forma bastante buena de introducir la herramienta sin enfrentar una gran curva de aprendizaje por funciones que no usarán durante el primer año :-)
Más adelante, cuando elijan uno de los buenos equipos de banco, no estarán en una situación de no saber en absoluto qué hacen las funciones de un osciloscopio
Por eso, por 20 dólares me parece una buena compra, y lo he recomendado a personas que están empezando a aprender estas cosas
[1] https://hackerboxes.com/collections/past-hackerboxes/products/hackerbox-0102-flea-scope y la guía de experimentos https://www.instructables.com/HackerBox-0102-Flea-Scope/
Me recuerda al EspoTek Labrador, que está en un rango de precio similar
https://espotek.com/labrador/
La arquitectura híbrida FPGA/MCU de Flea-Scope para streaming USB es ingeniosa. La forma en que maneja capturas de 100 MS/s con pipelining en FPGA y deja la conversión de protocolo al STM32 parece buena en costos
Pero la resolución ADC de 8 bits y la ausencia de una red de protección de entrada son riesgosas con señales no atenuadas, comparadas con el front-end de 1 MΩ//20 pF de Rigol y su clamp de sobretensión
Las herramientas de análisis en Python, que usan NumPy/SciPy para FFT en vez de DSP integrado, son una buena distribución de recursos, y parece que pronto también veremos Jupyter
Además, no está ni cerca de 100 Msps, sino que es apenas 18 Msps, y la especificación es de 12 bits
Me pregunto si escribiste el comentario con ayuda de IA o si estás hablando de otro dispositivo