LSD.JXE

From MIB-Helper.com Wiki
Revision as of 20:21, 18 January 2025 by Mr-fix (talk | contribs)
Jump to navigation Jump to search

Basics

Location

Variables

export MOUNT_DIR=
export MOUNT_APP_DIR=/mnt/app
export BASE_DIR=$MOUNT_APP_DIR/eso/hmi
export LSD_DIR=$MOUNT_DIR/ifs
export GRAPHICS_DIR=$BASE_DIR/graphics

lsd.sh flags

-DActivateAllCarMenus=true
-DSetMenuCoding=ACC:5,INT_LIGHT:5, (...) ,MKE:5,BCME:0
-DSetCarMenusVisible=true
-DOfficial_Release=true
-DSYNC_EARLY_RVC=true
-DWAIT_FOR_MAP_AVAILABLE=20000
-DWAIT_FOR_AUDIO_TIMEOUT=1
-DWAIT_FOR_SDS_AVAILABLE=1
-Dmedia.config.usb=installed
-Dmedia.config.aux=installed
-Dmedia.config.tv=installed
-Dmedia.config.cd=installed
-Dmedia.config.dvd=notinstalled
-Dtv.startup.config.force.enable=true
-DdisableRRDforPOI=true
-DActivateNaviDebugPopup=true
-DenableNLU=true"
-DsdsPauseActive=false
-DsdsLogicalPopup=true
-DexternalSDS=true
-DenableGEM=true
-DIS_PRODUCTION_MODE=true
-DEOLFLAG_IMPORT_MEDIA_DATA=1
-DEOLFLAG_RIPPING_MEDIA_DATA=1
-DuseNewTtsClient=true
-DErrorDumpTriggerPort=6767
-DSWDLAutoRetries=0
-Dscreenshot.dirs=/fs/sda0;/fs/sdb0;/fs/usb0;/fs/usb1;/tmp
-DmyAudi.VIN=BAUIEE4HZ09012808
-DmyAudi.IMSI=2620225510
-DoverrideBtMediaDiagCode=true
-DbtIgnoreSpeedThreshold=true
-Dbluetooth.enableFastInquiry=true
-DScreenRes=1
-DScreenRes=4

LSD.jxe development mode

Warning! In my case developer mode caused screen freeze. I was able to recover the unit.

How to enable dev mode

DEV_ACTIVATED=$BASE_DIR/lsd/development_activated

Enable development mode by creating this empty file:

touch /mnt/app/eso/hmi/lsd/development_activated && sync && sync && sync

How to disable dev mode

rm /mnt/app/eso/hmi/lsd/development_activated && sync && sync && sync

What is dev mode?

If development mode is enabled, it will trigger couple things in LSD.JXE.

  • overwrites JAVA_HOME directory path.
if -f $DEV_ACTIVATED ; then
	if -d $BASE_DIR/lsd/jre ; then
		export JAVA_HOME=$BASE_DIR/lsd/jre
	fi
fi
  • loads bundles.properties file
if -f $DEV_ACTIVATED ; then
  VMOPTIONS="$VMOPTIONS -Dlsd.bundles=$BASE_DIR/lsd/bundles.properties"
fi
  • sets dev_mode variable for hmi logic, sets path to external hmi.zip boot class if it exists
#development mode
if -f $DEV_ACTIVATED ; then
	echo "######################################"
	echo "#     DEVELOPER MODE ACTIVE          #"
	echo "######################################"
	echo "BASEDIR = $BASE_DIR"

    VMOPTIONS="$VMOPTIONS -Ddev_mode=true"

	##
	## hmi.zip classpath
	##
	HMI_ZIP=$BASE_DIR/lsd/hmi.zip
	if [ -f "$HMI_ZIP" ]; then
		BOOTCLASSPATH="$BOOTCLASSPATH:$HMI_ZIP"
	fi

	# use JXE from basedir (eso/hmi) if it exists
	if -f $BASE_DIR/lsd/lsd.jxe ; then
		LSD_JXE=$BASE_DIR/lsd/lsd.jxe
	fi
fi
  • outputs diagnostic info
#Diagnosis output in development mode:
if -f $DEV_ACTIVATED ; then
	echo "JAVA_HOME=$JAVA_HOME"
	echo "VMOPTIONS=$VMOPTIONS"
	echo "BOOTCLASSPATH=$BOOTCLASSPATH (plus lsd.jxe)"
	echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
fi
  • executes this
if -f $DEV_ACTIVATED && -f "$HMI_ZIP" ; then
	# start hmi.zip
	info "starting j9 with $HMI_ZIP"
	$J9 $VMOPTIONS -Xbootclasspath:$BOOTCLASSPATH de.dreisoft.lsd.LSD &
else
	if -f "$LSD_JXE" ; then
		# start lsd.jxe
		BOOTCLASSPATH="$BOOTCLASSPATH:$LSD_JXE"
		info "starting j9 ...."
		$J9 $VMOPTIONS -Xbootclasspath:$BOOTCLASSPATH -jxe:$LSD_JXE &
	else
		echo !!!!!  lsd.jxe not found !!!!!
	fi
fi

Tweaks

Google Earth / Satellite View license bypass

Not working. Passing flag will only remove the popup warning about invalid license. Validation is done on server side.

Apple Siri / Google Assistent patch

Not 100% sure, but this might disable the SDS popup about external SDS when using Siri/Assistant. Will try it soon.

VMOPTIONS="$VMOPTIONS -DsdsLogicalPopup=false"

Touchpad input rubberband disable

Not 100% sure, but this might disable inertion of user input from the touchpad (map scrolling, balance/fader setting)

touch /mnt/app/eso/hmi/disableRubberbandCrosshair && sync && sync && sync

Car Menus override

//TODO