000webhost

Web hosting

Tuesday, June 9, 2015

Custom MIDI (Hardware and Software) Controllers, MP3 Players, and SD Card Experiments

If you're like me (a technologist who has an interest in music) you've probably looked at a variety of MIDI controllers on the market but haven't found one that quite ticks all the boxes for everything that you want to do. It's also likely that you've looked at having multiple controllers and/or some of the higher end equipment but as always you can't always justify the cost of what you want versus what you actually need.

Of late, I've been looking at building my own (MIDI controllers). After all, these devices are relatively simple and often used highly standardised components (membrance based switches, encoders/knobs/other, some chips, etc...). Look at the following links/teardowns and you'll notice that there is very little to distinguish between them with many components being available from your local electronics store.
https://www.flickr.com/photos/psychlist1972/sets/72157631489556008/detail/
http://www.illuminatedsounds.com/?cat=23
http://www.illuminatedsounds.com/?p=744
http://bangbang-nyc.com/2013/05/ableton-push-disassembled/
http://pushmod.blogspot.com.au/
http://www.synthtopia.com/content/2013/08/26/ableton-push-stripped-bare/
http://www.mpcstuff.com/akstst.html

I've looked at starting from scratch for hardware builds but they have proven to be prohibitively expensive for my experiment (3D printing is an increasingly viable option especially as public libraries let them out for free, public use but there are limitations especially with regards to construction. For instance, many printers will require multiple sessions before a complete device can be constructed, there are durability concerns, etc...). Instead I've been looking at using existing electronics to interface with.
http://www.umidi.co/index.html
http://custommidicontrollers.com/
http://www.instructables.com/id/Custom-Built-MIDI-Controller/

For instance, finding something suitable to turn into a MIDI controller (calculators, toy pianos spring to mind). The circuitry is often very simple and basically all you need to is hook it up to an environmental control interface device with multiple sensors. A hardware interface is then used to provide electrical signal to MIDI control translation (such as an Arduino device). The other option is to analyse the electrical signal on a case by case basis. Then use this as a basis for writing a translation program which will turn the electrical signal into a MIDI signal which can be used to interface with other equipment, your existing software, etc...
http://www.musicradar.com/reviews/tech/akai-mpd24-22920
http://vvvv.org/contribution/mpd24-akai-midi-mapper
http://mods-n-hacks.wonderhowto.com/how-to/build-simple-midi-controller-251069/
http://shiftmore.blogspot.com.au/2009/12/calculator-midi-usb-controller.html
http://www.codetinkerhack.com/2012/11/how-to-turn-piano-toy-into-midi.html
http://www.codetinkerhack.com/2013/01/how-to-add-velocity-aftertouch-midi.html
http://makezine.com/2010/11/30/usbhacking/
https://wiki.python.org/moin/PythonInMusic
http://www.native-instruments.com/forum/threads/turning-any-usb-hardware-into-a-midi-device.47017/
http://createdigitalmusic.com/2009/11/novation-releases-all-midi-details-for-launchpad/
http://www.widisoft.com/english/widi-audio-to-midi-vst.html
http://code.google.com/p/audio2midi/
http://www.synthtopia.com/content/2013/07/26/midimorphosis-converts-audio-to-midi/
http://www.nativekontrol.com/

Another option I've been looking at is using third party electronic devices (such as a tablet or else cheaper MIDI control devices in combination with other software) to provide emulation for often much more expensive hardware. Good examples of this include the the high end hardware controllers such as Native Instrument's Maschine, Ableton's Push, a Akai's MPC/APC series, etc... (Even when purchased second hand these devices can often fetch up to around 80-90% of their retail value. Factor in the problem that few retailers are willing to provide demonstration equipment for them (StoreDJ is an exception) and you can understand why so many people re-sell their equipment with explanations often stating that the piece of equipment quite simply didn't fit into their setup.)
http://motscousus.com/stuff/2011-07_Novation_Launchpad_Ableton_Live_Scripts/
http://www.afrodjmac.com/blog/2013/03/14/more-ways-to-turn-your-launchpad-into-a-push
http://beatwise.proboards.com/thread/1315/free-preset-carbon-push-emulation
http://www.reddit.com/r/abletonlive/comments/1aopop/push_emulation_now_available_on_apc40_free_to/?

There are several main options to look at including TouchOSC, MIDI Designer, and Lemur. The two I've been most curious about are Lemur and TouchOSC though. Installation and setup consist of a daemon/service on your computer, an application of some sort on your tablet, and an editor that can be tablet or computer based. Thereafter, there are often 'templates' which are basically skins and underlying software code which allows you to design a MIDI interface from scratch and interface with other equipment/software directly from your tablet.
https://liine.net/en/products/lemur/
http://iosmidi.com/
http://mididesigner.com/
http://hexler.net/software/touchosc-android
http://djtechtools.com/2013/01/28/how-to-dj-using-liines-lemur-app-for-ipad/
http://www.youtube.com/watch?v=KJxAnm3j8TI
http://createdigitalmusic.com/2014/11/lemur-now-android-supports-cabled-connections-want-touch-app/
https://liine.net/en/community/user-library/view/421/

There are obvious issues here. Apple iPads are almost as expensive as some of the MIDI controllers we're looking at in this document. One option is to purchase the iPad Mini or something second hand. Basically, what I've been reading indicates that either option will do but that the screen size of the iPad Mini may make things a bit fiddly particularly if you have large hands. The other option is to use Android only applications. The only problem is that the iOS universe is often much more diverse than the Android one.
http://www.kvraudio.com/forum/viewtopic.php?t=397495
http://support.liine.net/customer/portal/questions/1244470-ipad-mini-compatibility-with-lemur-drum-pad-
http://forum.liine.net/viewtopic.php?f=25&t=2391
https://www.ableton.com/en/help/article/control-live-mobile-device/
https://www.gearslutz.com/board/electronic-music-instruments-electronic-music-production/700437-ni-maschine-mikro-vs-ipad-lemur.html
http://digitaldjtools.net/mappings/
http://forum.watmm.com/topic/76701-considering-an-ipad-mini/
https://documentation.meraki.com/SM/Monitoring_and_Reporting/Activation_Lock_Bypass_for_iOS_Devices

http://cydiamate.net/doulci-ios-8-3-activation-lock-bypass/

The other thing that needs to be considered is how you should interface. In theory, wireless is a great option. In practice I've been seeing stories about consistently lost connnections. Look at a hardware USB interface if need be.
http://www.djcity.com.au/irig-midi-interface-for-iphone-and-ipad
http://www.djcity.com.au/irig-midi2

To be honest though a lot of the emulators for the Push (and other devices) aren't perfect. You lose a bit of functionality (in some cases you gain a lot of extra functionality though but the emulation still isn't perfect). It's likely going to make you want to purchase these devices more or ward you off of them completely because they don't fit into your workflow.

With the cessation of production of the iPod Classic and other high capacity music player options I've been looking at alternatives on and off for a while. Clearly, high capacity SD based storage options are extremely expensive at this stage at the high end. One alternative though is using adapter cards for inexpensive, readily available, older low capacity MP3 players which utilise hard drives. The adapters required are available for around $10-20. Obvious problems using SD based storage include regarding speed limitations, capacity limitations, high prices, etc... Moreover, some of the adapters won't fit in the case, or there needs to be workarounds. For instance, currently there aren't enough 128GB SD cards at a reasonable price locally so running multiple SD cards in RAID configuration may be the compromise that you have to make for the immediate future.
http://www.ebay.com/bhp/sd-card-to-ide
http://cubicgarden.com/2013/05/05/upgrading-the-pacemakers-hard-drive/
http://www.head-fi.org/t/566780/official-ipod-video-classic-5g-5-5g-6g-6-5g-7g-ssd-mod-thread/270
http://www.ebay.com/itm/SD-SDHC-MMC-Card-to-1-8-ZIF-LIF-CE-SSD-Adapter-40pin-ZIF-LIF-cable-/111091174857

One interesting piece of information that I've come across recently is that there isn't much stopping people using SDXC cards in supposedly SDHC only card readers (either drivers or simple hardware blocks are the limitations). Basically, the primary difference between SDHC and SDXC are that the default file formats are one uses FAT32 as the default format while the other uses exFAT respectively. Clearly this limitation can be overcome with the right tools and knowledge though. For instance, Windows by default doesn't allow this so other options need to be employed.
https://gbatemp.net/threads/how-to-use-a-64gb-micro-sdxc-in-your-sdhc-compliant-flash-cart.335912/
http://www.ridgecrop.demon.co.uk/
http://www.tarkan.info/20121226/tutorials/ipod-and-sdhc-sdxc-cards
http://arstechnica.com/civis/viewtopic.php?t=1151548
http://en.wikipedia.org/wiki/Secure_Digital
https://www.ifixit.com/Guide/iPod+5th+Generation+%28Video%29+CF+or+SDHC-SDXC+Memory+instead+of+HDD+Replacement/7492
https://www.raspberrypi.org/forums/viewtopic.php?f=2&t=2252

http://superuser.com/questions/282202/which-consumes-more-power-hard-drive-or-sd-card-card-reader
http://raspberrypi.stackexchange.com/questions/1765/possible-to-connect-sata-device-to-the-sd-slot
http://www.techbuy.com.au/p/208703/HARD_DRIVE_-_EXTERNAL_DRIVE_CASE_SATA_-_USB_2.5/8WARE/WI21.asp
http://www.warcom.com.au/shop/flypage/computer-parts/media-players/49000?gclid=CKXk-bfN2sUCFUsHvAod-gQAGg
http://www.i-tech.com.au/products/144200_8ware_Portable_Wireless_Streaming.aspx

Ending Disease and Disability/Extending Life, Prophets/Pre-Cogs, and More

On Disease/Disability/Ageing: - for interest's sake, I decided to see what it would be like to see whether realistically we can cure ...