leighsmith / midisport-macos

M-Audio MIDISPORT USB 64-bit MIDI device driver for MacOS 10.14+
Other
124 stars 7 forks source link

Trying to get started , and would be willing to help #5

Closed project707 closed 3 years ago

project707 commented 3 years ago

Hi @leighsmith. I finally did an upgrade to Catalina from Mojave and found that my 8x8 was no longer supported. This is how I found your repo. I was just hoping to get a start but didn't find that the readme could guide me through the current process and had issues running ./packageBinary, assuming that this script might be able to generate the necessary .pkg file. Do I need to have this project running in xcode to get the tarball/pkg you mention? No problem if so, but your readme doesn't indicate any of those details.

Also when i get this running I'd be happy to help where I can to get this working for 10.15, which is where I'm stuck currently. The old m-audio drivers worked fine for my 8x8 with Mojave.

squeeb commented 3 years ago

FWIW, In Catalina, I just downloaded the Xcode tools, opened the project and hit build. Then retrieved the outputs and put them in the correct places (I can't recall exactly what I did but I'll have a look later today if I can).

This definitely works in Catalina.

For the record, I'm using the 8x8 /s with updated EEPROM. Not sure if that's relevant.

project707 commented 3 years ago

Thanks @squeeb. I'll give that a shot today.

leighsmith commented 3 years ago

Thanks folks, very much appreciate the interest in the project. I'm in the process of getting a PKG file created to ease everyone's installation. Indeed, it will build. The current branch with the most recent effort is ExpandedDeviceSupport. Basically, a manual installation consists of putting:

The firmware files also need to be put into /usr/local/etc/midisport_firmware, see Installer/postinstall for a script which will download the firmware from the Linux distribution and install the files into the right place. That postinstall shell script will eventually be run as part of the pkg installer.

leighsmith commented 3 years ago

Since the MIDISPORT 8x8 has firmware in an EEPROM, not downloaded when it is connected to USB, the MIDISPORTFirmwareDownloader won't need to run in order for folks to use that box. @squeeb I'd be interested to know what version of the EEPROM you are running?

leighsmith commented 3 years ago

The old M-Audio written drivers will work on Mojave, but because they are 32 bit, they can cause problems with other 64 bit MIDI drivers, such as Roland's drivers. To be clear, I have no association with M-Audio. The MIDISPORT driver of this project is compiled as 64 bit, and I can confirm it does run on Catalina.

squeeb commented 3 years ago

Since the MIDISPORT 8x8 has firmware in an EEPROM, not downloaded when it is connected to USB, the MIDISPORTFirmwareDownloader won't need to run in order for folks to use that box. @squeeb I'd be interested to know what version of the EEPROM you are running?

@leighsmith Short of de-racking and opening the box to see what's written on the EEPROM chip, is there a way I can get you this information via the mac?

The only way I know it's been upgraded is that the words "UPGRADED EEPROM" are written in permanent marker on the top!

project707 commented 3 years ago

OK I got this going. Thank you @leighsmith. It did take me a bit longer that it should have given my programming background though, and here are the things that tripped me up:

"Installer" is not only a directory, but it's only in the "Installer" git branch. I was building from the "ExpandedDeviceSupport" branch per the comment above. Also the file com.leighsmith.midisportfirmwaredownloader.plist is only in that same "Installer" branch and directory (not in MIDISPORTFirmwareDownloader).

So basically the process I followed was:

  1. $ git checkout ExpandedDeviceSupport
  2. Built MIDISPORT/MIDISPORT.xcodeproj
  3. Moved that binary (source directory will vary based on Xcode settings) into /Library/Audio/MIDI Drivers/
  4. Built MIDISPORTFirmwareDownloader/MIDISPORTFirmwareDownloader.xcodeproj
  5. Moved that binary (source will vary) into /usr/local/libexec/
  6. $ mkdir /usr/local/etc/midisport_firmware
  7. $ cp MIDISPORTFirmwareDownloader/MIDISPORT_devices.xml /usr/local/etc/midisport_firmware/
  8. $ git checkout Installer
  9. $ cd Installer
  10. $ cp com.leighsmith.midisportfirmwaredownloader.plist /Library/LaunchDaemons/
  11. $ chmod +x postinstall
  12. $ ./postinstall

Obviously there was some sudoing necessary in order to make that all work, and I have SIP disabled, which I believe is also necessary.

Anyhow, I now see my 8x8/s in the MIDI Studio panel of the Audio MIDI Setup application and the device appears to be working.

There are so many people out there that think their MIDISPORT interfaces are just paperweights at this point, and they are such well built interfaces. I think you are going to make a ton of people really happy knowing that they can use them again. Do you mind if I reply to a few forum posts with a link to your repo as a potential solution?

leighsmith commented 3 years ago

Thanks for everyone's help getting people up and running while I was putting together a functioning .pkg. That is now linked from the README, and the package file itself is located at sourceforge.

project707 commented 3 years ago

Thanks for going ahead and responding to some of those posts @leighsmith. I just looked and it looks like you mostly covered it.