Por qué mi Arduino empezó a decir "no"
Me pasé 3 horas debuggeando porque había un void loop() que se ejecutaba 127 veces por segundo...
Programador & Técnico Audiovisual
Creo cosas raras con PHP, Arduino, HTML, CSS y JavaScript.
Mezclando lo técnico con lo artístico.
Las cosas que me han salido bien (o casi)
Sistema web para crear y administrar múltiples temporizadores con panel de control, visualización sincronizada y estilos personalizables. Permite ocultar los controles y compartir enlaces únicos.
Ver proyecto →Aplicación web en PHP para controlar el inventario de material técnico (altavoces, luces, micrófonos...). Permite añadir, editar y marcar artículos como en uso o disponibles.
Ver proyecto →Sistema para eventos que genera tickets con número de serie, controla métodos de pago, y permite marcar invitados con descuento como tachados.
Ver proyecto →Plataforma conectada con la API de Loyverse que permite escanear un QR, elegir número de mesa, seleccionar productos y enviar el pedido al sistema principal.
Ver proyecto →App iOS conectada a API PHP para llevar inventario de productos con imágenes, cantidades y sincronización entre dispositivos.
Ver proyecto →Sistema de fidelización gamificado para restaurantes, con puntos, misiones y recompensas configurables.
Ver proyecto →Script PHP para generar y validar licencias únicas de 16 dígitos alfanuméricos, pensado para proteger software o acceso a plataformas.
Ver proyecto →Panel interno privado para gestionar equipos, solo accesible por empleados.
Ver proyecto →App iOS para eliminar fotos deslizando hacia un lado para guardar y hacia otro para borrar. Incluye estadísticas diarias de fotos eliminadas.
Ver proyecto →Web sencilla que permite reservar cita por WhatsApp, eligiendo fecha y hora, y guardando las citas en un archivo JSON.
Ver proyecto →Cosas que probé "a ver qué pasa"
Sistema que permite seleccionar cuál de dos motores controlar mediante un potenciómetro y dos botones, con LEDs indicadores para mostrar el motor activo.
Extensión del experimento anterior: dos botones y dos LEDs controlan el sentido de giro del motor sin necesidad de un módulo L298N.
Pequeño circuito con dos botones para encender y apagar un motor. El botón "start" lo activa, y "stop" lo detiene inmediatamente.
Una especie de "sandbox" PHP para probar fragmentos de código y APIs sin frameworks, útil para depurar o hacer experimentos en vivo.
Versión temprana del gestor de cuentas atrás, probando sincronización en tiempo real y estilos dinámicos con CSS variables.
Plugin básico para Minecraft con tu namespace hugomoreno.es, usado para entender la API de Spigot y experimentar con Gradle.
Script PHP que genera licencias únicas de 16 dígitos alfanuméricos, pensado como sistema de validación offline.
Creación de renders 3D para planificar la colocación de equipos audiovisuales antes de un evento.
Pruebas con la API de Loyverse para conectar un sistema de pedidos QR con gestión de mesas y tickets automáticos.
Prototipo visual de tu portfolio con animaciones aleatorias, comandos ocultos y estética de terminal retro.
Pruebas iniciales para conectar Arduino y sistemas DMX o relés para automatizar efectos de iluminación y audio.
Plantilla web con fondo animado en JS (partículas, líneas, movimiento reactivo al ratón), usada como base para interfaces dinámicas.
Zona de pruebas interactivas. Experimenta con código en vivo
Crea partículas en tiempo real. Controla la cantidad, velocidad y colores.
Mezcla colores neón en tiempo real y genera paletas personalizadas.
Haz clic en los colores para mezclarlos
Color Resultante
Mezcla colorante: ninguno
Terminal funcional con comandos básicos. Escribe 'help' para empezar.
Calculadora con estilo retro y colores neón.
Genera contraseñas seguras aleatorias con opciones personalizables.
Reloj digital en formato binario. ¿Puedes leerlo?
Visualiza el tempo con ondas y colores neón.
Editor de texto con modos oscuro y limpio, sin distracciones.
Convierte entre diferentes formatos de color (HEX, RGB, HSL).
Técnica Pomodoro para gestionar tu tiempo de trabajo.
Genera texto de relleno clásico para tus diseños.
Genera nombres aleatorios para proyectos, personajes o variables.
Scripts y utilities que uso en mi día a día
Genera códigos de licencia de 16 dígitos aleatorios con diferentes formatos.
Automática backups de bases de datos MySQL con compresión y limpieza automática.
Parsea logs de Apache/Nginx y genera estadísticas de tráfico y errores.
Herramienta para testear endpoints de API y validar respuestas.
Comprime y optimiza imágenes batch con soporte para múltiples formatos.
Genera CSS personalizado a partir de variables y componentes reutilizables.
Lo que rompí hoy y cómo lo arreglé
Me pasé 3 horas debuggeando porque había un void loop() que se ejecutaba 127 veces por segundo...
Resulta que while(true) no es siempre una mala idea. Lo usé para un sistema de eventos en tiempo real.
Empecé con un simple countdown y terminé con un panel de control digno de la NASA (versión barata).
Conecté mi lámpara al Arduino. Ahora puedo apagarla desde el móvil. Lo logré, mamá.
47 requests fallidas después, descubrí que no estaba autenticado. Documentación: 0, Yo: 1.
Códigos de 16 dígitos aleatorios. No sé para qué los usaré, pero se ven profesionales.
¿Quieres hablar de algo cool?