Ajustes y avisos de actualización
Esta página cuenta lo que se configura en la pestaña Config de la cinta, salvo las placas:
- Settings: las rutas del compilador y de las VM, los avisos de actualización, los proveedores de IA y la disposición de las ventanas.
- Windows: la VM de Windows de cada proyecto, con MQTT y el tamaño de la ventana.
- Updates: mira si hay una versión nueva.
Y además, la casilla Line numbers, de la pestaña Build.
ESP32 abre ESP32 Tools, con las placas del proyecto, y About, la versión del IDE y los créditos.
Settings
Config › IDE › Settings abre la ventana de los ajustes del IDE. Son del IDE, no del proyecto: valen para todos.
Los cambios se aplican y se guardan al pulsar Apply config: hasta entonces, lo que escribas no cuenta. Una ruta elegida con ... se aplica al momento, pero tampoco se guarda sin Apply config.
Las rutas
| Campo | Qué es | De serie |
|---|---|---|
| Project Path | La carpeta del proyecto abierto. Solo se lee: sin proyecto, dice «(No project loaded)». | |
| JARU Compiler | El compilador, JaruCompiler.exe. | Compiler\JaruCompiler.exe, en la carpeta del IDE |
| Windows VM | La VM de Windows, JaruVM.exe. La usan Run, Debug y el Play del editor de escenas. | Compiler\JaruVM.exe, en la carpeta del IDE |
| ESP32 VM | La carpeta del firmware de la VM y de las herramientas de las placas, que usa ESP32 Tools. | Compiler\ESP32, en la carpeta del IDE |
| Check for updates on startup | Mirar al arrancar si hay una versión nueva (ver «Avisos de actualización»). | Marcada |
..., al lado de cada ruta, abre el diálogo para elegirla. Si una ruta no existe, su casilla sale vacía.
AI Agents
Los proveedores de IA del generador de drivers I2C (Generar un driver con IA).
| Campo | Qué es | De serie |
|---|---|---|
| Default provider | El proveedor: fake, openai (OpenAI) o gemini (Gemini). fake no llama a ninguna IA. | fake |
| Configure provider | De qué proveedor son los tres campos de debajo: openai o gemini. Cada uno guarda los suyos. | openai |
| Model | El modelo del proveedor. | gpt-5.1 en OpenAI y gemini-2.5-flash en Gemini |
| API key | Tu clave del proveedor. Sale con asteriscos. | Vacía |
| Max output tokens | El tamaño máximo de cada respuesta de la IA. | 4096 |
| I2C agent provider | El proveedor del generador de drivers. inherit usa el de Default provider. | inherit |
| I2C model override | Otro modelo, solo para el generador. Vacío, usa el de Model. | Vacío |
| Config file | El fichero donde se guarda todo esto. Solo se lee. |
Max output tokens solo cuenta por encima de lo que necesita el agente: al buscar en la web usa entre 8.192 y 16.384, y al escribir el driver, entre 16.384 y 65.536. Con el valor de serie, usa los mínimos.
AI Agents se guarda en %LOCALAPPDATA%\JaruIDE\Agents\jaru-agents.json, con la clave tal cual. No compartas ese fichero.
Load Layout y Save Layout
La disposición de las ventanas del IDE: qué paneles hay abiertos y dónde están acoplados.
- Save Layout la guarda en
%LOCALAPPDATA%\JaruIDE\layout.xml. - Load Layout vuelve a la que guardaste.
El IDE arranca con esa disposición. Al cerrarse no la guarda: si mueves los paneles y no pulsas Save Layout, la próxima vez salen como estaban. Si no hay layout.xml, el IDE copia el de su carpeta de instalación, el de serie.
Dónde se guarda
Las rutas, Check for updates on startup y lo que elijas en los avisos de actualización van en %LOCALAPPDATA%\JaruIDE\ide_config.xml (C:\Users\<tú>\AppData\Local\JaruIDE). AI Agents, en jaru-agents.json, que dice Config file.
La configuración de Windows
Config › Platform › Windows abre Windows Tools: cómo arranca la VM de Windows con el proyecto abierto. Es del proyecto: Save Config la guarda en Config/windows.cfg, dentro de él.
Al pulsar Run con el destino Windows, el IDE guarda lo que tenga la ventana, aunque no hayas pulsado Save Config, y lo copia a Build/flash/boot.cfg, que es lo que lee la VM al arrancar. Un proyecto sin windows.cfg arranca con los valores de serie.
Device Identity
Device Name es el nombre del dispositivo. De serie, el del PC; el botón de al lado lo vuelve a poner. La VM de Windows lo guarda, pero hoy no lo usa.
MQTT
El broker MQTT al que se conecta la VM de Windows, para el módulo MQTT. Con Enable MQTT apagado, que es lo de serie, la VM no se conecta y los demás campos no se pueden tocar.
| Campo | De serie | En la VM de Windows |
|---|---|---|
| Enable MQTT | Apagado | Encendido, la VM se conecta al broker al arrancar: espera hasta 3 segundos antes de empezar el programa y, si no conecta, lo sigue intentando mientras el programa corre. |
| Broker y Port | test.mosquitto.org y 1883 | El servidor y el puerto del broker. |
| Client ID | JARUWin11_01 | El nombre con el que entra en el broker. Dos VMs con el mismo en el mismo broker se echan la una a la otra. |
| User y Password | Vacíos | El usuario y la contraseña del broker. Con User vacío, entra sin usuario. |
| QoS y Retain | 0 y apagado | No los usa. |
| Will Topic, Will Message, Will QoS y Will Retain | iotdev/ESP32C11FB6082801/status, {"connected": false}, 0 y apagado | No los usa. |
| Clean Sessions | Encendido | Se conecta siempre con sesión limpia. |
| Time Send, Send Status e Interval ms | Encendido, encendido y 60000 | No los usa. |
Client ID y User forman también el tema de MQTT.pubinfo(), <User>/<Client ID>/device: con User vacío, /JARUWin11_01/device. Si el broker no acepta la conexión, la consola de la VM lo dice («did not accept the connection; check Client ID, User and Password») y lo vuelve a intentar cada 5 segundos. Las placas tienen su propia configuración, en ESP32 Tools.
Los proyectos guardados con una versión anterior llevan User iotdev y una contraseña de ejemplo, que la VM de antes no usaba. test.mosquitto.org rechaza ese usuario: si el proyecto usa MQTT con ese broker, deja User vacío.
Password se ve en claro, y Config/windows.cfg la guarda tal cual, dentro del proyecto: si lo compartes o lo subes a Git, va con él.
Display
Window Scale agranda la ventana de la VM: x1, el de serie, es el tamaño del programa, y x2, x3 y x4, el doble, el triple y el cuádruple. El programa no cambia: sigue con el tamaño de Display.open, y cada píxel se pinta más grande, sin suavizar.
Si la ventana no cabe en la pantalla, la VM baja la escala hasta que quepa, y lo dice en su consola: «Window scale x3 does not fit on screen, using x2». Las placas no la usan.
La casilla Line numbers
Build › Target › Line numbers dice si el programa compilado (el .jxr) lleva los números de línea del código.
- Marcada, lo de serie: un error en ejecución dice en qué línea ha pasado.
- Sin marcar: el programa ocupa menos RAM en la placa, pero los errores en ejecución no dicen la línea. Al compilar, el Output lo avisa: «Line numbers: off. Runtime errors will not show the line.»
Es del proyecto, y se guarda en él al momento (line_numbers, en el .jpr). Solo se puede cambiar con un proyecto abierto.
Debug y el Play del editor de escenas compilan siempre con los números de línea. Si el programa compilado no casa con la casilla, por ejemplo después de un Debug, Run lo vuelve a compilar antes de ejecutarlo.
Avisos de actualización
JARU IDE te avisa cuando sale una versión nueva. Mira si la hay:
- Al arrancar, después del asistente de proyectos, si está marcada Check for updates on startup en Settings (lo está de serie). Mira una vez, en segundo plano, y si no puede (sin conexión, por ejemplo), no dice nada.
- Al pulsar Config › IDE › Updates. Entonces siempre contesta: con el aviso, con «You are using the latest version of JARU IDE.» o con «Could not check for updates:» y el error.
El aviso de versión nueva
Sale si la versión publicada es más nueva que la tuya. Dice cuál hay, cuál tienes y qué trae. Abajo, What's new in … abre las notas de esa versión en el navegador, sin cerrar el aviso.
- Download abre la página de descarga en el navegador. El aviso vuelve en cada arranque hasta que instales la versión nueva.
- Remind me later lo calla 7 días. Si antes sale otra versión, avisa de esa.
- Skip this version lo calla hasta que salga una versión más nueva que esa.
Si lo cierras con Esc o con la X, vuelve en el siguiente arranque. Updates lo enseña aunque lo hayas callado.
Los avisos importantes
Una versión nueva puede venir marcada como importante. Entonces el aviso lleva el icono de advertencia, se titula Important update: JARU IDE …, pide que la instales cuanto antes y solo tiene Download y Close. Sale en cada arranque, aunque antes hubieras saltado o pospuesto esa versión.
Otros avisos
El IDE también enseña avisos sueltos de la web de JARU, para algunas versiones o entre unas fechas: un título, un texto y, a veces, More info, que abre una página. Cada uno sale una vez; los importantes, en cada arranque.
Con Check for updates on startup sin marcar, al arrancar no sale ningún aviso, tampoco los importantes: solo al pulsar Updates.
Qué datos envía el IDE
Para los avisos, el IDE pide un fichero: https://jarulang.com/version.json. La petición va vacía: no lleva tu versión, ni un identificador, ni nada de tus proyectos. El fichero dice cuál es la última versión y qué avisos hay, y es tu IDE el que lo compara con su versión y decide qué te enseña. Como en cualquier conexión, el servidor ve tu dirección IP.
Lo pide al arrancar, si está marcada la casilla, y al pulsar Updates. Los enlaces de los avisos (Download, What's new in … y More info) solo se abren si los pulsas, en tu navegador, y solo si son https://.
El generador de drivers con IA es aparte: con un proveedor de IA, manda los datos del driver a ese proveedor (Generar un driver con IA).
Problemas conocidos
- Debug y el Play del editor de escenas no usan la configuración de Windows. Solo Run la copia a
Build/flash/boot.cfg. Debug y el Play arrancan la VM con elboot.cfgque ya haya: el del último Run en Windows, o el que hizo ESP32 Tools para una placa, sin Window Scale. Haz antes un Run en Windows. - La VM de Windows no usa QoS, Retain ni los campos Will de MQTT: publica y se suscribe con QoS 0 y sin retener (ver «MQTT»).
Todos los problemas conocidos de JARU, juntos, están en Problemas conocidos.