Support and discussion for all of Akai’s modern standalone MPCs including the MPC X / X SE, MPC Live 1, 2 & 3, MPC One / One+, MPC Key 37/61.
By Masi Sun Mar 01, 2026 5:12 pm
I describe the way only for Linux. In theory it should be possible on Windows too as the main 3rd party tool is available for Windows and the standard Linux tools are probably built-in nowadays or part of the WSL.

Step 1: get the mpcimg2 binary (and make it executable)

https://github.com/TheKikGen/MPC-LiveXp ... in/mpcimg2

Step 2: get the latest MPC firmware for USB

https://www.akaipro.com/downloads-and-s ... mware/mpc/

Step 3: extract the root file system (image name will vary)

Code: Select all./mpcimg2 -r MPC-3.7.0-Gen1-update.img MPC-3.7.0-Gen1-update.rootfs


Step 4: mount root FS (as root)

Code: Select allmkdir /mnt/MPC
mount MPC-3.7.0-Gen1-update.rootfs /mnt/MPC


Step 5: set empty password for root user

Remove * from /mnt/MPC//etc/shadow in the line starting with root (the file contains more lines than shown here)
Code: Select allroot::15069:0:99999:7:::
daemon:*:15069:0:99999:7:::
bin:*:15069:0:99999:7:::
sys:*:15069:0:99999:7:::
sync:*:15069:0:99999:7:::
games:*:15069:0:99999:7:::


Step 6: enable password authentication for SSH

Look for the listed config entries and change the value to yes (remove any leading #) in the files /mnt/MPC/etc/ssh/sshd_config and /mnt/MPC/etc/ssh/sshd_config.d/10-az0x.conf
Code: Select allPasswordAuthentication yes
KbdInteractiveAuthentication yes
PermitEmptyPasswords yes


Step 7: enable startup of SSH service

Code: Select allln -s /usr/lib/systemd/system/sshd.service /mnt/MPC/etc/systemd/system/multi-user.target.wants/


Step 8: unmount root FS (last step as root)

umount /mnt/MPC

Step 9: build new image

Code: Select allmv MPC-3.7.0-Gen1-update.img MPC-3.7.0-Gen1-update.img.orig
./mpcimg2 -m MPC-3.7.0-Gen1-update.img.orig MPC-3.7.0-Gen1-update.rootfs MPC-3.7.0-Gen1-update.img


Step 10: install new image

https://support.akaipro.com/en/support/ ... -USB-Drive
User avatar
By personM Wed Mar 04, 2026 3:54 pm
here is a bash script to automate the image creation. thanks to Masi for the help.
script has to be run with sudo for mounting actions.

Code: Select all#!/bin/bash

#Update-Image Name as Parameter e.g './MPC-3.7.0-Gen1-update.img'

MPCIMG2='./mpcimg2'

function downloadMpcimg2(){
    curl -O "https://raw.githubusercontent.com/TheKikGen/MPC-LiveXplore/master/imgmaker/bin/mpcimg2"
}

function chmodMpcimg2(){
    chmod +x $MPCIMG2
}

if [ $# -ne 1 ];
    then echo "usage: $0 Update-Image"
fi


if ! [ -f "$MPCIMG2" ]; then
   downloadMpcimg2
fi

if ! [ -x "$MPCIMG2" ]; then
    chmodMpcimg2
fi

IMAGE_FULLPATH=$1

IMAGE_NAME=$(basename ${IMAGE_FULLPATH} .img)
echo $IMAGE_NAME

#extract rootFS

ROOTFS_IMAGE=${IMAGE_NAME}.rootfs
./mpcimg2 -r ${IMAGE_NAME}.img ${ROOTFS_IMAGE}

# Mount root FS
mkdir /mnt/MPC
mount $ROOTFS_IMAGE /mnt/MPC

#unstar the root in shadow
sed -i 's/root:\*:/root::/' /mnt/MPC/etc/shadow

# uncomment maybe set properties
SSHD_CONFIGFILE='/mnt/MPC/etc/ssh/sshd_config'
SSHD_D_CONFIGFILE='/mnt/MPC/etc/ssh/sshd_config.d/10-az0x.conf'

sed -i 's/^PasswordAuthentication/#PasswordAuthentication/g' $SSHD_CONFIGFILE
sed -i 's/^KbdInteractiveAuthentication/#KbdInteractiveAuthentication/g' $SSHD_CONFIGFILE
sed -i 's/^PermitEmptyPasswords/#PermitEmptyPasswords/g' $SSHD_CONFIGFILE
sed -i 's/^PermitRootLogin/#PermitRootLogin/g' $SSHD_CONFIGFILE

sed -i 's/^PasswordAuthentication/#PasswordAuthentication/g' $SSHD_D_CONFIGFILE
sed -i 's/^KbdInteractiveAuthentication/#KbdInteractiveAuthentication/g' $SSHD_D_CONFIGFILE
sed -i 's/^PermitEmptyPasswords/#PermitEmptyPasswords/g' $SSHD_D_CONFIGFILE
sed -i 's/^PermitRootLogin/#PermitRootLogin/g' $SSHD_D_CONFIGFILE

echo "append wanted settings"
#append settings we want
echo "PermitRootLogin yes" >> $SSHD_CONFIGFILE
echo "PasswordAuthentication yes" >> $SSHD_CONFIGFILE
echo "KbdInteractiveAuthentication yes" >> $SSHD_CONFIGFILE
echo "PermitEmptyPasswords yes" >> $SSHD_CONFIGFILE
echo "done."

#Enable startup of SSH service

ln -s /usr/lib/systemd/system/sshd.service /mnt/MPC/etc/systemd/system/multi-user.target.wants/
echo "startup of ssh service enabled."
#Unmount root FS
umount /mnt/MPC

#Build new image
mv ${IMAGE_NAME}.img ${IMAGE_NAME}.img.orig
./mpcimg2 -m ${IMAGE_NAME}.img.orig ${ROOTFS_IMAGE} ${IMAGE_NAME}.img

#cleanup
rmdir /mnt/MPC
rm ${ROOTFS_IMAGE}
User avatar
By zangetsu01 Thu Mar 05, 2026 8:53 am
MPC-Tutor wrote:Thanks ! Now hopefully someone will work out how to do the same with the gen 2 firmware…



Gen 2 won't be that easy, they've introduced a SHA256 checksum. To explain:

A SHA256 checksum is a 256-bit (64-character hexadecimal) cryptographic hash function used to verify file integrity and authenticity. By comparing a file's calculated SHA256 hash against a known valid hash, you can confirm it is not corrupted or tampered with.


For now you will need Akai's private key to sign the firmware for the MPC to accept your custom rom. And we don't have that.

Maybey someone else will find a hole for us to exploit somewhere.
User avatar
By MPC-Tutor Thu Mar 05, 2026 9:20 am
I guess it looks like I'll eventually need to find another way of taking screenshots for the MPC Bible (assuming they eventually stop releasing gen 1 firmware updates). Back to creating them in photoshop by hand, like I did for the MPC200XL book!

zangetsu01 wrote:
MPC-Tutor wrote:Thanks ! Now hopefully someone will work out how to do the same with the gen 2 firmware…



Gen 2 won't be that easy, they've introduced a SHA256 checksum. To explain:

A SHA256 checksum is a 256-bit (64-character hexadecimal) cryptographic hash function used to verify file integrity and authenticity. By comparing a file's calculated SHA256 hash against a known valid hash, you can confirm it is not corrupted or tampered with.


For now you will need Akai's private key to sign the firmware for the MPC to accept your custom rom. And we don't have that.

Maybey someone else will find a hole for us to exploit somewhere.
User avatar
By zangetsu01 Thu Mar 05, 2026 4:33 pm
NearTao wrote:By hand... woof.

maybe the possible HDMI solder pad on the XL is operational... haven't seen anybody try to hook that up yet.


Even if you manage to solder the HDMI port to the board, you must first check the firmware if the drivers are present. if they are not present or disabled than you are out of luck because of the point I made earlier.

Just changing 1 single byte of the firmware makes the MPC Gen2 reject it.

It's a real silly thing to do from Akai. They know that there is a huge users base that uses SSH and they've closed the road.

None of my Hakai tools work at the moment.