Jog displays y pantallas: qué se puede mapear y qué no
Las pantallas del jog muestran onda, BPM y tiempo, pero no las da el MIDI. Aquí está la frontera real, el caso que la demuestra y lo que implica cruzarla.
Hay una pregunta que aparece en todos los foros de mapping tarde o temprano: «mi controladora funciona, pero la pantalla del jog no hace nada; ¿cómo la mapeo?».
La respuesta corta es que no se mapea. Y la respuesta larga es más interesante, porque explica dónde está exactamente la frontera entre lo que un mapping puede hacer y lo que exige algo distinto.
Qué muestra la pantalla del jog
Conviene empezar sabiendo qué información vive ahí, para entender por qué no cabe en MIDI.
En la documentación oficial del CDJ-3000, la pantalla central del jog muestra la posición del playhead y la portada de la pista cargada, como recordatorio visual rápido. En controladoras suele añadirse la onda, el BPM y el tiempo restante.
Fíjate en la naturaleza de esa información: no son estados que cambian de vez en cuando, como un botón de loop. Son datos que se refrescan continuamente mientras suena la música. La onda se desplaza, el tiempo baja, el playhead avanza.
Ese detalle es la clave de todo lo que viene después.
Por qué el MIDI no llega hasta ahí
Dos razones, y las dos son estructurales:
- Ancho de banda. MIDI está pensado para mensajes cortos y esporádicos: «se ha pulsado un botón», «esta perilla se ha movido». Una onda en tiempo real exige un refresco constante, y eso no es lo que el protocolo hace bien. La documentación de VirtualDJ lo dice al explicar qué aporta HID: permite pantallas LCD extensas con líneas de texto sin los problemas de ancho de banda habituales de MIDI.
- El modelo de comunicación. En MIDI el controlador fuerza los mensajes aunque la aplicación no esté lista para procesarlos. En HID, el software pide los datos cuando puede atenderlos. Para un refresco continuo, el segundo modelo es el único sensato.
Y hay una tercera razón, más sutil, que aparece cuando miras cómo se ve esto desde dentro de un software: en la tabla de mapping de Traktor, los elementos ricos del equipo no aparecen como números que puedas escribir, sino como nombres de control —la documentación pone ejemplos como Left.Jog.Encoder— porque el dispositivo habla el protocolo propio del fabricante o HID.
Es decir: no es solo que el MIDI no llegue. Es que esos elementos ni siquiera se presentan como mensajes MIDI.
Qué se puede mapear por MIDI y qué exige protocolo aparte
La tabla deja la frontera clara. Y es una frontera amable: lo de arriba funciona igual aunque las pantallas estén apagadas. Por eso un controlador que «va a medias» suele ser, en realidad, un controlador completo al que le falta su capa HID.
| Elemento | Vía | Qué implica |
|---|---|---|
| Botones, pads, knobs y faders | MIDI | Se resuelve con un mapping normal. |
| LEDs de estado | MIDI | Asignaciones de salida, más manuales pero posibles. |
| Rotación del jog | MIDI | Funciona, con la resolución limitada del protocolo. |
| Onda en la pantalla del jog | HID + proceso auxiliar | Necesita datos binarios y refresco continuo. |
| Portada, playhead, BPM y tiempo | HID o protocolo del fabricante | Fuera del alcance de un mapping. |
| Desbloqueo de la interfaz de pantalla | Fuera del mapping | Permisos elevados y repetido en cada conexión. |
Lo primero sigue funcionando igual aunque las pantallas estén apagadas: por eso un controlador «a medias» suele ser un controlador completo sin su capa HID.
El caso que lo demuestra, con nombre y apellidos
Existe un proyecto comunitario sobre la DDJ-FLX10 que documenta esto mejor que ninguna teoría. Y lo primero que dice es demoledor:
La configuración solo con MIDI te da un controlador completamente funcional. Esta extensión añade las pantallas del jog, que vienen «de serie» con Serato o rekordbox.
Ahí está todo. El MIDI te da el controlador entero. Las pantallas no son «una parte que falta por mapear»: son otra capa, y es la capa que el software oficial del fabricante da por hecha porque tiene acceso a información que tú no tienes.
Qué hace cada parte
El proyecto separa el trabajo en dos piezas, y el reparto es muy instructivo:
El mapping MIDI se encarga de botones, LEDs, rotación del jog y efectos. Es decir, todo lo que ya sabías mapear. Pero además hace una cosa que no es un mapping: un handshake SysEx —un intercambio de mensajes de sistema exclusivo— que desbloquea la pantalla HID.
La capa HID lleva la pantalla. Un script envía cada 100 ms un paquete de estado con la posición del playhead, el tiempo restante y el BPM. Y un proceso auxiliar en Python hace el trabajo pesado: abre el dispositivo hidraw, lee los análisis de onda que el software ya tiene calculados, los convierte al formato de onda propio del fabricante y los sube al equipo, con un goteo periódico que mantiene vivo el búfer de onda del firmware.
Por qué hacen falta las dos piezas
Aquí está el detalle técnico más valioso de la guía, y explica por qué esto no se resuelve con un mapping por muy elaborado que sea.
El entorno de scripting de un software de DJ no puede:
- Leer ficheros binarios (los análisis de onda están comprimidos y en un formato propio).
- Descomprimir datos.
- Abrir endpoints USB con informes HID de tamaño arbitrario.
Ninguna de esas tres cosas es un capricho del programa: son límites del entorno en el que corre un script de mapping. Y las tres son necesarias para pintar una onda en una pantalla ajena.
Por eso hace falta un proceso aparte, con permisos elevados, fuera del software. Un mapping no puede salir de su caja.
Antes de intentarlo: qué implica el desbloqueo
Los proyectos de este tipo incluyen un paso que se llama desbloqueo del fabricante, y es lo que habilita la interfaz de pantalla, que de otro modo permanece cerrada.
No voy a explicar cómo se hace, y no es un descuido: la regla editorial de este bloque dice expresamente que en el terreno del acceso a interfaces cerradas se explica la arquitectura, el contexto y los riesgos, sin publicar instrucciones de evasión ni claves. Me parece la postura correcta, y además es la útil: lo que decide si esto te conviene no es el procedimiento, es lo que implica.
Lo que implica, según la propia documentación del proyecto:
- Exige permisos elevados. El proceso auxiliar necesita acceso al dispositivo a bajo nivel.
- Se repite en cada conexión del equipo. No es una configuración que hagas una vez: cada vez que enchufas, toca repetirlo.
- Requiere el software en modo desarrollador.
- Añade piezas que pueden fallar. Un mapping que va mal se arregla; un proceso en segundo plano que se cae en mitad de un bolo, no.
- Y está fuera de toda garantía y soporte. No es una función documentada como soportada: es un proyecto de interoperabilidad hecho por la comunidad.
Ese es el balance real. Para un laboratorio o para entender cómo funciona tu equipo por dentro, es fascinante. Para pinchar, son demasiadas piezas.
Qué esperar según el programa
Un resumen honesto, porque las expectativas se forman mal en este tema:
- Con el software oficial del fabricante: las pantallas funcionan y no haces nada. Están cubiertas por el protocolo propio, y ese es el motivo por el que «vienen de serie».
- Con otro software, por MIDI: tendrás el controlador completo y las pantallas apagadas. Botones, LEDs, jog, efectos. Todo menos la información visual.
- Con otro software, por HID nativo: depende de si ese software soporta el modelo concreto. Cuando lo soporta, es la vía limpia, sin proceso auxiliar.
- Con otro software, por HID con desbloqueo: es el caso del proyecto de la FLX10. Funciona, y es un ejercicio de interoperabilidad, no una solución de cabina.
Y el dato que cierra el debate por el lado del fabricante: Serato deja el Numark Dashboard —un dispositivo de pantallas— en la lista de accesorios que no se pueden remapear en absoluto. Cuando el propio fabricante excluye del mapping justo el producto cuya razón de ser es una pantalla, el mensaje es claro.
Errores frecuentes
- Buscar la pantalla en la lista de funciones asignables. No está ahí porque no viaja por MIDI.
- Concluir que el mapping está mal porque la pantalla está vacía. El mapping puede estar perfecto: lo que falta es otra capa.
- Confundir «no funciona» con «no se puede mapear». Funciona en el software oficial, y ese es el punto.
- Intentar refrescar una onda por MIDI. Es un problema de ancho de banda, no de esfuerzo.
- Montar un desbloqueo para un bolo. Un paso manual por conexión y un proceso en root no son un plan para una cabina.
- Dar por hecho que el soporte HID de tu software cubre tu modelo concreto. Se comprueba modelo por modelo, no por marca.
Siguiente paso
Con esto ya sabes dónde acaba el mapping y dónde empieza otra cosa: cuando el elemento no es un mensaje MIDI sino un protocolo, la única salida es entender ese protocolo. Y eso tiene nombre, tiene método y tiene reglas: es el reverse engineering del hardware de DJ, que es exactamente lo siguiente.
Preguntas frecuentes
¿Por qué la pantalla de mi controladora solo funciona en el software oficial?
Porque la pantalla no viaja por MIDI. Un mapping MIDI puede dar un controlador completamente funcional —botones, LEDs, jog y efectos— sin tocar las pantallas: esas van por HID o por un protocolo del fabricante.
¿Qué muestra la pantalla central de un jog?
En reproductores como el CDJ-3000, la pantalla del centro muestra la posición del playhead y la portada de la pista cargada. En controladoras suele añadirse la onda, el BPM y el tiempo restante.
¿Se puede conseguir que la pantalla funcione en otro software?
Técnicamente se ha hecho, pero no es un mapping: es un proyecto de interoperabilidad con capa HID, un proceso auxiliar y un desbloqueo del fabricante. Está fuera del alcance de un mapping y tiene implicaciones que conviene entender antes.
¿Qué es el desbloqueo del fabricante que aparece en esos proyectos?
Un paso previo que habilita la interfaz HID de la pantalla, que de otro modo permanece cerrada. Exige permisos elevados, se repite en cada conexión del equipo y no forma parte de ninguna función documentada como soportada. En esta guía se explica qué es y qué implica, no cómo se hace.
¿Por qué MIDI no puede con una pantalla?
Por ancho de banda y por modelo de comunicación. Una onda en tiempo real exige refresco continuo, y MIDI está pensado para mensajes cortos y esporádicos. Con HID el software entrega los datos cuando puede procesarlos, que es lo que hace viable un refresco constante.
¿Merece la pena intentarlo?
Para uso de laboratorio y para entender cómo funciona el hardware, sí. Para pinchar, no: añades root, un proceso auxiliar y un desbloqueo que hay que repetir, y eso son demasiadas piezas para una cabina.
Continúa aprendiendo
Si esto te suena a chino, empieza por aquí
Relacionadas
Fuentes
- Pioneer DDJ-FLX10 — Mixxx Jog Screen Mode (HID)
Fuente principal y la más reveladora. Se presenta como acompañante del mapping MIDI estándar y cubre la extensión HID de pantalla: hacer funcionar los LCD del jog de la FLX10 con ondas reales, BPM y tiempo. Afirma literalmente que la configuración solo MIDI da un controlador completamente funcional y que esta extensión añade las pantallas que vienen «de serie» con Serato o rekordbox. Documenta la arquitectura: el mapping MIDI se encarga de botones, LEDs, jog y efectos, y además hace un handshake SysEx que desbloquea la pantalla HID; un script aparte envía cada 100 ms un paquete de estado con posición de playhead, tiempo restante y BPM; y un proceso auxiliar en Python abre el dispositivo hidraw, lee los análisis de onda del software, los convierte al formato PWV5 del fabricante y los sube al equipo. Explica por qué hacen falta las dos partes: el entorno de scripting del software no puede leer ficheros binarios, ni descomprimir, ni abrir endpoints USB con informes HID de tamaño arbitrario. Requiere modo desarrollador y permisos elevados.
- CDJ-3000 — Reproductor profesional de DJ
Página oficial del producto que describe qué muestra la pantalla: la LCD del centro del jog muestra la posición del playhead y la portada, como recordatorio visual rápido de las pistas cargadas. Sirve para concretar qué información vive en esa pantalla y, por tanto, qué se pierde cuando el software no puede hablar con ella.
- Pioneer CDJ HID Protocol — CDJ Control (análisis de protocolo)
Documentación técnica del protocolo HID del CDJ. Describe el protocolo simple de entrada/salida usado para controlar los LEDs del CDJ y para detectar si el usuario ha interactuado con un control físico, y precisa que la comunicación en ambos sentidos usa una cabecera simple con tipos 0x20 (entrada) y 0x21 (salida), con una estructura de offsets fijos. Es el tipo de documentación que hace posible escribir soporte para hardware no soportado.
- VDJPedia — HID vs MIDI
Explica la razón técnica por la que las pantallas exigen HID: HID permite implementar pantallas LCD extensas con líneas de texto y que la aplicación las use sin los problemas de ancho de banda habituales de MIDI. Y describe el modelo que lo hace posible: en HID el software pide los datos cuando está listo para procesarlos, mientras MIDI fuerza los mensajes aunque la aplicación no pueda atenderlos.
- MIDI mapping with Serato DJ Pro
Aporta el caso de un dispositivo con pantalla que queda fuera del mapping por completo: entre los accesorios oficiales que no se pueden remapear en absoluto figura el Numark Dashboard, que es precisamente un dispositivo de pantallas. Refuerza la conclusión de que las pantallas no son terreno del mapping.
- How to Use the Controller Manager in Traktor
Muestra cómo se ve la frontera desde dentro de un software: la columna Mapped to presenta nombres de control en lugar de números cuando el dispositivo habla el protocolo propio del fabricante o HID, y pone como ejemplos nombres como Left.Jog.Encoder. Es decir, los elementos ricos del equipo aparecen como controles con nombre, no como mensajes MIDI que puedas escribir a mano.
Última revisión técnica: 29/09/2026. Si detectas un error, indícalo para corregirlo.