The following info is all about the S4 MK1, the MK2 has a different (non-panelized) PCB design and thus doesn't allow for reusing the original PCB's without serious modifications. The MK3 also has a single PCB for the mixer and deck sections.
- Use the
Kontrol_S1_LC_OLED
sketch - Either
#include "unit_d.h"
or#include "unit_c.h"
based on the unit - Uncomment
#define SCREEN
if using the OLED module - Edit the
MIDI_NAME
in thename.c
file to the desired name (these cannot conflict with other S1 units you're using) - Flash the firmware
All leds are controlled by a transistor activated by the 595 chip. However not all are connected the same way, sending 6 all-off byte packages (0b00000000
) will turn some of the LED's on, these specific bits to be set to HIGH instead of LOW in order to be turned off.
// LED OFF STATES from least significant bit (so notation is in reverse)
// -- BYTE [0]: 0b01010101 --
// CUE1 green - CUE1 blue - CUE2 green - CUE2 blue - CUE3 green - CUE3 blue - CUE4 green - CUE4 blue
// -- BYTE [1]: 0b00000000 --
// Sample 1 - Sample 2 - Sample 3 - Sample 4 - SYNC - CUE - PLAY - SHIFT
// -- BYTE [2]: 0b11000000 --
// ON AIR - SAMPLES - DECK A/B - DECK C/D - KEYLOCK - MASTER - TEMPO OFFSET UP - TEMPO OFFSET DOWN
// -- BYTE [3]: 0b00000000 --
// LOOP IN - LOOP OUT - TOGGLE DECK C/D - LOAD - NONE - NONE - NONE -NONE
// -- BYTE [4]: 0b11111111 -- LEFT DIGIT
// UP-MIDDLE - UP-RIGHT - DOT - UP-LEFT - DOWN-LEFT - DOWN-MIDDLE - MIDDLE-MIDDLE - DOWN-RIGHT
// -- BYTE [5]: 0b11111111 -- RIGHT DIGIT
// DM - DL - UL - UM - UR - DR - MM - DOT
The first four bits of the last packet are connected to GND trough some 330 R resistors.
// BUTTON OFF STATES
// -- BYTE [0]: 0B00000000 --
// PLAY - CP4 - CUE - CP3 - SYNC - CP2 - SHIFT - CP1
// -- BYTE [1]: 0B00000000 --
// S4 - LOAD - S3 - LOOP OUT - S2 - LOOP IN - DECK C/D
// -- BYTE [2]: 0B00001100 --
// X - X - X - X - ENC-R BUT - ENC-L BUT - OFFSET DOWN - OFFSET UP
This is the pinout for the DECK A board the DECK B connector is almost identical (but mirrored). The two exceptions are pin 2 and 13, I have no idea what pin 2 is pin 2 is the 165's DS on the DECK B unit. Click here for the DECK B section.
WARNING: Pinout changed, check below.
// 595’s output enable is connected to GND.
// 165’s CE (chip enable) is connected to GND.
// (13, 14, 15), (16, 17) and (18, 19) are connected together.
1. Q7 (serial out 165)
2. GND (DS from 165's on DECK B)
3. PL (latch pin 165)
4. CP (clock input 165)
5. ENC4-R (330 R)
6. ENC5-L (330 R)
7. ENC4-R (330 R)
8. ENC5-L (330 R)
9. Q7S (serial out 595) (for DECK B this is the serial out of the 4 upper 595's)
10. DS (serial in 595) (for DECK B this is the serial in of the 2 lower 595's)
11. ST_CP (latch pin 595)
12. SH_CP (clock input 595)
13. GND (For DECK B this is the serial in for the 4 upper 595's)
14. GND
15. GND
16. LED V1 (5v but can just be 3.v)
17. LED V1 (5v but can just be 3.v)
18. LED V2 (3.3v)
19. LED V2 (3.3v)
20. VCC
1. GND
2. VCC
3. POT
4. GND
There are 6 595 chips chained together (the serial out(Q7S
) for the last 595 is exposed as pin 9 on the connector).
ST_CP
andSH_CP
of every chip are connected to connector pin 11 and 12.MR
is connected toVCC
on every chip.- Output enable (
OE
) is connected toGND
on every chip.
There are 3 165 chips chained together.
- Clock enable(
CE
) is connect toGND
on every chip. PL
andCP
of every chip are connected to connector pin 3 and 4.
The rotation of the jogs is measured by two photo-interrupters (KTIR0611S). The "push down" of the jog is measured by a photo sensor that gets blocked when you push the platter down on it.
The 6 pin JST connector is connected to the circuit with the two photo-interrupters. There is also a connection to a third photo-interrupter but they did not end up mounting and integrating this third one into the final product.
1. VCC (3.3v)
2. VCC (3.3v) (this "enables" the optical readings?)
3. GND
4. ENC R
5. ENC L
6. ENC M (not connected or mounted)
The 3 color push cable coming out of the jog:
BLUE. GND
RED. VCC (3.3V)
WHITE. SIGNAL (analog read: 800~900 off, 1023 on)
-. DUMMY (unused pin on 4-pin JST connector)
The jog press is not yet working so the info about it is possibly wrong. The MK1 does seem to use a IR proximity sensor (probably the HSDL-9100-024 but so far no reliable readings have been produced. The MK2 uses an Ambient Light Sensor with an I2C Interface called the VNCL4000. The current MK1 problems might just be calibration issues but could also be something more serious.
- VCC should be 3.3v, not 5v. The 595 works with 5v and you will not fry the LED's but the 165 will not work and you might damage it.
- You can easily run the 165 and 595 chips with hardware SPI.
- The left and right circuit board are not identical at all though the connectors appear to be.
The custom FX PCB has the same layout on both sides so only one version is required (it has both the L&R mounting holes). The custom FX PCB provides a 165 and 595 interface for the buttons and LED's respectively and a separate connector for the potentiometer signals.
1. INH (165-15) [Clock enable]
2. SER (165-10) [Serial data input]
3. QH (595-9) [Serial data output]
4. LATCH 165 (165-1) [Parallel load input]
5. RCK (595-12) [storage register clock input]
6. QH (165-9) [Serial out]
7. SER (595-14)[Serial data input]
8. CLOCK
9. GND
10. VCC
11. VCC
12. GND
13. FX_3
14. FX_2
15. FX_1
16. FX_DW
These simplified BOM's are for the MK4 releases of the brain and pot boards.
These are the parts needed to populate 1 brain board, to convert one S4 to two S1 units you'd need these parts x2.
Part | Amount | Value |
---|---|---|
Molex Picoblade (1.25mm) 10-pin | 3 | |
Molex Picoblade (1.25mm) 8-pin | 1 | |
Molex Picoblade (1.25mm) 6-pin | 3 | |
Molex Picoblade (1.25mm) 4-pin | 2 | |
M3 metal standoffs | 4 | 15mm |
M3 metal screws | 8 | 6mm |
USB-B socket | 1 | |
Teensy LC | 1 | |
Capacitor US 1206 | 1 | 100nF |
Resistor US 1206 (0805 compatible) | 1 | 1M |
The 1M resistor might need a higher value.
These are the parts needed to populate 1 brain board, to convert one S4 to two S1 units you'd need these parts x2. The standoffs needed are already included with the brain BOM.
Part | Amount | Value |
---|---|---|
Molex Picoblade (1.25mm) 10-pin | 1 | |
Molex Picoblade (1.25mm) 6-pin | 1 | |
Resistor US 0805 | 5 | 82 |
Resistor US 0805 | 8 | 10K |
74HC595D | 1 | |
74HC165D | 1 | |
Capacitor US 1206 | 6 | 100nF |
The four capacitors for the potentiometers might need a lower value.
Contains adapter from 1.25mm JST to OLED, a step-up to 12V and some passive components the OLED driver needs.
1. GND
2. CLOCK
3. GND
4. MOSI
5. SS-SCREEN
6. VCC
7. DC
8. RST
The screen uses https://github.com/ErikMinekus/traktor-api-client to get data from traktor + a local server to send it to the teensy over serial.