SSL Nucleus debug interface

Just a few technical notes on debugging the SSL Nucleus (mk1) through serial port. I will enventually update this article with additional commands tests.

Playing with the LCD driver

First of all, you’ll need a USB to serial cable, which can easily be found on amazon, aliexpress and so on. Such a cable it about 1€, don’t spend more on it!

On macOS: open a Terminal and type:

screen /dev/tty.wchusbserial141330

The actual name of the device may differ, but it’s probably be something close.

You now have a pretty nice shell, opened on your Nucleus, type « help » to show all available commands:

CMD>help

TP220_3 [] Daw channels layer 3 diags
ALLOC_3 [] DAW allocator
TP220_2 [] Daw channels layer 2 diags
ALLOC_2 [] DAW allocator
ACTIVE  [] Ptoosl active send
TP220_1 [] Daw channels layer 1 diags
ALLOC_1 [] DAW allocator
TP180   [] Soft key diag
TP186   [] Layer Control
TP215   [] control groups
TP177   [] UDP midi
IP      [] TCPIP Diags
ETHer   [] PX1 Ether diags
DAW     [] DAW config
CCC     [] cc config
SOKS    [] Soft key diag
FLIST   [] function lists
TP234   [] Centre meters
TP199   [] USB KBD Functions
SVEN2   [] 7 seg diag
SURF    [] ctrl surface diags
TP5     [] Control manager
TP86    [] Power up restore
LOG     [] Logging
FRAM    [] FRAM cmds
FS      [] File system
RTC     [] Real time clock
USB     [] USB Kbd Diags
TH6     [] SPI Access
TH17    [] 675 Live Bus
TH16    [] MD Bus
REP     [] Diags
TH18_0  [] LCD Driver
TH19    [] Firmware Revision
INTEG      check code integrity
CRASH      crash system
VER        SW version
G          Flip back to the trusty "G" interpreter; same as <ctrl D>
DEBUG   [] Stuff which should probably be somewhere else
HEAP    [] Heap diags
MOS     [] Operating system diagnostics
FILES      Show file task ids
REPort  [] Diagnostic reporting

CMD>

Now, it’s probably the best time for the traditional disclaimer: you may break things here, I’m not responsable for anything.

CommandShort descriptionDescription
TP220_3Daw channels layer 3 diagsuntested
ALLOC_3DAW allocatoruntested
TP220_2Daw channels layer 2 diagsuntested
ALLOC_2DAW allocatoruntested
ACTIVEPtoosl active senduntested
TP220_1Daw channelslayer 1 diagsuntested
ALLOC_1DAW allocatoruntested
TP180Soft key diaguntested
TP186Layer Controluntested
TP215Control GroupsList all internal states for all DAW sync-ed items (faders, buttons, pots, etc.).
TP177UDP midiuntested
IPTCPIP Diagsuntested
ETHerPX1 Ether Diagsuntested
DAWDAW Configuntested
CCCCC configuntested
SOKSSoft key diaguntested
FLISTfunction listsuntested
TP234centre metersSetup the MIC meter (from 1 to 2) led display to a given value (from 0 4000) to . Ex: « TESTmtr 1 2000 » lights up half the left channel leds.
TP199USB KBD functionsuntested
SVEN27 seg diagShows a 2 letter text on the center « MODE » 7 segments display.
SURFctrl surface diagsuntested
TP5Control manageruntested
TP86Power up restoreuntested
LOGLoggingDumps the last boot message (see below)
FRAMFRAM cmdsuntested
FSFile systemuntested
RTCReal Time Clockuntested
USBUSB kbd diagsuntested
TH6SPI Accessuntested
TH17675 Live Busuntested
TH16MD Busuntested
REPDiagsuntested
TH18_0LCD DriversA set of commands to display text on the left/right two lines LCD
TH19Firmware revisionShows the firmware revision « FPGA Firmware version is : V2.01 »
INTEGcheck code integrityCheck the OS integity, supposed to show « Code integrity test passed. »
CRASHcrash systemuntested
VERSW versionShows the software version: « Software : Nucleus
Version : V1.6/2 I
Build : Tue 17 Jun 14, 15:59:17 by alanj »
GFlip back to the trusty « G » interpreter; same asuntested
DEBUGStuff which should probably be somewhere elseuntested
HELPHeap diagsuntested
MOSOperating system diagnosticsuntested
FILESShow file task idsuntested
REPortDiagnostic reportinguntested
List of commands

Boot logs:

Version        : V1.6/2 I
Build          : Tue 17 Jun 14, 15:59:17 by alanj
TP96: Monitor type is SSL Aude 505 CPU Monitor



TH19: Firmware: V2.01
th5_control_bus
th16_bud_md_bus
th5_control_bus
th17_bud_live_bus
TF1: File system
th12: MMC/SD init: Caching ON
th12: card type 8
TF1: File system status: OK
TF1: 3896246272/3942645760 bytes free
tp301: Read 8192 bytes of FRAM data from disk (requested 8192)
TS4: Crash logger
tp86: Valid console PUR data found
TP5: Control manager
tp299: xdaw control surface
tp234_bud_centre_meters
TP226: Function lists
TP184: Soft Key Manager
TP253: CC Config
TP190: DAW config
tp190: setting profile 'BG Protools' ('/userprof/4') on daw layer 1
tp190: setting profile 'B Logic Standard' ('/userprof/2') on daw layer 2
tp190: setting profile 'Live Standard' ('/sslprof/14') on daw layer 3
PX1: Ethernet
PX1: mem map B
PX1: 82559 Detected
TC4: TCPIP setup
TC4: 31 bytes of FRAM used
TC4: Using DHCP assigned addresses
TC1: OpenTCP Init
TC1: Using DHCP assigned addresses
TC1: MAC address is 58:0c:13:04:02:90
TP185: Soft Key Assignments
TP219: Layer 1 initialisation for protocol 'HUI'
TP212 Creating HUI layer. First chan 1, last chan 16
tp75: constructing HUI LUT
TP219: Layer 2 initialisation for protocol 'Logic Audio'
TP213 Creating MCU layer. First chan 1, last chan 16
tp75: constructing MCU LUT
TP160: Starting 2 MCU handhake ports for layer 2
tp160: rcvd port active on port 0
tp160: rcvd port active on port 1
TP219: Layer 3 initialisation for protocol 'Logic Audio'
TP213 Creating MCU layer. First chan 1, last chan 16
tp75: constructing MCU LUT
TP160: Starting 2 MCU handhake ports for layer 3
tp160: rcvd port active on port 0
tp160: rcvd port active on port 1
TP176: AWS90 Remote [serial no. 262800]
TC1: Starting IP services
TC1: got DHCP IP address 10.0.1.107
TP277: Calibrating fader touch 1...16
TP277: Calibrating faders 1...16

Software       : Nucleus
Version        : V1.6/2 I
Build          : Tue 17 Jun 14, 15:59:17 by alanj

Code integrity test passed.
Boot completed in 1030 ticks.