Why Buy The Newer Model, When You Can Just Replicate Its User Interface?

Every now and then, along comes an awesome hack from years past that we missed at the time. We kick ourselves for somehow missing such amazing work, and since it’s that good, we share it with you with apologies. Such is the case with [Andrei Anatska]’s faithful replication of the Pioneer CDJ-2000 user interface as an upgrade to the earlier CDJ-1000 DJ controller, a piece of work of such quality that you could almost mistake it for being a commercial product.

At its heart is the STM32F746G Discovery board, which for some reason it pleases us greatly in this context that he refers to as the Disco board. If you’re hazy on the details of the various STM dev boards, this is the all-singing all-dancing one with the fancy colour LCD display. Out comes the VFD on the CDJ-1000 and a set of wires are soldered to its main board, then the Disco board is hooked up with the project firmware installed. The piece de résistance is the case, for which he eschews 3D-printing and instead cuts out from black plastic. Full instructions can be found in this PDF, so should you happen to have a CDJ-1000 that’s seen better days, you can join in the fun. See it in action in the video below.

DJ controllers may be run-of-the-mill today, but to those of us whose DJing days were in the era of a pair of Technics SL1200s and a stack of vinyl to the sound of early ’90s house music they are still nothing short of miraculous. We’ve featured plenty of hacks involving them here but they don’t always involve professional kit. Even a game controller can be pressed into service.

Thanks [Niklas Fauth] for the tip.

9 thoughts on “Why Buy The Newer Model, When You Can Just Replicate Its User Interface?

  1. That’s such clean work and great reverse engineering on top of that. Also learned that $55 can buy you a nice programmable touch UI module masquerading as an eval board.

  2. They’re all called “Disco” kits – it’s often in the part numbers and marketing. It’s shorter and more fun than “Discovery”, but it does also make a great pun for this project :)

    These are excellent boards, and it’s cool to see one used in a project as-is. They often include things like external parallel memories, MEMs sensors, audio codecs, and sometimes even networking with ethernet ports or 2×4 ESP8266-01 connectors. Some can even run mainline Linux out of the box.

    Check them out! The fancy ones get a bit pricy, but a nice one with extra RAM and a small display will only run you $30-40, less than an Arduino Mega. Or a minimal “STM32F3Discovery” board costs $15, less than an Arduino Uno or Nano, and it’s used as the target board for the embedded Rust “discovery” ebook. There’s also a fork of the Arduino IDE for STM32 chips if you really need it.

    Do yourself a favor, and remember: friends don’t let friends learn with 8-bit Arduinos in 2020. Or even 2018, when this project was done.

    1. A lot of work has been done to bring the STM chips into the various IDE’s including most if not all disco kits. with platformio supporting the various backend infrastructure like mbed/stmcube/arduino/libcm3 etc. In fact stm themselves have done great strides in working with the community, they even picked up the stm32duino forum when things went a little south just because there was a large community of maker’s using that site , a story i hinted to hackaday but alas they never featured it. We also recently ported tinyvgl to platformio/arduino for use on stm with spi/i2c/fsmc/8-bit/16-bit buss’s. This enabled us to also port things like BTT touch marlin to most if not all disco boards with a screen. As someone myself who also DJ’s and has had various pioneer DJ decks over the years I can side with the ‘Why buy the next model’ idea, Something Numark understood and in turn they released the screens as a separate items for backwards compatibility on older decks so you dont have to rebuy to just get one or two new features when most of the hardwork is done via rekord box/virtual dj (it’s new stems system is amazing) /serato and new features are added to that without the need to rebuy hardware. Also we recently added most of the various touch screen you can get from MKS/BTT and the copies , most have access to SD card/3 uarts/ eeprom/i2c/spi. for those that are interested in such I have a lot of code posted to my git hub https://github.com/darkspr1te along with the discussions on https://www.stm32duino.com/ . Also most of the marlin touch screen support a esp connection so turning them into IOT control panels is super easy (I am just finishing up a project to use such a screen+esp+rs 485 driver to make a simple DMX control panel with DMX over ethernet and QLC+ )

  3. BTW, thanks hackaday for featuring this, am now porting the firmware to platformio/Makefile and to support the various cheap touch screens kits I have (disco/MKS/BTT based boards). As the original author used keil v5 most new users will struggle porting to platformio/arduino/Makefile based IDE’s. This same device is usable on quite a few Pioneer units and with a little addition can be used standalone with Virtual DJ 2017/2020.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.