The place to share knowledge about upgrades, mods, customisations and all other cool DIY projects for MPCs and other music equipment.
User avatar
By Ultros Fri Apr 02, 2021 8:04 pm
Just a little information update. So my APC mini came in and upon testing it became clear that AKAI had sabotaged the force software to ignore APC as a midi device! You can fix it by hexediting the force executable. The string is "APC" all caps, replace it with spaces. Still working on getting an oob launchpad experience for us but it's taken some time. I dont want to brute force hack the midi shit as kickgen has done, i want to isolate the problems within the software as opposed to forcing the unit to act different so it may still take me a while but I am still poking at it from time to time.
User avatar
By zangetsu01 Fri Apr 02, 2021 8:23 pm
Ultros wrote:Just a little information update. So my APC mini came in and upon testing it became clear that AKAI had sabotaged the force software to ignore APC as a midi device! You can fix it by hexediting the force executable. The string is "APC" all caps, replace it with spaces. Still working on getting an oob launchpad experience for us but it's taken some time. I dont want to brute force hack the midi **** as kickgen has done, i want to isolate the problems within the software as opposed to forcing the unit to act different so it may still take me a while but I am still poking at it from time to time.


Thanks for the effort Ultros, I also got myself a pad launcher pro and all the pads work fine except for all navigation and launch buttons. Would be cool if we could use them to navigate.

I understand that if 3.0 drops for the MPC that this project might die.
User avatar
By Ultros Thu Apr 15, 2021 3:28 pm
So.. bit of a heads up. In the HAKAI cfw, i spoofed all our MPC's to MPC-X. This allows the pc unit to accept a cloned SD card of the MPC-X internal sd. (The guid and disk name must match). However, by doing so it seems that folks including myself can no longer access the demo projects or last project menu without said SD card in place. So I will likely upload another revision (relatively soon) that does not spoof the MPC into x-mode and lets the system detect it as normal.

I have a desktop working on the mpc now... I may build that into the next itteration. Either way there will be some changes to how the mpc software and force software are launched. I want to give users the ability to chose on load-time or to use 3rd party arm cross-compiled code directly on the unit without ssh. I want to run MIXXX and reaper on my MPC directly. Why? because i like many others have dj hardware and would like to use that unit to drive that sw. (i have booted denon dj stuff on the mpc but it's not as friendly or clean as mixxx can be filesystem and config wise and I don't have to pirate it, the force stuff is toeing the line) and reaper for fun, it can use vst and stuff.

Also lol i found a really fun trick for you nix users, we can remote midi too. This will direct any input on the virtual interface on PC side to the virtual interface on MPC side. I'll code up some examples in the next little while but here is the gist of it: On the mpc side create a virtual device node, then start a netcat server that directs stdout to the virtual node like so: nc <port> > /dev/snd/mpcvirtualnode. Next on PC side (linux) create a virtual device node and do this: cat /dev/snd/pcvirtualmode |nc <ip> <port>. This will route midi input from PC virtual interface to a MPC virtual interface.
User avatar
By Ultros Thu Apr 15, 2021 9:51 pm
elstebbano wrote:And finally we will be able to run doom on the mpc, soon :popcorn:

Amazing work that you are doing, I think you might kick off something big here!


The mpc is pretty limited space wise. In order to pull off that kinda stuff you need to build a secondary root on sd and run your software from that rather than from internal. Also theres currently no mesa related graphics drivers. (i hope to rememdy that) the mpc program is compiled against openCL. EGL amd GLES are present though, no SDL. Retroarch would be a more fun project btw in terms of gaming, but i'm not converting ppls mpc's into $1000 retro video game consoles.
User avatar
By Ultros Fri Apr 16, 2021 4:10 am
Lampdog wrote:
Ultros wrote:retro video game consoles.


Rasp Pi4 ftw right there.


If you have one set up the castlevanias for gba are crazy good I highly recommend them. Metroid zero mission as well also for gba. Probably wont make any music for 8-10h though lol.
User avatar
By Ultros Fri Apr 16, 2021 1:29 pm
I did some investigating, perhaps the arm version of reaper is a bad choice... it requires xorg, its not open source so i cant compile it against opencl, egl, gl or wayland. Mixxx however looks a bit more promising.
User avatar
By Ultros Fri Apr 16, 2021 3:45 pm
ontherun wrote:would it be possible to get the MPC One to be able to connect a USB Audiointerface and leave the rest as it is?


I honestly cannot answer that question. I did some alsa tests from command line and did get sound to play over usb to my mixdeck but that was using "aplay" a command line program not the MPC program. It seems the MPC program knows specifically which card it wants to use and how it differs across different devices. For instance while the mpc one is spoofed to mpc-x it thinks it has the mpc-x interface with more ins and outs than it really does. I think short of hijacking the device node and redirecting or cloning data to a secondary device node its not very likely. Not that the operating system or unit are incapable, the MPC software is the crux but who knows maybe others have coded something

My conclusion on the matter is you dont require an external sound device. Your MPC has a 32bit floating point audio processor. Chances are your external is a downgrade and could potentially be incompatible with the software. If you want more input channels I highly suggest buying a 16 channel mixer with ballanced line in and out. I got the behringer rx1602. I realise that folks have multi-channel sound cards but the mpc software isnt designed to cascade channels on the fly. its coded very specifically for the devices.
By rvense Fri Apr 16, 2021 6:37 pm
I don't think there's a technical reason they're not adding this. Earlier versions you could trick into using external USB interfaces, it basically picked the first one. 2.8 fixed this "bug". It's just ALSA, they could let you use whatever class compliant by picking from a drop-down. What they couldn't easily do, though, is let you use two interfaces at the same time, so the internal one would (probably) have to be disabled. So it's not a great user experience. Also more I/O is a reason people buy the more expensive models. If you could just plug in a external interface, everyone would get a One over an X.

Also, connecting more I/O doesn't necessarily mean the MPC will allow access to them. The number of I/O appeared to be hard coded, at least in 2.8.

You could probably hack the application to pick a different interface since there's bound to be a constant in there that it's matching on somehow, but that'd mean perma-disabling your built-in audio I/O.
By rvense Fri Apr 16, 2021 10:04 pm
Yeah, but it was clearly more of a bug. If you had another USB audio interface in it would use it. But you'd still only get six outs and two ins, so it didn't really add anything. They changed a lot of things with the mixer update in 2.8, and that's when it started looking for the specific interface.

I have no idea at all, but when I look in sysfs on my desktop I can see an "id" for my built-in sound card which is the string "Intel", maybe it looks at that or something like it.

If I could get 8 or even 16 inputs on my MPC Live in my studio, that'd be amazing. It's a pretty decent mixer and recorder, just... not enough inputs.
User avatar
By Ultros Sat Apr 17, 2021 3:20 am
rvense wrote:If I could get 8 or even 16 inputs on my MPC Live in my studio, that'd be amazing. It's a pretty decent mixer and recorder, just... not enough inputs.


I'm ultros on freenode as well if you ever wanna throw ideas back and forth see what we can pick away at. Usually online from around 5pm-12am est. Who knows maybe two heads are better than one. I bet its just some decimal value baked into the binary that denotes the amount of channels. Finding that fkr is the tough part without some real time debugging. Maybe we can gdb it and look at what it's doing when we change between mpc one, live and x modes and narrow it down.