This project makes it possible to connect your (old) CDJ 1000 MK3 as a midi controller to Rekordbox. You will only have to connect 5 wires to your CDJ’s and the project is completely reversible if you want it to go back using CD’s.
While I consider this an easy project, things could go wrong and you can damage your electronics! So do this project at your own risk!
Note that basic functions of using Rekordbox with CDJ 1000 can ben achieved with using timecode CD’s.
Both the source and compiled HEX file are now up on Github
After going through my backups I’ve found an old source for this project. As I’m not planning to work on this in the near future feel free to download and use it. But be nice and be sure to mention Андрей Анацко and also me as project starters and link to this website. Cheers!
The zip file contains the complete source, you can open it with Keil uVision 5 (project file is in the MDK-ARM folder).
This project started when I found Андрей Анацко project to reverse engineering the SPI commands for the cdj1000 mk3. This project is found here. Be Sure to check out his CDJ new life project!
Initially I started this project using an Arduino to translate the CDJ SPI signal to MIDI commands. I got stuck and contacted Андрей Анацко to ask for his help. He was very kind to help me start this project. The project now uses a STM32F429I-DISCOVERY. Total cost are around €60-80 for all the needed hardware.
I worked on it for a few months and there are stil bugs in there so I do not consider this a finished project. As usual use this software at your own risk. I cannot be helt responsible for any damage to your equipment.
Cdj 1000 Rekordbox Download
If you feel you have a contribution or found a bug just let me know in the comments (here or on youtube). My time for this project is limited so please be patient for a response.
The CDJ controls are mostly the same except for:
- Jogmode Select = Slip mode
- MP3 Folder Search = browse up and down
- Eject = Load selected track
- MP3 Folder Search + Time Mode / Auto CUE = Windows switch (buggy)
- Textmode short press = 4 Loop
- Textmode long press = 8 Loop
- Unlock – Lock = Switch deck. Deck 1 becomes 3 Deck 2 Becomes 4
- Release Start = not used
- Hot Cue Green = Set
- Hot Cue Orange = Empty
- Recmode = Delete Hot Cue
Logic Level Shifter
First step is to build yourself 2 logic level shifters. You will need these (one for each CDJ) because the CDJ works at 5 volts and the stm32 at 3.3 volts. I suggest you build 2 small pcb’s, one for each CDJ.
You will need;
6x ceramic 220pf
2x ceramic 1uF
6x 10 kOhm
2x 470 Ohm
You will also need;
STM32F429I-DISCOVERY and 2 CDJ 1000’s MK 3
ground should be shared between your logic level shifter to the CDJ and the STM32.
Connections to the top panel of the CDJ as in the photo’s below. 13. SCLK 14. SOUT 15. SIN 16. XCS and GND
Connections to the stm32
CDJ 2/4: PC2 SPI 2 MISO – PC3 SPI 2 MOSI – PB10 SPI 2 SCK – PB12 SPI 2 NSS
CDJ 1/3: PA6 SPI1 MISO – PA7 SPI1 MOSI – PA5 SPI1 SCK – PA4 SPI1 NSS
Don’t forget to disconnect the main pcb from your CDJ so it will not interfere with the stm32. You don’t have to disconnect all cables. Just the one in the photo.
The main pcb is located under the metal plate at the bottom of your CDJ.
Before disconnecting make sure your cd-drive is unloaded.
Mendeley software for mac. Download Mendeley Desktop for macOS macOS 10.10 (Yosemite), 10.11 (El Capitan), 10.12 (Sierra), 10.13 (High Sierra) See release notes. Other systems: Mendeley Desktop for Windows Mendeley Desktop for Linux New Mendeley Reference Manager is now available Get started. Mendeley has plug-ins for Word, LibreOffice and BibTeX. We cover thousands of citation styles and you can even create your own.
All hardware is connected now, let’s continue with the software side.
- Install Rekordbox (https://rekordbox.com/)
- Install stm32 cube programmer (https://www.st.com/en/development-tools/stm32cubeprog.html)
- Connect stm32 mini USB to your computer (windows will detect an USB drive)
- Run stm32 Cube programmer
- Use stm32 Cube programmer to download CDJ2MIDI_V1.HEX into your STM32 device
- Close program
- Disconnect mini usb
- Connect mini usb
- Open rekordbox
- When it is fully launched connect the stm32 micro USB to the computer.
- Rekordbox will regocnize PIONEER DDJ SX and ask you to install driver.
- After the installation is complete start your trial or use your license
- Configure your audio output (read sidenote at the end of this file)
- Go to MIDI in the upper right corner and select import
- Import the CDJ2MIDI_V1.CSV file
- Close rekordbox
- Disconnect mini usb and micro usb from your computer
Connecting to Recordbox
All your software is now setup
- Connect your CDJ to STM32
- Power up you CDJ’s as usual
- You should see the POWER ON message on your CDJ display
- You now have to connect the mini usb from the stm32 to an USB charger, it is only needed for power.
If you did this correctly (you’ll have about 10 to 20 seconds) your CDJ should be powered and LED’s will light up. If not you’ll get an error code E-8709. Disconnect the stm32 from the computer power down your CDJ’s and try again from step 1.
- When your CDJ’s are up and running. Launch recordbox.
- When Rekordbox is fully launched connect the micro usb of the STM32 to your computer
- Pioneer will give a notification in the left bottom corner the pioneer ddj-sx is connected.
- You can now use the CDJ to control recordbox.
I assume you know how to configure your audio interface to connect separate channels to your external mixer. If you don’t have an audio interface and want to use your build in headphone or line out. Do the following;
- Start rekordbox
- Go to preferences
- Go to audio
- Select “built-in audio”
- Scroll down and select “external”
- Set output channel Deck 1, Left and Right to Output 1
- Set output channel Deck 2, Left and Right to Output 2
Cdj 1000 Timecode Rekordbox
This is mono but you’ll be able to actually mix on your external mixer.