Unlock Push 3 - change collection names, default tracks, USB and more
Posted: Fri Sep 01, 2023 6:43 am
Happy to report this procedure still works for Live 12 (incl. beta).
Intro
What if I told you there is a way to access your Push 3 Standalone SSD? Once you do, you can do all kinds of things, like:
I've created this tutorial as a video on YouTube: https://youtu.be/kaU7AnphyS0
-WARNING-
You're accessing the basic filesystem of the device. Like any Linux OS, it can ruin operations. Be careful with ANY step you take. Ensure you've made a backup (I'll explain how to do that). I'm not responsible for bricking your device!!! My actions didn't brick mine so far, but you're taking these actions at your own risk. I'm not affiliated with Ableton in any way. I'm a consumer like most of you. I'm willing to take the risk since I know what I do on hardware and software. Again: you're taking these actions at your own risk! If you don't know what you're doing, you will brick your device. I don't know if it voids the warranty and whether Ableton will still service your device!!!
-WARNING-
Okay, now that's out of the way, how did I 'discover' this?
I hate limits and felt the P3's compute-based hardware is limited. The 256GB SSD was the easiest to swap out first. So, before powering it on, I swapped out the disk with a 2TB SSD. I picked the 'Transcend PCIe 4.0 SSD 250S, 2TB' since it has the newer '3d v-nand (TLC)' and seemed quite reliable. I did it before powering it on the first time. The replacement was done before, and I need to credit 'XRCST' for that by sharing this YouTube video: https://www.youtube.com/watch?v=gFe9tIunZxI. The only difference was that he used a 1TB drive, and I had a 2TB drive. I ran into issues that I resolved a different way, I'll write something about that perhaps another day.
I mounted the OS disk while cloning and resizing the partition; I was just curious about what was out there. The P3 runs a webserver, and I found the place with all the pages live (like authorize, logs, crash, legal, etc.). From there, I reversed-engineered what Ableton was doing with the P3. It opened up a whole world to me.
Requirements
- For making a proper backup; screwdrivers to get to the SSD and an SSD to USB device to make the backup, as a computer with at least 256GB of free space, since we're making a dump of the whole SSD
- Basic file editing with Vim in Linux; there are plenty of tutorials on the internet for that
- Linux knowledge helps understand what you're doing, which might prevent bricking the device
Summary
Here is a short summary of what we are going to do. Backup first by removing the SSD and dumping the contents into a file, then place the SSD back. After a good backup, we're going to SSH into the P3. We need a key for that which we send to the P3. The method is slightly different on a Mac or a Windows PC since the Mac has tools like ssh and keygen. For Windows, you need tools like PuTTY and PuTTYgen. Once we've set up the SSH connection, we can log in to the Linux OS, stop Ableton and Push, and change the files we want. Then, we restart the P3 to check the changes.
Step 1: backup SSD
To backup the SSD, the SSD must be removed from the P3. The bottom contains a heatsink with 5 screws. Remove that first and carefully lift it to prevent damaging the heat conducting pad. Then remove the 3 smaller screws in the middle (one behind the heatsink) and the last 11 screws along the edges. Now you have three different sets of screws, and you should be able to lift the bottom metal plate. There, you'll see the SSD, secured by a plastic tab. Push the tab, and it should release the SSD. Remove it from its socket and connect it to another computer with an SSD to a USB device (I'm using a 'ACT M.2 NVMe/PCIe SSD dockingstation, US' for 27 Euros)
For MacOS:
- Open a terminal
Figure out the correct drive:
Depending on your internal drives etc, you should see something like this:
/dev/disk4 means my SSD is now attached as disk4, THIS CAN BE A DIFFERENT ONE FOR YOURS!!! Ensure you use the right one in the next commands!
By default MacOS will mount the MSDOS partition, unmount all the partitions first:
Next use convert and copy (dd) to make an image of your drive:
Note the 'if' and 'of' here!!! Don't mix them up!!! if = input file, which is the SSD, the /dev/disk4 in my case. of = output file, the location where to write it to. Put this in your desired location.
It takes some time, just leave it untill it is done, depending on the hardware used, takes 15 to 30 minutes.
Once done, you have a dump of the whole SSD in a file. Secure this file, this is your backup.
Eject the disk and place it back into the P3:
For Windows:
Use an imaging tool, there are plenty of examples and tutorials, The idea is the same, dump the entire SDD contents into a file. This might help: https://www.youtube.com/watch?v=UTsq-HHz0Ss
Step 2: generate ssh keys
On MacOS:
In the same terminal, or a new one, run ssh-keygen:
Keep all default and press enter a couple of times:
In Windows:
Use PuTTYgen to generate a key.
Step 3: Add public SSH key to the P3
Now here's the cool trick: open your browser and go to:
'http://push.local/ssh'
Enter the code prompted on the P3.
Copy the contents of the .ssh/id_rsa.pub file into clipboard and place it in the box on your browser.
Click 'Add SSH key' and get ready to press the following key combination on your P3:
<Shift>-<Select>-<Settings> - which is the second button top left, the 'sun' icon.
Then it should say:
SSH key added successfully.
Congratulations, you can now SSH into you P3 and start changing things.
Step 4: SSH into the P3
Say 'yes' to continue, and you're in!
You only need to repeat step 2 and 3 for a new connection from another computer.
General recommendations
Always use the 'ableton' account to log in, root has more access, so you might break it faster.
Whenever you change files, make a copy first
Whenever you change files, stop 'Live' first:
To restart the device:
Login as root:
run reboot
Couple of options
Want to know your project CPU usage? Run:
Want to change the 'Collection tag names'? Edit Library.cfg:
When there is a new version of Live, the folder might be different.
Now what?
Post your changes in this thread - I'll add it to the original post to get a nice list of 'hacks'. Enjoy!
Intro
What if I told you there is a way to access your Push 3 Standalone SSD? Once you do, you can do all kinds of things, like:
- Renaming the collection tags [this post]
- Check CPU usage [this post]
- Clean up the filesystem
- Mount a share or USB drive with all your MP3s [viewtopic.php?p=1817394#p1817394]
- Troubleshoot issues and perhaps even fix them
- Replace the default liveset [viewtopic.php?t=248249#p1817288 and a (better) alternative: viewtopic.php?p=1817386&sid=5ef58a3c428 ... 4#p1817388]]
- Default Audio/Midi tracks [viewtopic.php?p=1817353#p1817353]
- and much, much more which I've not discovered (yet)
I've created this tutorial as a video on YouTube: https://youtu.be/kaU7AnphyS0
-WARNING-
You're accessing the basic filesystem of the device. Like any Linux OS, it can ruin operations. Be careful with ANY step you take. Ensure you've made a backup (I'll explain how to do that). I'm not responsible for bricking your device!!! My actions didn't brick mine so far, but you're taking these actions at your own risk. I'm not affiliated with Ableton in any way. I'm a consumer like most of you. I'm willing to take the risk since I know what I do on hardware and software. Again: you're taking these actions at your own risk! If you don't know what you're doing, you will brick your device. I don't know if it voids the warranty and whether Ableton will still service your device!!!
-WARNING-
Okay, now that's out of the way, how did I 'discover' this?
I hate limits and felt the P3's compute-based hardware is limited. The 256GB SSD was the easiest to swap out first. So, before powering it on, I swapped out the disk with a 2TB SSD. I picked the 'Transcend PCIe 4.0 SSD 250S, 2TB' since it has the newer '3d v-nand (TLC)' and seemed quite reliable. I did it before powering it on the first time. The replacement was done before, and I need to credit 'XRCST' for that by sharing this YouTube video: https://www.youtube.com/watch?v=gFe9tIunZxI. The only difference was that he used a 1TB drive, and I had a 2TB drive. I ran into issues that I resolved a different way, I'll write something about that perhaps another day.
I mounted the OS disk while cloning and resizing the partition; I was just curious about what was out there. The P3 runs a webserver, and I found the place with all the pages live (like authorize, logs, crash, legal, etc.). From there, I reversed-engineered what Ableton was doing with the P3. It opened up a whole world to me.
Requirements
- For making a proper backup; screwdrivers to get to the SSD and an SSD to USB device to make the backup, as a computer with at least 256GB of free space, since we're making a dump of the whole SSD
- Basic file editing with Vim in Linux; there are plenty of tutorials on the internet for that
- Linux knowledge helps understand what you're doing, which might prevent bricking the device
Summary
Here is a short summary of what we are going to do. Backup first by removing the SSD and dumping the contents into a file, then place the SSD back. After a good backup, we're going to SSH into the P3. We need a key for that which we send to the P3. The method is slightly different on a Mac or a Windows PC since the Mac has tools like ssh and keygen. For Windows, you need tools like PuTTY and PuTTYgen. Once we've set up the SSH connection, we can log in to the Linux OS, stop Ableton and Push, and change the files we want. Then, we restart the P3 to check the changes.
Step 1: backup SSD
To backup the SSD, the SSD must be removed from the P3. The bottom contains a heatsink with 5 screws. Remove that first and carefully lift it to prevent damaging the heat conducting pad. Then remove the 3 smaller screws in the middle (one behind the heatsink) and the last 11 screws along the edges. Now you have three different sets of screws, and you should be able to lift the bottom metal plate. There, you'll see the SSD, secured by a plastic tab. Push the tab, and it should release the SSD. Remove it from its socket and connect it to another computer with an SSD to a USB device (I'm using a 'ACT M.2 NVMe/PCIe SSD dockingstation, US' for 27 Euros)
For MacOS:
- Open a terminal
Figure out the correct drive:
Code: Select all
% sudo diskutil list
Code: Select all
/dev/disk4 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *256.1 GB disk4
1: Microsoft Basic Data msdos 37.1 MB disk4s1
2: Linux Swap 8.6 GB disk4s2
3: Linux Filesystem 10.7 GB disk4s3
4: Linux Filesystem 10.7 GB disk4s4
5: Linux Filesystem 226.0 GB disk4s5
By default MacOS will mount the MSDOS partition, unmount all the partitions first:
Code: Select all
% sudo diskutil unmountDisk /dev/disk4
Code: Select all
% sudo dd if=/dev/rdisk4 of=/Users/bouke/abletonPush3.img bs=1M status=progress
It takes some time, just leave it untill it is done, depending on the hardware used, takes 15 to 30 minutes.
Code: Select all
bouke@Boukes-MBP ~ % sudo dd if=/dev/rdisk4 of=/Users/bouke/abletonPush3.img bs=1M status=progress
84042317824 bytes (84 GB, 78 GiB) transferred 128.002s, 657 MB/s
Code: Select all
bouke@Boukes-MBP ~ % sudo dd if=/dev/rdisk4 of=/Users/bouke/abletonPush3.img bs=1M status=progress
255639683072 bytes (256 GB, 238 GiB) transferred 387.003s, 661 MB/s
244198+1 records in
244198+1 records out
256060514304 bytes transferred in 387.637802 secs (660566418 bytes/sec)
Eject the disk and place it back into the P3:
Code: Select all
% sudo diskutil eject /dev/disk4
Use an imaging tool, there are plenty of examples and tutorials, The idea is the same, dump the entire SDD contents into a file. This might help: https://www.youtube.com/watch?v=UTsq-HHz0Ss
Step 2: generate ssh keys
On MacOS:
In the same terminal, or a new one, run ssh-keygen:
Code: Select all
% ssh-keygen
Code: Select all
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/bouke/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/bouke/.ssh/id_rsa
Your public key has been saved in /Users/bouke/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:TPDb7uVKtH5pke7uiZJQwZ5tyLx+n74ODFwac1x2ifM bouke@Boukes-MBP.fritz.box
The key's randomart image is:
+---[RSA 3072]----+
| .. o... |
| oo. oo.. |
| +==+ o |
| +BOo E |
| .Soo . |
| . .= .o |
| o .*..o |
| ++.==o |
| o=@%. |
+----[SHA256]-----+
Use PuTTYgen to generate a key.
Step 3: Add public SSH key to the P3
Now here's the cool trick: open your browser and go to:
'http://push.local/ssh'
Enter the code prompted on the P3.
Copy the contents of the .ssh/id_rsa.pub file into clipboard and place it in the box on your browser.
Code: Select all
% cat .ssh/id_rsa.pub
<Shift>-<Select>-<Settings> - which is the second button top left, the 'sun' icon.
Then it should say:
SSH key added successfully.
Congratulations, you can now SSH into you P3 and start changing things.
Step 4: SSH into the P3
Code: Select all
% ssh ableton@push.local
You only need to repeat step 2 and 3 for a new connection from another computer.
General recommendations
Always use the 'ableton' account to log in, root has more access, so you might break it faster.
Whenever you change files, make a copy first
Whenever you change files, stop 'Live' first:
Code: Select all
$ killall XPython3Exe
$ killall Live
Login as root:
Code: Select all
% ssh ableton@push.local
Code: Select all
# reboot
Want to know your project CPU usage? Run:
Code: Select all
$ top
Code: Select all
$ vi /data/.config/Ableton/Live\ 11.3.10/Library.cfg
Now what?
Post your changes in this thread - I'll add it to the original post to get a nice list of 'hacks'. Enjoy!