Mazda v74 Infotainment Tweaks and Terminal

I stumbled across the following video that linked a simple way to tweak the CMU disabling the speed lock using a simple javascript payload on a USB stick.
Unlock Your Mazda Connect Touchscreen While Driving
This works, and it seems also that this allows for Terminal access.

The video links to a GitHub repository, mzd-connect-1-root , which contains the necessary deployment as described in the video
I found what may be the originator of the method here: translated and original archive (uses a different method to deploy, contains useful video links)

It looks like the tweak 'launcher' takes advantage of some aspect of the media player as the repository contains 4 prepared MP3's with titles that include a short amount of HTML with a javascript onload function that runs a payload JavaScript file (run.js) after you select your USB device in the media player. The 4 MP3's are used to ensure one of them references the correct USB device (sda1, sdb1, sdc1, or sdd1) location but they all reference the same file. Example MP3 title for a.mp3 below:
</span><iframe onload="utility.loadScript('../../../mnt/sda1/js/run.js')"></iframe><span>

The payload run.js file creates a menu as an IFRAME (which renders over top of the DTC menu) and the top option of 'Open terminal' and several other options. The 'Open Terminal' option, when clicked, will launch the DTC menu 11 which is now a hidden option in v74, but after searching I found this was formerly open to regular users that managed to enter the DTC menu. This option pops up a 3x2 display of buttons that launch pre-defined scripts which include the toggling of speed restriction. The options available include the following:
[hdcp TOGGLE]
---set_hdcp_config.sh : enable/disable HDCP, region dependant
[speed TOGGLE]
---set_speed_restriction_config.sh
[devmode TOGGLE]
---developer_mode.sh
[cpugauge TOGGLE]
---jci-cpugauge.sh
[display TOGGLE]
---set_display_config.sh : *** don't run it will disable the screen *** set display mode to jci or visteon
[reset map]
[reset vip]
[usb driver]
---usb_drivers.sh : add to kernel all usb drivers (hid, usbhid, sound, midi, audio)
[tausim toggle] (TAU=tuner amplifier unit?)
---jci-tausim.sh : sets TAU simulation to on or off
[terminal]
---run-terminal.sh : run an in-vehicle infotainment (IVI) Wayland's Weston terminal with keyboard map defined in /usr/share/wayland/evdev-pc105-us.xkm and accessed by USB-hid plugged keyboard and mouse
[wifi ap toggle]
---jci-wifiap.sh : creates an open access point (with no password) which SSID is named CMU-XX:XX:XX:XX:XX:XX (MAC address) on interface wlan0 192.168.53.1/24 [serving dhcp *.20 to *.254] and also on eth0 192.168.0.1/24 [serving dhcp *.20 to *.254]
[usertty toggle]
---jci-log.sh :start a syslog daemon, can also send to a remote syslog client
[LVDS SPEED TOGG] <-enables screen touch while driving
---set_lvds_speed_restriction_config.sh
[*.vcf FILE TOGGLE]
[delBDSFiles TOGGLE]
[NNG DEBUG TOGGLE]
---set_nng_debug.sh
[HCI LOG TOGGLE]
[NAVIGATE TOGGLE]
Note that I did edit run.js before deploying and deleted the following on line 89 as my vehicle is in NA and didn't want to screw anything up.
action(XSSactions, 'Set UI region: EU', setXSSRegion, view) <--deleted from run.js

I was able to get into the 'terminal' option and plugged in a USB keyboard (it worked!), and ran ls to show the contents of the filesystem. I didn't do much more than that before exiting as I didn't want to make it a brick by accident.
terminal.webp


After reading some of the contents of the AIO tweaks it seems they end up replacing files which I have seen in the .up distribution. One of the targets in on my list is the fastboot tweak which I believe is via editing systemApp.js disclaimertime to a lower value like 500ms. I am a bit hesitant to try changing files here though without a bit more research as the recovery may be difficult.

Does this terminal access look generally very useful or not really? Can this be used to get AIO tweaks on v74?
 
I also installed AIO tweaks few days ago and I've noticed the Europe Region in few files. Do you happen to know what would I have to change "EU" with for North America region? NA maybe? And another question, is it possible, once i get access to the terminal, to copy on the USB all the files from the CMU?
 
Does this terminal access look generally very useful or not really? Can this be used to get AIO tweaks on v74?
I have AIO installed on the v74. Once you create your configuration, go in the " _copy_to_usb" file and look for "run.sh" file. Open it with notepad and look for "-eq 70". The line looks like this:

elif [ $_VER -eq 70 ]

Change 0 with 4 => elif [ $_VER -eq 74 ]

Save and close the run.sh file. Then you transfer everything you need to the USB stick, ready to install it on your car. That's how I did it and it worked. I followed to the letter some YouTube guy instructions and rest is history. So far no issues.
 

Attachments

  • System update.webp
    System update.webp
    67.1 KB · Views: 22
Played a bit with AIO. Rearranged the audio sources, changed the background picture, added the date on top of the time, changed some colours.
 

Attachments

  • IMG_0260.webp
    IMG_0260.webp
    82 KB · Views: 20
  • IMG_0261.webp
    IMG_0261.webp
    65.8 KB · Views: 21
  • IMG_0259.webp
    IMG_0259.webp
    69.1 KB · Views: 20
  • IMG_0262.webp
    IMG_0262.webp
    73.8 KB · Views: 21
So far works good. It doesn't seem slow. I'd say that there is no difference between stock OS and AIO/tweaked OS. I discovered one issue accidentally: for some reason, all the Mazda dealers disappeared from the map's database. Just did a map update last night and it's the same result, no more dealers in the nav database. I must have installed something from AIO that screwed with the Mazda dealer names and addresses. Even more intriguing for me, today I helped a coworker to install AIO on his Miata. His map does have all the Mazda dealers in the database!
 

New Threads

Back