Releases: EMoyaP/BMW-E87-iDrive
Release list
BMW E87 iDrive v1.24.2
v1.24.2
- Base local para límites DGT, radares fijos/tramo, zonas INVIVE y gasolineras de Alicante.
- Prioridad segura: DGT por vía/sentido, OSM
maxspeedy recomendación azul por clase solo cuando no hay límite explícito. - Actualización guiada con progreso y consolidación local.
- QA reproducible de rutas GPS y corrección del respaldo offline de radares.
La app sigue siendo una aplicación normal y de solo lectura: no transmite CAN, no escribe UART ni cambia funciones OEM.
iDrive 1.16.2 · GPS y diagnóstico reproducible
Cambios principales
- Corrige el inicio y la reanudación del proveedor GPS en la radio.
- Mejora la coincidencia offline de límites con la geometría completa de las vías OSM.
- Corrige y valida la importación provincial del inventario DGT de radares fijos y de tramo.
- Añade un selector opcional, desactivado por defecto, para incluir coordenadas GPS en los logs de debug.
- Refuerza la exportación USB y el registro de proveedor, precisión y resultados de búsqueda local.
Instalación
Descarga iDrive-v1.16.2-definitiva-debug.apk, cópiala a la memoria USB e instálala desde el launcher normal de la radio.
APK de diagnóstico firmada en modo debug para pruebas en la unidad física. La integración OEM se mantiene pasiva: no transmite CAN ni escribe UART.
v1.15.2 — local speed guidance and bilingual documentation
Versión de pruebas para la radio de referencia.
Cambios principales:
- velocímetro E87 con escala real 0–260, aro de progreso fino y límite local marcado en naranja;
- naranja solo al superar un límite OSM local verificado; sin límite confirmado, la velocidad permanece verde;
- búsqueda de límite en SQLite local con cada fix GPS de conducción (aprox. 1 s), sin Internet durante la marcha;
- coincidencia GPS/OSM más estricta: ante una vía ambigua muestra —;
- README profesional en inglés y castellano, con selector de idioma y capturas de panel, herramientas, permisos y actualizaciones.
APK debug: 5,104,889 bytes
SHA-256: 286FB67743C0F4C922526DD95CC5594A0E602593FDAFDA18EA1C395DC8566312
La APK está firmada para pruebas; no sustituye el launcher ni transmite CAN/UART.
iDrive 1.15.1 · actualizaciones automáticas
- Actualización automática de gasolineras cuando Android publica Internet.\n- Límites OSM locales por provincia GPS: Alicante, Murcia, Valencia y Albacete.\n- Cadencia independiente de 24 horas por provincia; Alicante reciente no bloquea Murcia, Valencia ni Albacete.\n- El panel de actualizaciones muestra la última actualización satisfactoria de precios y límites.\n- APK debug firmada para pruebas; no reemplaza el launcher ni transmite CAN/UART.
iDrive v1.13.5 · validación de señales y USB DEBUG
CHANGELOG
1.13.5 — 16/08/2026
- Se corrige el inspector CAN para ocultar los sentinelas OEM
Integer.MIN_VALUEy su equivalentefloat; ya no se
interpretan como luces de emergencia, puertas abiertas o cinturones sin abrochar. - Se corrige la escritura SAF de USB DEBUG: el informe usa el modo estándar
wdel proveedor de documentos, compatible
con los selectores de almacenamiento de estas radios. - Los estados de puertas y cinturón procedentes de
CabinInfoquedan en modo observación hasta validar en esta unidad
el significado de sus valores 0/1. La fila inferior conserva únicamente estados publicados por una fuente verificada. - La velocidad valida discrepancias entre CAN, JCRK01/CYA y GPS para rechazar una muestra CAN estancada de 14 km/h
cuando el resto de fuentes confirma que el vehículo está parado. EXPORTARdentro del diagnóstico guarda ahora directamente en la carpeta USB autorizada el informe y el registro de
sesión; si no hay carpeta autorizada, abre el selector USB. Se mantiene la copia interna de recuperación.- La radio muestra
Sin información RDScuando solo está disponible la frecuencia, sin el texto técnico de procedencia. - La lectura multimedia busca también sesiones/notificaciones estándar de Spotify y SpeedPlay cuando existen; los
controles solo se habilitan si Android publica acciones compatibles. - El acceso de gasolineras intenta también redes IP Android con capacidad INTERNET aunque la radio no las marque como
validadas, conservando caché y límites de tiempo si la petición falla.
1.13.4 — 16/08/2026
- Se añadió al diagnóstico el botón
DATOS CAN EN VIVO · FUENTES. - El modal permite cambiar entre
CAN OEM,JCRK01 / CYA,Android AutomotiveyGPS, actualizar la lectura cada
segundo y mostrar u ocultar valores cero sin modificar la selección automática del ordenador de a bordo. - CAN OEM muestra los campos completos de
DashBoardInfo,CabinInfoyLightInfoque la aplicación ya tiene
verificados en la APK de la unidad, incluyendo puertas, cinturones, ventanas, techo, combustible, temperaturas y
pedales. Se dejan fuera getters cuyo formato de respuesta no está confirmado. - El modo por defecto oculta ceros para facilitar la correlación de señales activas; se puede activar
Mostrar 0para
comparar el estado completo.
1.13.3 — 16/08/2026
- Se integró la pista del home OEM: el estilo original que muestra el coche recibe sus datos desde
com.can.activity,
cuyo contrato exportado publicaICanUI -> CanBusManager -> ICanBus. - La aplicación enlaza ese servicio solo si ya está activo, sin
BIND_AUTO_CREATE, y lee de forma pasiva
getDashBoardInfo,getCabinInfoygetLightInfo. Se incorporan velocidad, autonomía, consumo medio, RPM,
temperatura exterior, refrigerante, puertas, intermitentes y cinturones cuando la unidad los expone. - La prioridad queda: CanBusManager OEM, CarService Jancar, Android Automotive público y GPS solo para velocidad.
Se conserva el registro de procedencia y de los valores crudos para validar el resultado en la radio. - QA superada con tests unitarios, Lint y compilación debug. La validación final del Binder requiere probar la APK en la
unidad con el servicio CAN OEM activo; si el servicio no está publicado, se mantienen los respaldos anteriores.
1.13.2 — 16/08/2026
- Se verificaron en las APK exportadas de esta unidad los contratos Binder de
CarServiceyRadioService. El lector
de radio usa únicamentegetFreq,getBandygetPSText; el ordenador de a bordo conserva los getters Jancar
confirmados, Android Automotive público y GPS como fuentes ordenadas, sin iniciar servicios OEM ni escribir buses. - La velocidad GPS incorpora una estimación prudente entre posiciones GPS cuando el receptor no publica
speed.
Cada campo registra qué fuente fue finalmente seleccionada o si ninguna ruta ofreció un valor. - Se eliminó el falso estado de neumáticos: el getter correspondiente de este firmware devuelve siempre cero y no
constituye evidencia de presión correcta. Los avisos verdes se basan solo en informes OEM realmente publicados. - La tarjeta de radio puede mostrar banda, frecuencia y texto RDS/PS publicados por el servicio OEM. Como el contrato
no incluye un estado remoto de encendido, el diagnóstico advierte que puede tratarse de la última emisora sintonizada. - El lector multimedia vuelve a enlazar el
NotificationListenerService, enumera sesiones/notificaciones activas y
usa metadatos y controles únicamente cuando SpeedPlay publica unaMediaSessionAndroid estándar. - Las gasolineras aceptan cualquier red que Android publique con
INTERNETyVALIDATED, aunque no sea la red
predeterminada. Esto incluye Bluetooth PAN si la radio lo crea; la aplicación no puede activar el tethering del
teléfono ni convertir por sí sola una conexión Android Auto en acceso IP. - Se inspeccionó el APK exacto de SpeedPlay: no expone un Intent, URI o comando verificable para enviar un destino a
la proyección Android Auto. Las gasolineras abren Google Maps local y el diagnóstico documenta esta limitación. - Cada inicio de proceso sobrescribe un registro de sesión acotado a 512 KiB, sin coordenadas. Anota proveedores,
valores crudos, fuente elegida, red, radio, multimedia y errores;USB DEBUG, la exportación OEM y la completa lo
guardan además comoe87_runtime_session_YYYYMMDD_HHMMSS.log. - QA superada: pruebas unitarias, Lint y compilación debug con SDK Android disponible.
1.13.1 — 16/08/2026
- Se integró un adaptador de solo lectura para el
CarServiceJancar identificado en la APK exacta de la unidad. Usa
únicamente transacciones getter verificadas, no crea el servicio, no registra callbacks y no escribe CAN, MCU o UART. - El ordenador de a bordo prioriza velocidad Jancar y puede leer consumo, RPM, autonomía y temperatura exterior;
Android Automotive público y GPS permanecen como fuentes alternativas con caducidad acotada. - La barra inferior añade marcha atrás y mantiene ocultos los estados normales. El nuevo botón de listado abre avisos
OEM/TPMS y mantenimiento, con estado azul, verde o naranja según disponibilidad y alertas reales. - Multimedia prioriza la sesión de SpeedPlay/Android Auto y habilita play/pausa, anterior y siguiente únicamente si la
sesión anuncia las acciones estándar correspondientes. La radio conserva un botón seguro para abrir la app OEM
cuando no publica metadatos. - GPS escucha proveedores GPS, red y pasivo. La tarjeta de gasolineras muestra la hora local de actualización y permite
forzar un refresco no bloqueante mediante↻. - Diagnóstico incorpora
PERMISOS, con estado de ubicación, Bluetooth y acceso multimedia, solicitud de permisos,
apertura del panel de escucha de notificaciones y acceso a los ajustes de la aplicación. - La versión se ajusta al hardware real Android 13/API 30 observado, manteniendo compilación y target API 35.
1.12.0 — 16/08/2026
- Las cuatro capturas físicas identificaron una unidad Rockchip
rk3326_r/rk30sdk, API efectiva 30, ABI
armeabi-v7a, 4 GB de RAM, heap de 192 MB y 42,4–45,0 MB PSS. La app diferencia ahora la etiqueta de firmware
Android 13/15 de la compatibilidad real Android 11/API 30. - El diagnóstico inicial se sustituyó por un resumen legible en la pantalla de 9 pulgadas. El informe completo sigue
disponible al exportar o compartir y añade autoridades, permisos, procesos y componentes OEM detallados. - Se añadió
EXPORTAR DATOS OEM: con confirmación y una carpeta SAF autorizada guarda el inventario y copia los APK
instalados relacionados con CAN, vehículo,CarService, cluster, MCU o marcha atrás. La extracción no carga APK,
no enlaza servicios, no consulta URI desconocidas y continúa si un archivo individual falla. - La selección incluye tanto los núcleos observados (
com.can.activity,com.jancar.services, launcher, radio y
ajustes) como otros paquetes detectados por sus componentes. La copia está limitada a 100 MB por archivo y 250 MB
por sesión; los binarios OEM no se publican en el repositorio. - El informe separa ordenador de a bordo y GPS: muestra procedencia, edad y disponibilidad de velocidad, autonomía,
consumo, temperatura exterior y temperatura de motor; del GPS registra proveedor, activación, precisión y velocidad,
pero omite coordenadas. - La sonda AAOS pública reconoce también
RANGE_REMAINING(metros convertidos a km) e
INSTANTANEOUS_FUEL_ECONOMY(L/100 km). En la radio Jancar convencional no se usan como sustituto del puente OEM. - La cuarta fila del ordenador de a bordo utiliza temperatura exterior en vez de la consigna del climatizador.
- La investigación encontró implementaciones públicas del Binder de radio Jancar, pero no el contrato exacto de
CanBusContentProvider/CarService; por seguridad todavía no se inicia ni enlaza ninguno. - La pantalla presenta dos acciones distintas:
EXPORTAR RADIO / CANpara una extracción rápida y
EXPORTACIÓN COMPLETApara inventariar y copiar todos los APK/splits legibles. La segunda admite hasta 16 GB en la
USB de 20 GB indicada y mantiene un límite FAT32-compatible de 2 GB por archivo. - El inventario completo añade fingerprint, build, parche, kernel, ABI, funciones, bibliotecas, paquetes de
actualización y resolución pasiva deSYSTEM_UPDATE_SETTINGS. Copia además losbuild.prop,prop.defaulty
certificados OTA públicos que Android permita leer; nunca intenta particiones, datos privados, MCU o firmware Hiworld. - La barra
ESTADO DEL VEHÍCULOdeja de dibujar cinco estados vacíos. Solo aparecen estados reales y activos: luces
encendidas, freno aplicado, cinturón sin abrochar y puertas abiertas. Estados normales o no disponibles quedan
ocultos; una llave inglesa compacta y fija a la derecha abre el diagnóstico y sus herramientas.
1.11.1 — 15/08/2026
- Los candidatos medios y fuertes del asistente
USB DEBUGse guardan de forma atómica en el almacenamiento privado
de la...
iDrive v1.13.4 — inspector CAN en vivo
Esta versión añade el inspector independiente DATOS CAN EN VIVO · FUENTES dentro de Debug. Permite seleccionar CAN OEM, JCRK01 / CYA, Android Automotive o GPS, actualizar cada segundo y mostrar u ocultar valores cero.
Para CAN OEM se muestran los campos completos de DashBoardInfo, CabinInfo y LightInfo verificados en la APK exportada de la radio. La pantalla es solo de lectura y no cambia la prioridad automática del ordenador de a bordo.
QA: clean, testDebugUnitTest, lintDebug y assembleDebug correctos. APK debug verificada con apksigner v1/v2. SHA-256: 9533944861E8C7EAC6DCD5BE19CA2DFB03BE1D39C4499D5D2751A6B36402DD20.
iDrive v1.13.3 — lectura OEM CanBusManager
Esta versión incorpora lectura pasiva del servicio OEM com.can.activity mediante ICanUI -> CanBusManager -> ICanBus. Lee velocidad, autonomía, consumo medio, RPM, temperatura exterior, temperatura del refrigerante, puertas, cinturones e intermitentes cuando la unidad los expone. No inicia el servicio, no escribe CAN/UART y mantiene Jancar/Android Automotive/GPS como respaldo.
QA: clean, testDebugUnitTest, lintDebug y assembleDebug correctos. APK debug verificada con apksigner v1/v2. SHA-256: DA9D75FD72562B1422360A1792CCFC6F8E6E731E6291FA10F93CC957E27358CE.
La aceptación final del Binder requiere probarla en la radio con el home OEM activo.
iDrive 1.13.2 — diagnóstico de sesión y redes Android
Versión de prueba para la unidad Rockchip rk3326/API 30. Añade registro de sesión exportable, selección de cualquier red Android validada (incluido Bluetooth PAN si el sistema la publica), lectura pasiva verificada de CarService/RadioService y diagnóstico detallado de SpeedPlay/MediaSession. No transmite CAN/MCU/UART ni activa protocolos OEM.
iDrive v1.13.1 · integración pasiva Jancar
APK de pruebas firmada para la unidad BMW E87 Rockchip RK3326 / Android API 30.\n\nIncluye integración Jancar de solo lectura, estados y avisos contextuales, controles MediaSession condicionados, GPS/gasolineras con refresco y centro de permisos. No escribe CAN, MCU ni UART. La radio OEM solo muestra emisora cuando la publica mediante APIs Android estándar.\n\nSHA-256: 8994E832DC991F1977DC2DE450621A902B2BEEF08AE9EE175AB73586C4718CF7
iDrive 1.12.0 · validación RK3326
Versión de validación para la unidad física Rockchip RK3326/API 30. Incluye barra de estado contextual con acceso por llave inglesa, diagnóstico legible, exportación enfocada Radio/CAN y exportación completa de inventario/APK públicos a una USB autorizada. La app sigue siendo una aplicación normal: no sustituye el launcher OEM y no transmite CAN, no escribe UART ni modifica MCU/Hiworld. APK firmada con clave debug para pruebas; no es una versión de producción.