Disc Jockeys influence on SDR

SDR and DJ ConsoleThe User Interface of computers suck when it comes to Radio Controlling. In January 2010 I got so annoyed by being forced to control the radio with keyboard and mouse that I finally decided to look for something else. Now, almost one year later I’m happy that I can present you an interesting alternative. The interface costs less than 100 USD, is commercially available and improves the overall SDR experience significantly.

The idea

While strolling through the shelves of the local consumer electronics retailer, I noticed some kids producing horrible noises by scratching on a digital turntable. When they left after a few minutes I went over to have a look by myself on this device. The device of suspect turned out to be a Disc Jockey Console which delivers an extensive set of functionality for ambitious DJs. Where Disc Jockeys used Vinyl a few decades ago, they have been replaced by MP3s, Digital Signal Processors and powerful PCs. However one thing has not changed – the User Interface.

Even if the turntables, the knobs and the buttons on such a console are directly converted into digital signals, the tactile feel is almost the same as on a record player from the seventies. For the DJ’s profession, keyboard and mouse are inadmissible. Why change things proved systems which have been optimized over several decades just because the application is transferred from the analog into the digital domain?

Exactly this question also applies to Software Defined Radio. I already discussed the importance of the User Interface in another blogpost – therefore I’ll come back now to the DJ Console ;-)

When I had the DJ Console in my fingers I realized that such a device would satisfy most needs for controlling a radio. It comes with two big turn wheels, more than twenty buttons and almost ten knobs.

Hercules DJ Console used for Software Defined Radio

With this thought, the idea of a new SDR User Interface was born.

The result

So, I just needed to connect the DJ Console to my PC and somehow use it to control an SDR software. Sounds easy, doesn’t it? Unfortunately it was not that easy. Now looking back on this project, it took me more than 100 hours, a couple of failures and a few drawbacks. I’ll share my experiences in another blog post. Now I’ll focus more on the result.

From the beginning it was very clear, that I do not want to develop my own SDR Software but instead, making maximum reuse of existing building blocks, namely the RF and Signal processing building blocks. Since I couldn’t find an SDR framework or software with proper Interfaces I had to look for an SDR software to modify and adapt to my needs.

I selected Flexradios PowerSDR as the Signal Processing building block because the sourcecode is published under the GPL license and the software itself made a stable impression. My good old Softrock clone added the RF part. The main focus of my work was the integration of the DJ Console into PowerSDR. While I had not only to add but also modify the PowerSDR source code, I’m quite happy with the result. Now let’s have a detailed look on it!

PowerSDR Screenshot

Within PowerSDR I can now select in “Setup” a new Tab called “UI Controller”. Here a connected Hercules DJ Console can be selected and individually configured.

Power SDR Setup Screenshot

The sweetness of software is its configurability. I wrote a configuration mask which allows everyone to map the software’s function to a specific knob, button or wheel according to the operators’ individual preferences.

Hercules DJ Console Configuration with PowerSDR

The available functions have been divided into three groups:

-          Buttons (On – Off)

-          Turning Knobs (Value range 0…100)

-          Turning Wheels (increment / decrement)

Currently the buttons of a Hercules DJ Console can be mapped to the following functions:

Hercules DJ Console PowerSDR Knobs

-          Lock VFO

-          MultiRx On/Off

-          Narrower Filter

-          Wider Filter

-          Next Mode

-          Previous Mode

-          Noiseblanker 1 On/Off

-          Noiseblanker 2 On/Off

-          RIT On/Off

-          XIT On/Off

-          Increase Tuning Steps

-          Decrease Tuning Steps

-          VFOA to VFOB

-          VFOB to VFOA

Regarding the turning knobs, the following mapping is currently supported:

DJ Console Hercules knobs

-          AF Gain (Overall Audio Volume)

-          Ratio MainRx/SubRx

-          RIT

-          XIT

-          Volume Rx1

-          Volume Rx2

An finally the turning wheels can be used as

-          Frequency Control VfoA

-          Frequency Control VfoB

-          Controlling Filter Bandwidth

The following video will give you an overview how this works in practice:

Ensure that you watch this video in 720px Full HD! Sound is turned on after the first minute!

So, what’s next?

I would currently label the status of my add-on to PowerSDR “prototype”. Even if it works quite well for me, it has not been released to the public yet. My further effort on this will depend on the feedback from you.

Over the last month I was talking and complaining a lot about the bad User Interfaces for Software Defined Radios. The intention of this DJ Console integration was to prove that it is possible to have a decent UI for little money. Please recognize the importance of the User Interface building block. It is as important as the RF and Signal Processing building block. Please spread the word!

DJ Console shot with pentax

If you like this project, please leave me a comment with your thoughts!

[update 13/12/2010]

I received a couple of comments that this particular Hercules DJ Console MK2 is not sold anymore. This is true. However you might still find it for reasonable prices on ebay from time to time. On the other hand, Hercules has brought out a couple of new models. The Hercules DJ Control MP3 e2 is the cheapest one which starts at 99 USD on Amazon. While I have not tried out this console in particular, I’m confident that it will need only little adjustment on the software side. My PowerSDR extension is communicating with the DJ Consoles through the MIDI interface. Fortunately, MIDI is an old, reliable and very well documented standard.

About Tobias (DH1TW)

Self-confessed Starbucks addict. Loves to travel around the globe. Enjoys the technical preparations of Amateur-Radio contests as much as the contests themselves. Engineer by nature. Entrepreneur. For more, follow him @DH1TW

Comments

  1. Good job Tobias!
    Looks like you found a nice reasonably priced control surface – way to go spotting how it could be used to control the SDR! I’m a programmer by trade so I’m interested in what language you used to integrate it into PSDR. Does the control surface “speak” MIDI or did you find an api you could talk to it with? Will your s/w interface work with or adapt to any of these type of surfaces, or is it just this one type for now?

    Will you be making your s/w interface available? I’d love to play with this with my Flex 3K.

    Frankly, 100 hours isn’t a whole lot of time so kudos to you!
    Mike W0STB

  2. Jojo Vicencio - DU1VHY says:

    You have hit the nail on the head with this Tobias. Many hours of frustration will be avoided kwith such a functional interface. Appreciate your dedication and passion for our hobby to make it more accessible and enjoyable. 73,

    jojo

  3. Hey Mike,
    the software was written in C#. I also wrote a C++ USB driver for the DJ Console. It works but sometimes it has some random timing problems which I couldn’t track down to the root cause. The second approach was more successful. I found out that the Hercules MIDI driver can be used to read / write commands from / to the DJ Console.

    The vendor Hercules has an API, but for unknown reasons they only distribute it to few partners.
    I have not tested my s/w interface with other type of DJ Consoles. But what I read on the internet it seems that they are the same or at least similar.

  4. Alan Hill says:

    Tobias,
    What more could we ask for and kudos for implementing a prototype proof of concept. I suggest you share this with the multitude especially the softrock community of 2000+ users.
    Cheers,
    Alan – W6ARH

  5. Sotiris SV1BDO says:

    Fantastic job Matias !!! It’s not just a Contour ShuttlePro flywheel, but a complete user interface.

    I don’t know the communication protocol of this USB based device, but it will be very good if your add-on code-interface works OK with the majority of the USB DJ consoles (I believe that most of them will use approximately the same approach on design and communication protocol).

    Your project will “push” me to buy my favorite SDR receiver (PM-SDR) earlier than I had planned !!! I hope that your code will work OK with PowerSDR I-Q also.

    73, Sotiris SV1BDO

  6. Dan W9EQ says:

    Nice work! That is the sort of thing I have been hoping to see added to the SDR software. Keep up the good work.

    73, Dan W9EQ

  7. Paul Giusti says:

    Hi Tobias
    What a great idea, i am currently using Shuttle Pro and its not really a great solution for me, but you have proposed using the DJ Console i think is perfect solution..well at least for me controlling a Flex 5000a. I am already searching Ebay for a Hercules DJ Console MKII in the hope that the configuration mask will be made available by you soon. I would definitely be interested in any other consoles that you find have the same level of configurability in case I cant source the Hercules.
    Always llok forward to your emails..there is always something new and interesting in the SDR area..Thanks

    Paul, VK3APG

  8. Tobias
    it is a great project; you are providing the missing link to SDR user interface.
    I have been using powersdr for 4 years (with sdr1000 and f5k now) and I wont back to a “traditional” radio.
    The video and mouse dependency is a barrier with which I am used to, but some a real touchable console is missing for me.

    I will follow your project I was aware reading the national contest journal and I will be happy to be a beta tester.
    don

  9. These consoles change at a staggering rate, the current version is 4. Does the software support the newer/current versions?

  10. Vince Burolla says:

    Absolutely fantastic piece of engineering and reuse of existing hardware. This would be exactly what I would be looking for in an UI. My preference would be to use it with DSP Radio software in the waterfall display mode running on my MacBook Pro.

  11. Clive says:

    Great work Tobias, full marks. Hope the interest shown here spurs you on. 73 Clive GW0PPO

  12. I never operated DJ or PC game console! I like remote head of my recent TS-480. However, I enjoyed test drive of Toyote-Prius! SDR GUI seems to be overloaded by irrelevant info and commands. Google home page works just fine. GL with C# Amigo Tobi!

  13. Yes thats it. Nice hand console for contest and for experiments. Great Idea Tobias. I think it’s new time about SDR began. I thought to be console only one big knob with several small digit decade frequency buttons but this is more than I was expected.Somebody said that is hot water discovered but to recognise it is character of real good experts.
    73 de Davor, 9A4KJ

  14. Dan, W5XZ says:

    good work Tobias. after using my flex3k for over a year, i have learned to live without knobs..

    BUT when you want to operate in a contest with N1MM software ( or ?? ), its a different story. Windows seems to lose ‘focus’…I call somebody, try to log them, and suddenly i’m on 60 Mhz !!! very clunky..

    with your UI, it will be possible to disable keyboard shortcuts in PowerSDR and still control the radio..SUUUUUWEEET!!

    and now i know, i WILL need 2 video monitors for a dedicated run at a contest..so many nice windows in N1MM..but i could never give up the beautiful panadapter in PowerSDR..

    plus, this interface may bring some guys into the SDR fold who just have to have knobs….

    hope your software is released soon.

  15. Steve Silverman says:

    Tobias: Very innovative and great use of a low cost, but totally appropriate “prosumer” device to put a new slant on an SDR user input device and corresponding display. Certain operations are definitely best done by rotating a knob rather than mouse movements on a surface, not that the same results cannot be achieved either way. But the key is the feeling and control that the DJ Console or similar device gives to the user. Once a user gets familiar with the layout, complex SDR operations will be done without even looking at the console and they should be accurate and and fast. Be sure to pick a console model that will be around awhile and does everything you need for a complete SDR user interface. Real hams don’t use a mouse, but they know what SDR can do for them.

  16. Frank says:

    Bravo Tobias! I fully concur that the UI development will help push the capabilities of SDR among amateur radio ops tremendously. The WoodBoxRadio Tmate for the Flex Radio SDRs is sort of expensive for US hams…we don’t have a US dealer yet, for instance. Your prototype appears to be more powerful than Tmate, at first glance.

    Please keep up the work as the $99 hardware acquisition via Amazon is a good price-point for most of us.

    Frank
    K4FMH

  17. I highly recommend Open Sound Control (OSC) if you want to further development in this space, or support other mixes of other devices. A lot of people are using it in place of MIDI for these sorts of multimedia mashups. Otherwise, this is pretty awesome! Thank you for pushing things forward.

  18. Hola Tobias!

    It´s so cool man! :D

    Great idea!

    Mni 73

  19. G4CLA says:

    Well done Tobias, what a great solution. Many people have worked hard on SDR software, but little has been done to try and provide a good UI. This looks excellent!!

    Pete.

  20. John Stuart says:

    Instead of the Hercules line, take a look at the Behringer BCD3000 for a more ‘professional’ looking DJ controller. Priced around $150, it includes a mic preamp and equalizer, USB interface, and more.

    http://www.behringer.com/EN/Products/BCD3000.aspx

  21. Well done Tobias! Extra interesting using of DJ controller… If it’s possible… may be you publishing yous programm code of PSDR in SVN branch?

  22. Brilliant. Thank you for all your efforts. I think it is the piece SDR puzzle I have been missing on my SDR but didn’t conceptualize. I will be very interested to see the end product, as I am sure lots of other people will.
    I was thinking the SDR IQ would be another good choice, but on second thought, the way it is used by most people is less intensive than the Flex.
    Very much looking forward to a copy and using it.
    Doug K6JEY

  23. Mark NU8Z says:

    Tobias,
    Great Job! It looks like you are headed down the right path.
    Question? Will the DJ Console hold the control of PowerSDR when the focus is on another application such as a logging program?

    Keep up the good work.

    Mark NU8Z

    • Hey Mark,
      yes – the DJ Console holds the control of PSDR when the focus in on another application. Instead of emulating keystrokes (as other solutions do), the DJ Console is connected directly and exclusively to PSDR. No more unintended loss of frequency due to a wrong set focus.

  24. Tobias,

    One of the Flex reflector users posted the link to your website. You have done a very comprehensive job adapting the DJ interface as a PSDR UI. While I’ve not had any great objection to using a mouse to control PSDR and my FLex, there have been times I would have relished having something better than the wimpy Griffin Powermate knob. You’ve gone way beyond the tuning knob concept so that an operator could do just about every operation but contact logging via your UI. I do hope you continue the development.. For one, I would make ready use of such an interface. And I am thrilled that your software maintains focus with PSDR.
    My next task will be to keep tabs on developments in hopes that there will be a public software release.

    Best 73 and Seasons Greetings

    Ted WA3AER

  25. Dick N0CE says:

    I’m newly interested in Power SDR, and have much to learn. I don’t know what radio/computer/display etc. you are using. What I did notice in your video is that the CW signals displayed seemed much more responsive than what I have seen in videos of other configurations. They looked more like real time. I’m wondering how this is accomplished?

    Thanks for your work.

  26. Tobias,

    A question that I do not see answered by viewing the video: does the UI provide means to “click” on a signal in the panadapter/panafall display to immediately “pounce” on that signal? As an op running low power, I frequently find that I get better results using Search & Pounce (S&P) operating mode instead of Run. Presumably one could continue to use the mouse for such functionality, but that results in using 3 interfaces: the console, the mouse, and the keyboard. Keeping it down to 2 maximum seems mandatory; and I know that serious contest operators only want ONE.
    What am I overlooking on the console that would enable S&P operation? Thank you for your reply.

    73

    Ted WA3AER

  27. José Dumoulin says:

    Félicitations Tobias

    I will put my SR1k back into service.
    Happy new year es 73

    José F5JD

  28. Greg VE3YTZ says:

    Great Job Tobias!

    I see great potential with this approach.

    I was very interested in your video demonstration of PWR SDR in a recieve mode. It would be interesting to see it in a transmit scenario. Just adding to Ted’s (WA3AER) comment, I suspect the PTT (foot switch, mike) would add a 4th interface that would need to be accomodated/used. Unless one relies on VOX, a foot switch would be least intrusive as it frees up the hands.

    Thanks again Tobias, I’ll be very interested in seeing were you take this next.

    73

    Greg/VE3YTZ

  29. Victor RN4CW /UR7GU/ says:

    Very well ! Great idea ! Thanks many Tobias ! 73 ! Good luck ! Vic. / RN4CW

  30. Duncan / WE7L says:

    Great idea for the interface, great execution Tobias!
    Best of luck with this.
    73
    Duncan
    WE7L

  31. Hi, great idea and very nice job done.

    It will be great if that code could be added to the HPSDR PowerSDR versión.

    73, Máximo – EA1DDO

  32. Lawrence Stoskopf N0UU says:

    Great job. Wonder if I can remember the function of all of those knobs!

  33. Tore Sandström SM7CBS says:

    Nice job!
    Time to reinstall the SoftRock and get that interface to it?
    Regards
    Tore

  34. Nice project, very nice feature, for sure! Our finger with their multiple abilities are certainly MUCH better than a mouse. It will bring all that bunch of people saying that they don’t like SDR because they like a radio with buttons. Here you have buttons! Only this un-expensive Hercules mk2 DJ-Console and the screen. I like it a lot!
    I only see a problem, with labeling the butons, after configurying them. Can you show labeling, on screen, each time we need to remember which botton does what now? We migh decide to asigne a different function for tha same button later, depending on modes, being in a contest or rag-chewing. DJ labeling is good for them only!

    • Hey Jose Maria,
      yes – the labels are rather fixed and can not be changed. This is a compromise of course, because on the other hand you get an inexpensive multi-purpose User Interface with these Hercules Consoles. I think several workarounds are possible: You could make a printout of the configuration screen or add some sticky paper labels on the console.

  35. Hi Tobias,

    What a GREAT idea!. I own a Flex-5000A along several non-standard input devices, as what I don’t like on SDRs is the PC interface. This is a very good way to control the PowerSDR software!

    I will get an Hercules DJ Control MP3 e2 in short time :-)!

    73 JOSE EB5AGV

  36. FB Tobias!
    I’m happy to see knobs oncemore, being an Ham for abt 50 years I have had more knobs years than mouse years, hi ! I feel a l’ease with PC mice and Kb but knobs is still a better DX feeling!
    Thank you Tobias, I’ll start to look for some DJ console on the market.
    I hope it will be available also with other SDRs soon .
    Have fun with your nice job on DJ Consoles, Tobias!
    Augusto i2jjr etc

  37. Yes, a printout is a good option, Tobias.
    I was thinking of a ready available picture on-screen, to access only if needed. Everything is possible after a hard work from programmers.

  38. Charles says:

    Very happy to see someone who can bridge the great divide between SDR and analog user interface. The Flex will truly live up to its potential with such a user interface that can be assigned functionality to suit the user. Very best wishes for success with this project.

  39. LU9MDH, Daniel says:

    Excelent!! great great job!! congratulation!

  40. Freek PA0PAF says:

    Hello Tobias,

    I’m very interested in your software for the DJ console, to control my Flex-5000. You are using the Hercules Mk2, but I was told that is replaced by the Mk4.
    Is your software also working with Mk4?

    73, Freek, PA0PAF

    • Hi Freek,
      no, the DJ Console MK4 is currently not supported. My advice is to get an Hercules MP3 E2. The layout is exactly the same. The only difference is that the MK4 comes with an internal soundcard.

  41. glen worstell says:

    Hi,

    I purchased a Hercules DJ Control MP3 e2 for use with my Flex 1500, and it made the Flex way, way better IMHO. THANK YOU!!!

    I recently replaced the Flex 1500 with a TAPR/openSDR ‘hermes’, and use a version of powerSDR that was modified for the hermes. Again I am in a fix as you were: without buttons and knobs the human interface is not very good.

    My plan, hopefully, is to add your code for the Hercules to the hermes version of powerSDR. In order to do this I need the source code for your mods.

    Is that available?

    Of course I also need the hpsdr hermes source code, but I can get that without too much trouble.

    Cheers,
    g.
    KG0T

  42. F6EOB says:

    Hello, Congratulations for your work, I installed(settled), to use a MK2 to lose 2.0 and it works very well.
    with one DJ checks(controls) instinct it does not work. In your opinion that they have the versions of the software For this console. Thank you

  43. Luis says:

    Tobias

    Superb job!! congrats and look forward to know more about this alternative

    Luis XE2B/W2GO

  44. N1EU says:

    This is fantastic! PLEASE consider porting your software to the HPSDR version of PowerSDR to bring this UI to the non-Flex users of PowerSDR (ANAN-100, etc)

    73 Barry N1EU

  45. IW2NYX says:

    Hi Tobias,

    is there any plan to support the new DJ CONTROL INSTINCT console ?
    It’s cheap and the embedded audio port come in handy for headphone connection.

    It’s control layout is quite similar to E2 / LE editions, it should not be difficult to add it to the list ;-)

  46. Hello !

    Great idea. I have FLEX1500. Is it possible to provide software that allows you to connect the console? My friend has a Hercules DJ Control MP3. I try to connect it to TRX.

    73 de Artur SP3VSS

  47. N4JS says:

    Great Job on the interface. I am using the using the DJ Control MP3 e2 with the Flex 5000 and it makes it so easy to set and change controls. Do you have any plans to update the software now that PowerSDR 2.7.2 has been released ?
    Thanks for the great software
    73′s John

Trackbacks

  1. [...] les détails sur le blog de DH1TW. Ecrit le 18 juin 2011 à 7:32 par Passion-Radio dans Logiciels radios,SDR et WebSDR – 2 vues [...]

Speak Your Mind

*