Opensource hardware CDJ/MIDIPC - Raspberry Pi ($25)
Opensource hardware CDJ/MIDIPC - Raspberry Pi ($25) Posted on: 24.01.2012 by Arcelia Siebeneck http://www.raspberrypi.org/ How about this for an idea... a self-contained opensource hardware midi controller with a built in ARM-based pc. The Raspberry Pi is a $25 ARM-based pc, the size of a credit card that can already run XBMC and lots of other software & operating systems. http://www.youtube.com/watch?v=PHlLnLqEBfg If the Raspberry Pi was setup to run VirtualDJ, Mixxx, Bitwig or one of the dj applications for beagle board then you could very easily integrate some reasonably powerful dj'ing hardware AND software within a normal midi controller. The Pi is absolutely tiny, very powerful and incredibly cheap. Why would you want to do this? Imagine having a midi controller that has an HDMI output. You just plug the midi controller into a screen, connect up your stereo outs to a mixer and you've got an all-in-one midi controller that doesn't require a laptop. Or you could integrate a 7" HDMI screen into the actual controller (so it'd look like a CDJ2000 for example). Or perhaps the Pi could be used as a hardware version of Bomes Midi Translator or GlovePie. You connect up various USB devices (gamepads, etc) and a usb midi device. You then program the Pi to translate midi messages into HID. I'm sure there are other possibilities too... thoughts? | |
Stanford Almosawi 12.09.2013 |
Originally Posted by ChEeZeBaLL
|
Olimpia Briden 17.09.2013 | I can't be the first person to believe of this, I'm not necessarily believeing of writing much code myself, I'm looking for open source/free solutions :-) It feels like anything I'm believeing of doing has probably already been done, I'm not exactly new to midi/midicontrollers but I'm sure I've missed out on a lot of technological advances. I've found some information for switching the pi serial port into something that can spit out 31250, although I'm not sure that's entirely necessary, also found a lightweight midi sequencer/looper, gives me lots and lots of options :-) I've also now added some simple code to output serial on the midifighter, not tested yet. It should work on official midifighter classic hardware but not sure how code compatible it would be, at the very least it will probably break the digital input on the expansion port, so it would need an official update to fix it I believe. It's easy enough to make the changes for the development board I'm using, it's got all the pins broken out so I can just reassign the digital expansion in 2 to one of the unused pins which would leave PD3 (txd1) free for midi output. |
Kiyoko Wellisch 18.09.2013 | That. Sounds. Awesome! |
Olimpia Briden 18.09.2013 | This afternoon I've built a midifighter classic on a breadboard, just a single button to confirm my atmega32u2 chip (pin/code compatible with the at90usb162) really is firing on all pins. I got the stock firmware on the chip and it seemed to be communicating with the utility over the weekend, had to wait until today for the 74hc165 chips to turn up. Still waiting on the tlc5928 led driver chips and the mcp3004 4 channel ADC chips for the expansion port. After that I'm not entirely sure, there's a platform called 'midibox' that revolves around lpc1769 chip that looks interesting, it's modular using an rtos based firmware, I had hoped to plug a midifighter into that but no usb host on the midibox platform and no midi out on the midifighter all it would take though would be midi out on the fighter via serial. I'd hoped to introduce a midi sequencer engine between the midifighter and a host machine, dial in your tempo, setup some patterns, like effects etc., then trigger the patterns using the midifighter. the raspberry pi could be used as a simple cheap portable mixing platform, you could even add your own fighter style interface using 8 gpio, then I guess it could be entirely possible to do the same as above in software. Then again, I'm more inclined to use something like a mini2440/mini210s board or anything that can do usb gadget that you can compile your own kernel for, they'll have a load more gpio, they'll act as a straight usb to midi to usb to midi bridge, add a 3.5-9" lcd with touchscreen or use composite out on the 2440/6410 or hdmi out on the 210 and you've got a very powerful relatively open source platform to design what you like. I've got a couple of other ideas but they really can wait for now, I need those other chips to turn up so I can hopefully confirm something :-) |
Kiyoko Wellisch 17.09.2013 | That's it! Open source computers more or less don't exist, and I doubt they will during my lifetime. The nearest you get is the lemote yeeloong, RMS' computer of choice, which I believe has completely open source firmware and drivers. But even then, the hardware itself is closed source. On the other hand much simpler open source hardware is doing well in the 3D printing scene! We live in exciting times. So what are you planning to make? A controller with embedded mixing software? Sounds exciting! |
Olimpia Briden 17.09.2013 | Yeah but you're getting down to splitting hairs now, the majority of people have zero need to know about the inside of the chip, the chip doesn't on it's own define the whole of what the raspberry pi is, otherwise we could call a roku a raspberry pi. And they did provide an api for the gpu iirc. Then again, I don't know of any other mainstream embedded processors that have released the source code for their GPU? And no one in their right mind would expect any graphics chip company to release the schematics for their chips, it would be commercial suicide. I'm sure we could go on like this for another couple of pages but it's all besides the point, mixxx will work :-D Let's agree to differ and call it something else? |
Kiyoko Wellisch 17.09.2013 | The driver and the chip are not the same thing! You could have an open source driver with a closed source chip and visa versa |
Olimpia Briden 17.09.2013 | There's the broadcom chip that is as open as it can be, with only the gpu being closed and for good reason, their security stuff is all on there, so all the codec enabling options, e-fuses etc. reside there, it deals with booting, bearing in mind that this chip is also in commercial products, you can understand why they would want to protect that investment and that of their oem buyers. If it'll definitely work, I'll give it a go, thanks :-) |
Kiyoko Wellisch 17.09.2013 | The chips are all closed, sadly. It'll definitely work, I was talking to one of the Mixxx devs who did it for a bit of fun |
Olimpia Briden 17.09.2013 | I guess all the schematics are published for fun then? :-) http://elinux.org/RPi_Hardware#Schematic_.2F_Layout or the datasheet for the broadcom chip? http://www.raspberrypi.org/wp-conten...eripherals.pdf we clearly have a difference of opinion and you care more than I do about what it's called :-) I might give mixxx a go at some point on one but as I said previously, I'm not convinced that it will cope. I reckon it's a more likely prospect on something a bit more expensive, like a samsung 4412 based board. I'm quite interested in using the pi as a go between, with a MF plugged into the pi, then midi manipulation software, with the pi outputting altered midi. |
Kiyoko Wellisch 17.09.2013 | The RPI is hardware. Closed source hardware. The software (i.e. kernel, OS tools, drivers, DE, etc) that is most commonly used with the RPi is mostly open source. |
Olimpia Briden 17.09.2013 | All of the drivers are open source, except the gpu. |
Kiyoko Wellisch 17.09.2013 | Nope, the RPI is 0% open source. People just commonly run open source operating systems on it. The beagleboard is also 0% open source. |
Olimpia Briden 17.09.2013 | It's mostly opensource but the bit that's closed, 99% of people WON'T know what to do with it if it was opensource :-) the bit that's closed source is the gpu drivers, then again, so are most of the embedded devices of any worthy note. Like the beagleboard, using Imagination Technologies PowerVR SGX530 GPU for instance. |
Kiyoko Wellisch 17.09.2013 | If I were you I would compile Mixxx without all the extra fluff and just run 2 decks, the mixer and a stripped down skin. That'd run fine, I'm sure. edit: This title really annoys me. The RPi isn't open source :P |
Olimpia Briden 14.09.2013 | Hi All, I'm also interested in getting the pi running some dj software, however, I'm not entirely convinced now that it's up to the task with something like mixxx etc. the problem being the lack of 2d acceleration in X, it pretty much chews up all of the processing power which is (or was the last time I looked ) evident in how the gui behaves in something like xbmc, the video is accelerated at 1080p but the menus aren't, so they're not that responsive, it feels like you're running through treacle with toffee boots on. This would cause big issues with latency I feel. Btw. I am the same guy that posted on the raspberrypi community s for the mixxx thread and the guy that posted the raspberry pi gpio drivers. There is also an issue with usb, it's not very good on the pi, so plugging all sorts of fancy usb controller kit into it might cause issues, it's something that someone would need to try and report back!! Regards, Reggie. |
Kiyoko Wellisch 12.09.2013 | Gosh. I've been talking about running xwax on a a RPi for over a year? I really need to get off my ass and do it :P |
Stanford Almosawi 12.09.2013 |
Originally Posted by ChEeZeBaLL
|
Janyce Henningson 17.07.2013 |
Originally Posted by ChEeZeBaLL
I believe the SC2900 and SC3900 are brilliant - I prefer them to the Pioneer CDj's to be honest and they have the link support. |
Misti Yergeau 17.07.2013 | I've been researching this heavily the past few weeks. I have a Raspberry Pi and I've been trying to believe of something to do with it. A friend of mine has a Gemini CDJ-700 which is a fairly decent Pioneer CDJ clone. My main complaints about it would be that the jog wheel is too heavy, and when quickly back cueing the audio will only speed up to a point and then spinning the wheel faster won't make the audio playback any faster. The Pioneer CDJ-2000's are the only players I'm aware of that have a link functionality (so that audio can be played from multiple players reading off the same usb stick). If a knock off player came along that had a jog wheel with the same feel/functionality as a Pioneer deck, with link support, I might actually consider buying it. This got me to believeing, my Raspberry Pi has 2 usb ports, an audio output, and an ethernet port (the Pioneer CDJs use ethernet cables for linking them together). The Raspberry Pi would surely be fast enough to play back 1 audio file at a time and support pitch adjustments and scratching (I used to run Atomix MP3 [predecessor to Virtual DJ] on my crappy computer 10 years ago). I'm really interested in trying to build a basic CDJ style media player (with music coming from a usb thumb drive, although I suppose it'd be possible to connect a CD-ROM drive to the Pi as well) with a Pioneer style jog wheel (touch sensitive top for scratching and moving the side of the wheel for pitch bending), a pitch slider, and a Start/Pause button and a Cue button. Being a trance DJ, those are the only features I ever really use on a CDJ and I believe it would be a great starting goal for constructing something myself. I've been reading up on the differences between using a device as an HID vs Midi device. An HID is much more accurate and has lower latency that using the midi protocol, and using midi would add an unnessisary layer of complexity since this would be a purpose specific device. I've read through a few different tutorials on taking apart an old ball mouse and using the sensors from it with a larger encoder wheel that is the same size as the CDJ jog wheel. One of the biggest problems for me would be the software. I'd want to use a super slimmed down version of Linux that boots directly into some custom software that would handle all the functions of the player (The software would have no GUI). Apparently with the right tweaks and optimizations it's possible to have an SD card based linux system to boot in a matter of seconds. Perhaps you could use a small single line LCD display (like this one) to show track and time information. I've been looking at xwax which is an open source lightweight piece of DVS software. It only supports using a time code for play back, but it might be a good starting point for me (I'm somewhat familiar with programming in C and I might try tearing my hair out looking through the source code). Regarding interfacing the HID hardware with the software and audio programming in general, I have no experience with that at all. Time to start reading I guess. |
Arcelia Siebeneck 05.07.2012 | also: http://www.raspberrypi.org/phpBB3/vi...php?f=2&t=4985 and http://www.raspberrypi.org/phpBB3/vi...hp?f=50&t=8842 |
Arcelia Siebeneck 05.07.2012 | decoding mp3s should be possible via SoC hardware decoding? if not now, soon... (once we have full hardware support for the GPU in software). but if it's not yet possible, the Pi's cpu is roughly equivalent to a pentium 2-300mhz which should be fast enough to decode an mp3 I'd have thought... |
Kiyoko Wellisch 02.07.2012 | That's the idea! Decoding mp3s might be a bit taxing on the system though... |
Chasidy Heckenbach 02.07.2012 |
Originally Posted by MrPopinjay
|
Kiyoko Wellisch 02.07.2012 |
Originally Posted by hairblz
|
Kiyoko Wellisch 02.07.2012 | I still want to see if I can get xwax running on one of these |
Chasidy Heckenbach 02.07.2012 | sounds good i finally got the email from RS supplies a few days ago to actually place an order for one, going to be a while but should be cool. ordered the mini case for it too, neat idea. i downloaded a vmware image the other day too so have a virtual one running here, not sure if its emulating the arm processor or whether it's just an intel build of the rpi setup or something. i'd be very interested to see if u can get mixxx running on it i remember ryan mentioned on the mixxx irc the other week that he had got one and was keen on getting mixxx to run on it. and if anyone can then he can |
Arcelia Siebeneck 02.07.2012 | I received 2x Pi's in the post last week so I'm going to give it a good go... thanks for the heads up |
Dorethea Filyaw 19.06.2012 | I've been looking into this for a few months now, ie. having two raspberry pis instead of CDJs running through my analog mixer. There's also a player called Alsaplayer (or libalsaplayer) that is quite lightweight. I've installed it on a virtualbox raspberry pi and it works . . however I can't work out how to use many of the features that the software claims to have. I have managed to play music and repitch with accuracy of 1% (nowhere near enough). The software developers claim that alsaplayer (or libalsaplayer) is capable of: -pitch accuracy beyond 0.01% -remote control from other applications (and MIDI control) Unleashing these features would make this software perfect for the job (except for nudge function), don't you believe? |
Chasidy Heckenbach 14.04.2012 |
Originally Posted by MiL0
they have some nice new multi coloured waveforms coming in the next release 1.11.0. i'm concerned about cpu usage and reliability atm tho with mixxx verses something like traktor. i like that mixxx uses xml for it's controller def files but really don't like the format from what i've seen so far. vdj does a much better job with the way it uses xml, tho having actual script code in separate files like mixxx is better. i also don't like the way script code is bound to the device in mixxx. this shouldn't be in the devices definition file at all. there should be some separation between the devices def file and any config files uses the devices. oops - too much geekery...
So then all you'd need is one of these 7" LCD screens and you've got yourself a very compact opensource Traktor-esque controller (CDJ style, no need for a laptop)... all for around |
Arcelia Siebeneck 14.04.2012 | I'm quite interested in seeing if Mixxx will work properly on the Raspberry Pi. From the look of this thread, it seems it might work with relative ease: http://talk.maemo.org/showthread.php?t=38747 more information directly from the Mixxx developers: http://www.mixxx.org/community s/viewtopic.php?f=1&t=292 So then all you'd need is one of these 7" LCD screens and you've got yourself a very compact opensource Traktor-esque controller (CDJ style, no need for a laptop)... all for around |
Chasidy Heckenbach 03.04.2012 | ah.... cool cheers. i'll do that then... re: the android comment from someone before; android does use the linux kernel but all i'd want is a minimal linux system and def not need a gui - so still not sure why android was touted as a decent option for this... |
Arcelia Siebeneck 03.04.2012 | from Element 14 / Farnell - you have to click on the 'email me for pre-order info' link... then wait until they email you (I waited about 2 weeks!). Inside the email they give you a special url where you can pre-order (you give your name, address and debitcard details then they debit you when they have a release date). |
Chasidy Heckenbach 02.04.2012 |
Originally Posted by MiL0
|
Arcelia Siebeneck 02.04.2012 | just pre-ordered my Pi... hopefully it should be here in the next month or so |
Jerold Nesselrode 01.04.2012 | Unless a manufacturer picks this up I bet the best direction for a project like this would be open source, purpose built (to some degree) software. Say a lightweight Linux distro with some software capable of tempo adjustment and vinyl emulation as a starting point. I could definitely see myself using a home built CDj with a platter, pitch fader, play/cue, rotary pushable encoder for track selection, usb input, cd audio input and a screen with basic visual feedback just for the kicks of it. |
Nancey Inderlied 31.03.2012 |
Originally Posted by deevey
|
Chasidy Heckenbach 31.03.2012 |
Originally Posted by Shishdisma
i don't really have any use right now for one of these devices but maybe getting one just to see what is possible from it would be cool. guess all i would need is to hook power up to it and an ethernet cable - no real need for video out. would need the "model b" ofc to have ethernet but also would want the two usb ports anyway.
Model A has 128Mb of RAM Model A has been redesigned to have 256Mb RAM, one USB port and no Ethernet (network connection). Model B has 256Mb RAM, 2 USB port and an Ethernet port.
re: android i only just noticed in that image posted at the start of this thread. given how generally unstable and buggy android is compared to linux it would seem a very odd choice for a "performance critical" device anyway |
Arcelia Siebeneck 31.03.2012 | don't forget the Pi has hardware decoding for video/audio so the ARM processor speed doesn't necessarily matter as much.... just look at XBMC running 1080p videos perfectly on the Pi |
Rolanda Clodfelder 30.03.2012 |
Originally Posted by Shishdisma
It'll depend how its programmed, how slimmed down everything is going to be and how many background tasks are running. I don't believe you can compare the Maschine Application running on a Mac to a CDJ style dedicated software running on a box its been designed for. |
<< Back to Reviews of DJ equipment Reply