Skip to content

Working documentation

This page is generated from the project's working notes. It records a real retrofit in progress, corrections included. Anything marked 🔴 or ⚠️ is unresolved or carries a caveat - read those before acting.

The Panasonic carousel indexer — console, data, and a way to settle OF.42

5 September 2026. From MINAS-XPseries-console_manual_e.pdf (Matsushita doc SR-DSV7896), read directly. Grant found and filed both XP-series manuals on Drive.

The unit is MSS083A1XPM01, 200 V, 750 W, cabinet tag U560. Panasonic call it a position driver, not a servo amplifier — it holds its own point table and executes moves on command.


✅ There is no console — and the front panel is better for our purposes

Confirmed 5 Sep: the handheld console did not come with this machine. Everything has to be done from the drive's own bezel. That turns out to be safer, not worse — see §"The front panel" below, which is read from MINAS-XPseries_manual_e.pdf §13.

The console section that follows is kept for reference only.


The console (not available here) — a separate handheld

This matters before anything else. The drive's own bezel has MODE, SET and arrow keys. The console the manual describes is a different device entirely — a plug-in handheld with [F1]-[F5], [AUTO], [EDIT], [TEST], [POS], [SPD], [PARA], jog keys, a ten-key pad, and its own emergency-stop mushroom switch.

It plugs into SER1 — one of the two round mini-DIN sockets visible on the drive.

⚠️ So everything below needs that handheld. If it did not come with the machine, none of it is reachable, and the front-panel buttons are a different and much more limited interface that this manual does not cover.

Four rules from the manual, and they are unforgiving

🔴 Connect before power-on "Even if the console is connected after turning the power supply on, the console will not be recognized." Power down, plug in, power up
🔴 Never unplug it while live "If the console is removed after turning the power supply on, Emergency stop error (53) will be generated, and the motor will be stopped"
Release its mushroom switch The console carries its own E-stop. If it is latched in, nothing works
SER2 is not usable "As connector SER2 cannot be used, do not connect a console to the connector SER2."

⚠️ Leaving an edit screen writes to EEPROM

"the data will be written into EEPROM when moving from the … edit display to the edit menu by [CLR]"

Every edit screen commits on exit. Changing nothing writes the same values back, so it is not destructive in itself — but it means there is no "browse without consequence" mode inside [EDIT]. Prefer [AUTO] for looking.

⚠️ [EDIT] inhibits I/O control

The manual's mode map is explicit: [AUTO] — "Control by I/O is available"; [EDIT] — "Control by I/O is inhibited."

So entering [EDIT] takes the carousel away from the controller. Not something to do with the Tecnos mid-cycle.


🔴 The opportunity: this may settle OF.42 / OF.43 without a meter

The open question since the beginning has been whether OF.42 is the go command with five position bits on OF.43-OF.47 (what the PLC does), or SVON with the strobe on OF.43 (what the drawing reads).

The console has a live I/O monitor, at [AUTO] → [F3], and it names the signals:

-MON (IN)--ACTIVE          -MON (OUT)--ACTIVE
 *CWL  STB   PI: 00         *ALM         PO: 00
 *CCWL *SVON                *COIN
  ORGL                      *BUSY
  • STB and SVON appear as separate named inputs — exactly the two signals in dispute
  • PI: shows "the value inputted with the point assign input signal (5-bit) in decimal"
  • PO: shows the 5-bit present-position output in decimal

✅ And [AUTO] mode leaves I/O control enabled. So the test is: connect the console, power up, sit in [AUTO] → [F3], and let the Tecnos run a tool change. You watch STB, SVON and the PI number change in real time as the controller drives them.

That is better than ringing out with a meter — it shows the signals in use, in order, with the pocket number decoded for you. It confirms the bit map and the handshake in one observation.

⚠️ Whether it is worth powering down to fit the console is Grant's call, and it needs the handheld to exist.


What is stored in the drive

Five groups, all reachable from [EDIT]:

Group Reached by Contents
🔴 Step data [POS] Up to 28 positioning points. Each has a speed selection no., ABS/INC mode, and a coordinate in pulses
Speed data [SPD] 13 entries: origin return speed, step speeds 1-10, jog low, jog high. Range 5-500 kpps
NC data [PARA] [F1] 10 entries: step/jog/origin accel times, jog direction, origin return direction, pulse direction, teaching step pulse, S-curve rate, input logic, option
Servo parameters [PARA] [F2] 9: KP, KV, KVI, Kff, Kffi, Vi, Til, P-ON delay, Coin range
Offset data [PARA] [F3] 3: origin offset, soft limit +, soft limit −

🔴 The step data is the carousel's pocket table

Twenty-eight points, each a coordinate in pulses. That is where the carousel's tool positions live. Nothing else on the machine knows them — the Tecnos only ever sends a pocket number.

Lose the step data and the carousel does not know where its pockets are. That single table is the disaster-recovery case for this drive, and it is the one thing genuinely worth the trouble of fitting the console to capture.

The origin offset matters for the same reason: it defines where pocket 1 sits relative to the ORGL home sensor.


What corroborates the existing I/O map

The console's own labels match what io-map.md derived from the PLC and the drawing:

Console name Our mapping
PI — 5-bit point assign input OF.43-OF.47, the pocket number the controller sends
PO — 5-bit position output IF.36-IF.40, the echo the controller checks
COIN IF.35, position reached
ORGL the home input from -SQ560 via -KA560
ALM the drive alarm in the IF.8 summary chain
SVON, STB, CWL, CCWL, BUSY the handshake and travel limits

✅ Five bits, decimal-displayed, confirming a 32-position addressing scheme — consistent with POS_RESET = 31 in the PLC and with EN_CU_6 = 8 meaning no bit inversion.


Alarm 53

"Emergency stop error (53)" — raised by pulling the console while powered. Worth knowing before it happens, and worth adding to the fault vocabulary alongside the Tecnos codes in plc-fault-codes.md.


Still to read

MINAS-XPseries_manual_e.pdf (3.0 MB, also on Drive) is the main manual. It should cover the drive's own front panel — the MODE/SET/arrow keys actually fitted — plus the parameter tables the console manual only cross-references, the interface timing in section 12-6, and the full alarm list.

  • servo-drive-interface.md — the carousel I/O mapped point by point
  • atc-operation.md — the tool-change cycle that drives these signals
  • io-map.md — every one of these signals to its terminal and wire

🔴 The front panel — what we actually have

From MINAS-XPseries_manual_e.pdf §13, "Key Operation on the Front Panel".

"When a special console is connected to the position driver, the front panel cannot be used."

They are mutually exclusive. With no console, the front panel is the whole interface.

The keys

Key Function, in the manual's words
MODE "Switches the mode."
SET "Switches between selection display state and execution display state."
CURSOR "Changes the data and selects the parameter." When inputting step data, performs teaching
SHIFT When the decimal point is flashing, "moves a digit for the data change to the upper digit." When inputting step data, cancels. In test mode, executes the test operation

✅ Confirmed at the drive, 5 Sep: the CURSOR keys are UP and DOWN; SHIFT is the LEFT arrow. The manual's single "CURSOR key" row is the up/down pair.

🔴 Data can only be changed when the decimal point is flashing. The manual is explicit: "the digit displaying the flashing decimal point is possible for the data change, and these keys are inactive if it is not displayed." No flashing dot means you cannot change anything. That is the single best safety signal on this drive.

The nine modes, cycled by MODE

Mode Display prefix
Monitor dP_…
Step data edit PO_
Speed data edit SP_
NC data edit nC_
Offset data edit OF.
Servo parameter edit PA_
🔴 EEPROM writing EE
Automatic gain tuning AL
Test operation tESt

✅ Three reasons the front panel is safer than the console

  1. 🔴 EEPROM writing is its own separate mode. Unlike the console — where leaving an edit screen commits — nothing on the front panel persists unless you deliberately enter EE and execute it. Stay out of EE and nothing you do survives a power cycle.
  2. 🔴 Step coordinates cannot be typed in. "For positioning coordinate input, only teaching can be used. In case of inputting value directly, use a special console (option) or personal computer software (option)." The pocket table cannot be corrupted by a mis-keyed number.
  3. ✅ Reading step data does not need homing. "In case of referring to the step data, the origin return has not to be done."

⚠️ Only Monitor mode leaves I/O control available. Every other mode inhibits it, so the Tecnos loses the carousel while you are in one. Do not go wandering during a cycle.

⚠️ Avoid Automatic gain tuning (AL) and Test operation (tESt) entirely — both move the motor.

The eight monitors

In Monitor mode, CURSOR steps between them and SET switches to the reading:

Selection Shows
dP_EPS Position deviation, pulses
dP_SPd Speed, kpps
dP_trq Torque — displayed value × 0.2 = %
dP_id ID number set in the driver
dP_nPS Present position, pulses. Shows P.... if origin return unfinished
🔴 dP_IO Input/output signal monitor
🔴 dP_Err Error history — the present error plus the last 8
dP_no Manufacturer's parameter

🔴 The I/O monitor, with the drive's own pin numbers

dP_IO → SET → CURSOR selects the signal. This is the table the manual gives:

No. Signal Symbol CN I/F pin
IN-0 CW drive inhibit CWL 29
IN-1 CCW drive inhibit CCWL 30
IN-2 Origin vicinity ORGL 13
IN-3 Servo-on SVON 12
IN-4 Strobe STB 10
IN-5 Emergency stop EMG 9
IN-6 Console emergency stop — —
IN-7 🔴 Point assign input P-IN 35 · 34 · 33 · 32 · 31
OT-0 Servo alarm ALM 26
OT-1 Positioning finish / decelerating COIN/DCLON 25
OT-2 Motor operation state BUSY 27
OT-3 🔴 Present position output P-OUT 24 · 23 · 17 · 15 · 14

A signal showing R is closed (input) or conducting (output). IN-7 and OT-3 display their 5-bit value as a decimal number.

🔴 This settles OF.42 / OF.43 — by observation, on the panel we have

The conflict has stood since the beginning: the PLC uses OF.42 as the go command with five position bits on OF.43-OF.47; the drawing transcription reads OF.42 as SVON and OF.43 as the strobe.

Two things now bear on it.

The drive's signal set matches the PLC's naming exactly. The PLC calls OF.41 enable, OF.42 position command, OF.43-OF.47 bits 1-5. The drive offers an EMG that must be held for the drive to run, a STB strobe, and a 5-bit P-IN. That is enable / go / five bits — the PLC's three roles, exactly. The drawing's reading needs OF.44-OF.47 to supply only four bits with the fifth coming from relay -KA560, which is possible but leaves P-IN split across two sources for no obvious reason.

⚠️ Suggestive, not conclusive. But the panel can now settle it outright:

Monitor mode  →  dP_IO  →  SET  →  CURSOR to IN-4 (STB) and IN-7 (P-IN)

Monitor mode leaves I/O control enabled, so the Tecnos can drive a tool change while you watch. IN-7 shows the pocket number in decimal as the controller sends it, and IN-4 shows the strobe arriving. If the pocket number that appears matches the tool requested, the bit map is confirmed and the strobe is identified in the same observation.

✅ This replaces the "ring out OF.42 and OF.43 with a meter" item in the pre-strip survey. Watching the signals in use is better evidence than continuity, and it needs no meter and nothing unplugged.

dP_Err — the error history is free

The present error plus eight past records, selected with the cursor. Err.53 is the console emergency-stop error. Worth capturing before anything else is disturbed — it is a free history of what this carousel has been unhappy about, and it costs one mode change.


The capture procedure

Key mapping confirmed at the drive: ▲ ▼ = CURSOR, ◀ = SHIFT, plus MODE and SET.

🔴 The one hazard that matters

"On the positioning coordinate input display … If [▲] and [▼] are pressed, the motor will be operated with the speed set with the high jog speed."

🔴 On the step-data coordinate display, the cursor keys JOG THE CAROUSEL. They are the teaching control. They do not scroll.

That display is the one you most want to read, and it is the one where the obvious key press turns the machine. Read the number, then leave with ◀ SHIFT. Never press ▲ or ▼ there.

The safe pattern everywhere else

For speed data, NC data, offset data and servo parameters the manual is consistent:

"By pressing [SET], the … No. selection display and the … display/change display will be switched."

SET toggles in and out. So:

▲ ▼ on the SELECTION display   →  picks which item        (safe)
SET                            →  shows its VALUE
       ... read it ...
SET                            →  back to selection       (safe)

⚠️ Never press ▲ or ▼ while a value is displayed — that is the edit action. On a value display the only keys you need are SET to go back and MODE to leave.

Three layers of protection, worth knowing

  1. No flashing decimal point = nothing can change. The manual: "the digit displaying the flashing decimal point is possible for the data change, and these keys are inactive if it is not displayed."
  2. Nothing persists without EEPROM writing mode. Stay out of EE and any accidental change dies at the next power cycle.
  3. A power cycle restores everything you have not deliberately written.

⚠️ Avoid AL (automatic gain tuning) and tESt (test operation) entirely — both move the motor.

🔴 If you land in EE_SEt — how to get out

It happened on the first attempt, 5 Sep. It is not an emergency. EE_SEt is the EEPROM writing mode's name display, not the execution display. From §13-3-7:

"By pressing [SET], EEPROM writing mode display and writing execution display are switched." "On the writing execution display, writing will be started when 'StArt' is displayed by pressing [▲] continuously."

Writing takes two further deliberate acts — SET, then a held ▲. Simply arriving at EE_SEt has written nothing.

Get out with three presses of MODE:

EE_SEt  →MODE→  AL     (gain tuning)
        →MODE→  tESt   (test operation)
        →MODE→  dP_…   (monitor)

The manual confirms the wrap: "On the test operation display, it will move to the monitor mode if [MODE] is pressed."

⚠️ You pass through the two motor-moving modes. That is safe — both also need SET plus a held ▲ — but do not press SET on either.

✅ The net underneath everything: "Without writing into EEPROM, it will be returned to the parameter at the time of previous power supply input when resetting the power supply." A power cycle discards anything not deliberately written.

⚠️ The one real rule while in EE: "Do not cut the power supply during writing into EEPROM." That applies only once writing has actually started — which, again, needs SET and a held ▲.

The mode order, so you always know where you are

dP_ monitor → PO_ step → SP_ speed → nC_ NC → OF. offset
   → PA_ servo → EE EEPROM → AL gain tune → tESt test → back to dP_

MODE always goes forward and always wraps. If you are lost, press MODE until dP_ comes round.


What to capture, in priority order

🔴 Tier 1 — the irreplaceable data (~35 readings)

This is the only part that genuinely must be done.

Offset data — 3 values. MODE to OF. → ▲▼ to item → SET to read → SET back.

No. Item
1 Origin Offset — where pocket 1 sits relative to the ORGL home sensor
2 Soft Limit (PLUS)
3 Soft Limit (MINUS)

Step data — the pocket table. MODE to PO_ → ▲▼ to step No. → SET shows the coordinate → ◀ SHIFT to back out.

Walk step numbers 1 to 28. Unused steps display blank — note which are populated and stop caring about the rest. Record the coordinate for each populated one.

🔴 Do not press ▲▼ on the coordinate display. See the hazard above.

⚠️ To also see a step's speed selection no. and ABS/INC mode you must press SET through all three fields, and the manual says the data is set on the final SET. With values unchanged that just rewrites the same numbers, and it still cannot persist without EE — but if you want to avoid it entirely, take the coordinates only. The coordinates are the part that matters.

Tier 2 — behaviour, if you have the patience (23 readings)

NC data — 10 values. MODE to nC_. Item 5 (origin return direction) and items 1-3 (accel times) are the useful ones; 9 (input logic) and 10 (option) decide how the interface behaves.

Speed data — 13 values. MODE to SP_. No. 1 is origin return speed, 2-11 are step speeds 1-10, 12 and 13 are jog low and high.

Tier 3 — restoration only (9 readings)

Servo parameters — MODE to PA_. KP, KV, KVI, Kff, Kffi, Vi, Til, P-ON delay, Coin range. Record so a working drive can be rebuilt; nothing in the retrofit consumes them.

✅ Free while you are there

dP_Err — the error history. MODE to monitor → ▲▼ to dP_Err → SET → ▲▼ steps through the present error then records E-0 to E-7. Nine readings, no risk, and a free history of what this carousel has complained about.

dP_id — the drive's ID number. One reading.


🔴 And the one that is worth doing first

The OF.42 / OF.43 observation. Minutes, not an afternoon, and it settles a question that has been open since the beginning:

MODE to monitor  →  ▲▼ to dP_IO  →  SET  →  ▲▼ to IN-4 (STB), then IN-7 (P-IN)

Monitor mode leaves I/O control enabled, so have the Tecnos run a tool change while you watch. IN-7 shows the pocket number in decimal as the controller sends it; IN-4 shows the strobe.

If the number on IN-7 matches the tool requested, the bit map is confirmed and the strobe identified in the same observation. Do this one before the tedious tier-1 walk.


Readings taken 5 September 2026

First session on the front panel. Drive powered, machine idle, no program running.

Error history — dP_Err

Oldest to newest. Codes decoded from the main manual §7-5-2.

Slot Code Meaning
E_7 53 Emergency Stop Input Error
E_6 53 Emergency Stop Input Error
E_5 53 Emergency Stop Input Error
E_4 16 Overload Protection
E_3 22 🔴 Encoder Communication Error
E_2 22 🔴 Encoder Communication Error
E_1 22 🔴 Encoder Communication Error
E_0 16 Overload Protection — most recent

The manual's wording:

Code Contents Solution
53 "Trip is made if the emergency stop input is turned off" Check the emergency stop input, wiring, supply
16 "The position driver was used continuously with load over the rated current value" Decrease gain; lengthen accel/decel; reduce load
22 "Trip is made if the encoder connection error was found … such as breaking of the wire" "Check the connection between the position driver and the encoder … and the connection state of the connector SIG. Check the power supply voltage (5V ±5%) on the encoder side"

✅ RESOLVED 6 September — the three code-22s are explained, and they are not a fault

Grant: the encoder errors are from turning the machine on before the carousel was plugged in.

That accounts for all three, exactly. Code 22 is "the encoder connection error … such as breaking of the wire" — and an unplugged encoder is a broken wire as far as the drive can tell. Three power-ups in that state, three code-22s.

✅ No wiring investigation needed. The earlier reading on this page — a marginal CN SIG connection or a chafed cable flexing on a rotating carousel — was a reasonable inference from the code alone and it is now superseded by what actually happened. Closed.

🔴 And this makes the error history a trustworthy instrument

This is the more useful outcome. The log has no timestamps, so an earlier version of this page warned that E_0 means most recent, not recent, and that these codes could predate Redgate's ownership entirely.

They do not. At least three slots are now dated to events Grant remembers, in the order the drive recorded them. ✅ The error history reflects real, recent events in correct sequence — so it can be used as a diagnostic from here on rather than treated as archaeology of unknown age.

That is worth having on a drive that survives the retrofit intact. When a tool change misbehaves after the conversion, dP_Err will say what the drive thought was wrong, and we now know it tells the truth.

⚠️ One observation, offered rather than pursued: the most recent slot E_0 is a 16 (overload), not a 22 — so an overload was recorded after the three encoder errors. It may well be from the same unplugged episode. Noted because it is a fact in the data, not because anything suggests a problem.

I/O monitor — dP_IO, at rest

R on the display = input closed / output transistor conducting.

Row Manual's signal Reading
in-0 CWL R not at a travel limit
in-1 CCWL R not at a travel limit
in-2 ORGL R physically at home
in-3 SVON — servo off, idle
in-4 STB not read 🔴 outstanding
in-5 EMG R no emergency
in-6 console E-stop R no console fitted
in-7 unidentified — see below
in-8 P-IN 00 pocket number commanded
ot-0 ALM R conducting = no active alarm ✅
ot-1 COIN R ✅ COIN, not DCLON — settled by NC r10 Option = 1
ot-2 BUSY R
ot-3 P-OUT 00 pocket number reported

✅ in-8 and ot-3 agree at 00 — commanded and reported position match, which is the echo check the PLC performs.

✅ ot-0 conducting means no live alarm. The 16s and 22s are history, not a current condition.

⚠️ The manual's I/O table lists eight inputs (IN-0-IN-7); the drive displays nine (0-8). Rows 0-6 map cleanly and every value is consistent with an idle, un-faulted drive sitting at home, so the manual's order holds that far. Row 7 is an input the manual's table does not list, reads inactive, and nothing depends on it. The point-assign has shifted to row 8 as a result.

✅ ot-1 is now identified. Option = 1 selects the positioning-finish signal COIN over the decelerating output DCLON, and COIN asserting on a stationary carousel is exactly right. The parameter and the reading agree.

⚠️ ot-2 (BUSY, moving) also reads active on a stationary carousel, which BUSY should not. Note that ot-0 (ALM) conducts when the drive is healthy, so at least one output on this drive is active-low; ot-2 may be the same. Not chased, because nothing depends on it.

Present position — dP_nPS

Reads P-----.

"If the state is that the origin return is not finished, the present position will be displayed as P...."

The carousel has not homed since power-up. Expected rather than faulty — the Tecnos commands the carousel home as part of its reset cycle, and no tool change or carousel reset has been run.

Two consequences:

✅ Step data can still be read — "In case of referring to the step data, the origin return has not to be done." ✅ Teaching is disabled while un-homed — "Possible only when finishing the origin return" — so the jog-on-the-coordinate-display hazard should currently be inert. ⚠️ Do not rely on it; keep to SET-to-read, SHIFT-to-leave.

Manufacturer's parameter — dP_no

Reads G-3 .20.

⚠️ Not decodable. The manual's entry says only "Displays the parameter values used by the manufacturer." No table, no meaning given. Recorded verbatim in case it ever turns out to be a firmware or variant identifier.


🔴 Full parameter capture — 5 September 2026

Grant walked all five data groups on the front panel in mode order. 63 readings. This is the disaster-recovery record for this drive: if it is ever replaced or its EEPROM lost, this page is what rebuilds it.

⚠️ Transcribed from the panel by eye, one value at a time. Treat as authoritative but re-read anything that a later observation contradicts.

Step data — PO_ — the pocket table

Step Coordinate (pulses) SEL Mode
1 100000 4 Ab5
2 200000 4 Ab5
3 300000 4 Ab5
4 400000 4 Ab5
5 500000 4 Ab5
6 600000 4 Ab5
7 700000 4 Ab5
8 800000 4 Ab5
9 0 0 Ab5
10 0 0 Ab5
11 0 0 Ab5
12 0 0 Ab5
13 0 0 Ab5
14 0 0 Ab5
15 0 0 Ab5
16 0 0 Ab5
17 0 0 Ab5
18 0 0 Ab5
19 0 0 Ab5
20 0 0 Ab5
21 0 0 Ab5
22 0 0 Ab5
23 0 0 Ab5
24 0 3 Ab5

Ab5 is the seven-segment rendering of ABS. The manual's front-panel section gives the two choices as absolute versus "Inc", so every step here is an absolute coordinate, not incremental. Consistent with a carousel commanded to a pocket number rather than stepped along.

SEL is the speed selection number, range 1-10, pointing into the speed data table below. SEL 4 = step speed 4 = 200 kpps — every one of the eight pockets is approached at the same speed.

✅ Eight pockets, exactly evenly spaced

The headline finding. Steps 1-8 are populated and they are a perfect arithmetic series: 100000 pulses per pocket, no rounding, no drift, no hand-tweaked offsets.

Populated pockets 8
Pitch 100000 pulses, exact
Span, pocket 1 → 8 700000 pulses
Pocket 8 coordinate 800000

That is a machine-generated table, not a taught one. Somebody computed it and wrote it in — which fits, because 100000 is a round number no teaching operation would ever land on by hand.

A full revolution is almost certainly 800000 pulses. Eight pockets at 100000, with pocket 8 at 800000 sitting where 0 does. That makes the whole table checkable with one physical count:

✅ And the Tecnos agrees — from a completely separate source

machine-parameters.md has carried this line since the parameter dig: "Whether EN_CU_6 = 8 really means 8 pockets — probable, not proven."

It is now proven. pargen.prm on the Tecnos says EN_CU_6 = 8; the Panasonic's own EEPROM has eight defined steps and twenty undefined ones. Two systems that share nothing but five wires, configured years apart by different people, agree on the number.

And the PLC uses it as a count, not a flag — JOB 69 wraps the pocket counter on it:

J69_CMP_MAX_PINZE
        CMP    VPINZA_UTE,VAPP_CU_6   ;num.pinza attuale == max ?
        JPNZ   J69_INCR_POS           ;salto se no
        COPY   0,VPINZA_UTE           ;se si'resetto VPINZA_UTE

EN_CU_6 is the maximum gripper number and the carousel counter rolls over on it. ✅ Eight pockets, confirmed twice, independently.

✅ Confirmed a third time — Grant counted them

6 September: eight tool pockets, physically counted on the machine.

That closes it completely. Three independent sources agree on eight:

Source Evidence
The Tecnos EN_CU_6 = 8 in pargen.prm, used by JOB 69 as the counter wrap
The Panasonic Eight defined steps in its EEPROM, twenty undefined
The machine Eight pockets, counted by hand

The carousel is now fully described. Eight pockets, 100000 pulses apart, absolute, approached at 200 kpps, with the origin one pitch back from the home sensor. Nothing about this subsystem is guessed any more, and it is all recoverable from this page if the drive ever loses its memory.

The likely mechanics

At 10000 pulses per motor revolution (2500 P/r encoder × 4), 100000 pulses is 10 motor revolutions per pocket and 80 motor revolutions per carousel revolution — an 80:1 reduction, an entirely ordinary worm ratio for a tool carousel.

⚠️ Inferred, not read. The encoder line count has not been confirmed and the reduction has not been measured. It is offered because it is checkable: watch the motor shaft during one pocket step.

✅ Step 24 is a real step, not a slip — and SEL 0 means undefined

The manual settles this. The speed selection field has a setting range of 1-10, and:

"When the positioning is conducted with undefined step data, step data undefined error (54) will be generated."

So SEL 0 is out of range: it is how the panel shows an undefined step. Steps 9-23 are empty. Step 24, with SEL 3, is defined — a valid speed selection on an absolute move to coordinate 0.

That makes step 24 a deliberate return-to-zero step at step speed 3 (150 kpps). A park or datum move, not a transcription error.

⚠️ It is still worth one re-read, because it is the single irregularity in the table and 15 identical readings preceded it. But the drive's own validity rule now says it is real.

🔴 Commanding pockets 9-23 will trip the drive

A consequence worth carrying into the retrofit: those steps are undefined, so any command for pocket 9-23 raises error 54 rather than moving somewhere wrong. That is a good failure mode — the carousel faults instead of crashing — but LinuxCNC must never emit a pocket number above 8.

Note the drive's step data runs to 28 points, and the walk stopped at 24. 🔴 Steps 25-28 are unread.

Speed data — SP_

All thirteen share one range: 5-500 kpps. Names from the main manual §13-3-3.

No. Manual's name Reading (kpps)
1 ORIGIN SPEED 100 homing speed; the Z-phase detect is fixed at 5 kpps regardless
2 STEP SPEED No. 01 50
3 STEP SPEED No. 02 100
4 STEP SPEED No. 03 150 ← used by step 24
5 STEP SPEED No. 04 200 🔴 ← used by all eight pockets
6 STEP SPEED No. 05 250
7 STEP SPEED No. 06 300
8 STEP SPEED No. 07 350
9 STEP SPEED No. 08 400
10 STEP SPEED No. 09 450
11 STEP SPEED No. 10 500 the maximum the drive accepts
12 JOG SPEED (LOW) 50
13 JOG SPEED (HIGH) 50

✅ Step speeds are a ruler, not a tuning: speed n = n × 50 kpps, all ten of them, ending exactly on the drive's 500 maximum. Nobody tuned these per pocket. Somebody laid down a ladder and the step table picks a rung off it — rung 4, 200 kpps, for every pocket.

Entry 1 is the origin return speed at 100. Entries 12 and 13 are jog low and jog high — both 50.

✅ Jog high has been set down to the same value as jog low. That takes some of the sting out of the teaching hazard: the ▲▼ keys on a coordinate display jog at high jog speed, which on this drive is the slowest setting available. ⚠️ It still moves the carousel. The rule does not change.

NC data — nC_

Names, functions and ranges from the main manual §10-2-4 and §13-3-4.

No. Manual's name Function Range Reading
1 STEP Acc Time Step accel/decel time 10-10000 ms 150
2 JOG Acc Time Jog accel/decel time 10-10000 ms 1000 gentle, as jogging should be
3 ORG Acc Time Origin return accel/decel 10-10000 ms 10 ⚠️ the minimum
4 JOG dir Jog direction 0-1 0
5 ORG dir Origin return direction 0-1 0
r6 PLS dir Pulse output direction 0-1 0 ✅ r confirmed by the manual
7 Teaching Step Pulse Teaching transfer amount 0-32767 0
8 S-Curve rate S-form accel/decel 0-10 0 no S-curve
9 INPUT Logical Input logic setting 0-8063 0 ✅ no input inverted
r10 Option Option setting 0-123 1 ✅ r confirmed by the manual

✅ The r marks land exactly where the manual says they should

The manual singles out two NC items as needing a power cycle, and names them in prose rather than on a table the OCR could scramble:

§12-2: "…the coordinate system used by MSS*XP is set by the parameter 'Pulse output direction setting.' … reset the power supply once after setting this parameter."

§10-2-4, on Option setting: "This parameter becomes active after resetting the power supply."

Those are items 6 and 10 — and items 6 and 10 are precisely the two Grant read with an r. ✅ That is an independent check on the whole transcription's numbering, not just on those two values. The item numbers line up with the manual.

INPUT Logical = 0 — nothing is inverted

The input logic setting is a decimal-encoded bit field covering CWL, C-EMG, SVON, STB, CCWL, EMG, ORGL and the point-assign bits. Zero means every one of them is at default polarity.

✅ This matters directly for the retrofit. Whatever LinuxCNC drives into this interface sees the same logic the Tecnos does — there is no per-signal inversion hidden in the drive to discover later.

Option = 1 — the output is COIN, not DCLON

The option setting packs six choices into one number. A value of 1 sets the lowest bit only; everything else is at default. The manual's worked example ties the +1 term to selecting COIN:

"For use of COIN, return with reset command for emergency stop error and torque output at the limit input, … and set 73"

✅ So OT-1 is the positioning-finish signal COIN, not the decelerating output DCLON. That resolves the ambiguity left in the I/O monitor table above, and it agrees with the reading taken at rest: ot-1 was conducting with the carousel stationary, which is COIN behaviour, not DCLON.

Everything else in the option word is at 0, which means:

Option Setting
Operation after origin return finish Stop at the machine origin position — it does not auto-move to the offset position
🔴 Reset method at emergency stop Power supply reset only. A reset command will not clear an emergency-stop error
Positioning method Absolute + relative both available; present-position overflow error active
Control state at servo-off Normally reset
Torque output at limit input Inhibited in the limit direction

⚠️ The bit positions in the manual's figure came through the text extraction garbled, so the pairing of each option to its bit is reconstructed. The value being 1 is not in doubt, and neither is "only the lowest bit is set, everything else is default" — that holds whatever the bit order turns out to be.

Offset data — OF.

No. Manual's name Range Reading
r1 Origin Offset -1073741824 – 1073741823 pulses 100000
2 Soft Limit (PLUS) 0 – 1073741823 pulses 9.99999
3 Soft Limit (MINUS) -1073741824 – 0 pulses 9.99999
4 🔴 not in the manual — 0

🔴 The origin offset is 100000 — exactly one pocket pitch. That is not a coincidence in a table whose pitch is also 100000. It places the drive's zero exactly one pocket away from the ORGL home sensor, which is why pocket 1 sits at 100000 rather than at 0.

✅ r1 is confirmed by the manual, twice and explicitly:

§10-2-3: "Origin offset is inputted by transfer amount from the machine origin position… This parameter will be active after resetting the power supply."

No such sentence exists for either soft limit — matching Grant's reading of a bare 2 and 3. Three for three on the r marks.

⚠️ Correction — the soft limits are NOT disabled

An earlier version of this page said 9.99999 was the parameter maximum and that the soft limits were therefore off. That was wrong. The manual's range for Soft Limit (PLUS) runs to 1073741823, so 999999 is nowhere near the ceiling — it is a deliberately chosen round number, roughly 1.25 carousel revolutions at 800000 pulses per revolution.

The manual gives the actual disable value:

"When the software limit value is 0, software limit for the direction becomes inactive."

Neither limit is 0, so both are live, and exceeding one raises software limit error 56. The carousel is fenced to about ±1¼ turns either side of zero — it is not a freely continuous rotator.

⚠️ What 9.99999 literally is, is worth one re-read. Six nines with a leading decimal point, on a panel that showed 100000 for item 1 with no point at all. Most likely 999999 with the dot as a digit marker; possibly a display convention for a value with more digits than the LEDs can show. ◀ SHIFT on that display would reveal higher-order digits if there are any.

🔴 Offset item 4 is not in the manual

Both the parameter chapter (§10-2-3) and the front-panel chapter (§13-3-5) independently list three offset items, with no gap and no fourth row. The drive shows four. It reads 0 and nothing depends on it, but it is unexplained — either a firmware revision later than this 1999 manual, or an item the manual does not document.

Servo parameters — PA_

Numbering is hexadecimal — note 2A, 2b, 3b, 3d, 3e among the decimal-looking values. Names, ranges and factory defaults from the main manual §10-1-2 and §10-3.

No. Manual's name Default Reading
00 Name of Axis 0 0 ✅ default — the drive's ID comes from its front-panel rotary switch
01 LED Initial Display 1 1 ✅ default — powers up showing motor speed
03 Speed Loop Gain 100 100 ✅ default
04 Speed Loop Integration Time Constant 50 50 ✅ default
05 Speed Detection Filter 4 4 ✅ default
06 Torque Limit Setting — 300 ⚠️ 300 % of rated torque
08 Speed Monitor Gain 0 0 ✅ default
09 Inactive Drive Inhibit Input 0 0 ✅ CWL/CCWL are honoured
10 Startup Delay Time 0 0 ✅ default
18 not in the manual — 0
19 not in the manual — 0
20 Position Loop Gain — 20 ⚠️ low, on a range of 0-1000
21 Speed Feed Forward 0 0 ✅ default
22 Positioning Finish Range 10 10 ✅ default — sets when COIN asserts
23 Position Error Limit 30000 30000 ✅ default
24 Cancel of Position Error Limit 0 0 ✅ following-error protection active
2A Torque Filter Time Constant 0 0 ✅ default
2b Feed Forward Filter Time Constant 0 0 ✅ default
30 2nd Speed Loop Gain 0 100 ⚠️ non-default
31 2nd Speed Loop Integration Time Constant 0 50 ⚠️ non-default
32 2nd Position Loop Gain 0 20 ⚠️ non-default
33 2nd Gain Operation Setting 0 0 ✅ 2nd gain switching is OFF
34 2nd Gain Switching Delay Time 0 0 ✅ default
39 not in the manual — 1000
3b Speed Monitor Signal Selection 0 0 ✅ default
3d Sequence at Alarm 0 0 ✅ default
3e Sequence at Servo-off 0 0 ✅ default

✅ This drive is essentially untuned

Twenty of the documented parameters sit at their factory defaults. Exactly three were changed, and one group was copied:

06 Torque limit → 300 % Three times rated torque. Grunt to break the stiction of a loaded carousel through a worm
20 Position loop gain → 20 On a range of 0-1000, a soft position loop. Appropriate for a large rotating mass with backlash; it will settle slowly and tolerate it
30/31/32 → 100 / 50 / 20 See below

✅ The second gain set is a mirror, and it never runs

30, 31 and 32 are the second-gain versions of 03, 04 and 20 — and they hold exactly the same values: 100, 50, 20. Someone copied the first gain set into the second.

33 (2nd Gain Operation Setting) is 0, so switching never happens. The second set is inert, and even if it did switch it would switch to identical numbers. Nothing to carry forward.

🔴 The PA 39–49 block is not decoded

Grant read 39, and r40, r41, 42, 43, 44, 45, 46, 47, 48, 49. None of these appear as user parameters anywhere in the manual's readable text, and 18/19 do not either.

They are very likely the manual's System Parameters — a separate list it describes as:

"System parameters which can be referred to but cannot be set and changed by users." … "Setting values for these parameters cannot be changed."

Named there: Motor poles, Encoder pulse number, JT ratio, Max. torque setting, Overload time constant, Overload level, Over speed level. The manual's own numbering for them came through the text extraction collided with the user-parameter numbers, so the mapping is unproven.

Two readings support the guess:

Reading Fits
46 = 300 Max. torque setting. The manual says 06 (torque limit) is capped by the maximum-torque system parameter and auto-corrected if it exceeds it. 06 reads 300 and 46 reads 300 — the torque limit is sitting exactly on its ceiling
45 = 6000 Over speed level, 6000 r/min, an ordinary trip point for a 750 W servo

⚠️ Suggestive, not proven. These are read-only machine constants that no user can change and the retrofit does not consume, so the block is recorded verbatim and left undecoded. Settling it needs the manual's page images rather than extracted text.

⚠️ Numbers 02, 07, 0A, 11-17, 25-29, 2C-2F, 35-38, 3A, 3C, 3F were not recorded. Note the manual documents 0A (Sequence at Drive Inhibit Input, default 0) and it is absent from the walk — the one documented user parameter with no reading against it.

✅ The r prefix

An r in front of the item number appears on nC_ 6, nC_ 10, OF. 1, and PA_ 40, 41, 47, 48, 49. The manual explains it:

"For the parameter indicating 'r' in the digit, the changed contents will be active after the reset (After turning the power supply off once)."

It marks parameters that need a power cycle to take effect — not a warning, and nothing to do with whether the value can be read. It clusters exactly where you would expect: direction inversion, interface options, the origin offset, and the low-numbered hardware-configuration servo parameters.

What this capture is worth

🔴 Irreplaceable The eight pocket coordinates and the origin offset. Nothing else on the machine knows them — the Tecnos only ever sends a pocket number
Useful The speed ladder and the NC data, which describe how the carousel behaves
Restoration only The servo parameters

✅ The retrofit's carousel problem is now bounded. LinuxCNC will send a pocket number over the same 5-bit interface and this drive will do the rest, exactly as it does today, using the table above. The carousel does not need to be re-taught, re-tuned, or understood any further than this — provided the drive itself survives, and provided the encoder connection flagged in the error history is dealt with.

Still outstanding on this drive

🔴 The OF.42 / OF.43 observation on dP_IO during a live tool change
in-4 (STB) at rest — never read
Re-read step 24, and read steps 25-28
PA 0A — the one documented user parameter with no reading against it
dP_id — should echo the front-panel rotary switch, since PA 00 is 0
What 9.99999 literally is on the soft-limit displays

✅ What this capture closed

Question Settled by
Does EN_CU_6 = 8 mean eight pockets? Yes — the drive's step table has eight defined steps
Is OT-1 COIN or DCLON? COIN — Option = 1, corroborated by the at-rest reading
Is any input logic inverted in the drive? No — INPUT Logical = 0
Is the pocket table recoverable if the drive dies? Yes — it is on this page
Is the drive tuned in any way the retrofit must preserve? Barely — three changed parameters and an inert mirror gain set

🔴 The pocket code — from the drive's own manual, 6 September

Grant's question: "If there's 5 outputs controlling an 8 pocket tool changer carousel there must be a combination of IOs that define which tool. We need to know that code to make it work. Can we get that code from the Panasonic?"

✅ Yes. It is in §12-1 of the main manual, given as a full table, and it is plain 5-bit binary.

"Operation command will be assigned by using point assign input (P1IN-P16IN) signal… For executing the command, command type is determined by P1IN - P16IN and then strobe signal is input."

The weights, and the polarity

The five inputs are named by their weights, which removes any guesswork:

Signal Weight
P1IN 1
P2IN 2
P4IN 4
P8IN 8
P16IN 16

🔴 L (contact CLOSED) = 1. H (contact open) = 0. The manual states it directly:

"H indicates contact point open state (0), and L indicates contact point close state (1)."

And gives its own worked example:

"If P8IN, P1IN signals are in contact point close state (1), and other signals are in contact point open state: 2³ + 2⁰ = 8 + 1 = 9, indicating point 9 (09H)."

The complete code table

Code Binary P16 P8 P4 P2 P1 Meaning
0 00000 🔴 Reset command
1 00001 Transfer to step data 1 — pocket 1
2 00010 pocket 2
3 00011 pocket 3
4 00100 pocket 4
5 00101 pocket 5
6 00110 pocket 6
7 00111 pocket 7
8 01000 pocket 8
9-28 … Transfer to step data 9-28 — undefined on this machine, would raise error 54
29 11101 High-speed jog, − direction
30 11110 High-speed jog, + direction
31 11111 🔴 Origin return command

✅ This explains POS_RESET = 31 in the PLC exactly

The PLC has carried an unexplained constant since the first dig:

EQU  POS_RESET,31        ;pos. di reset giostre
EQU  POS_RESET_INV,0     ;pos. di reset giostre invertita

31 is not step 31 — there is no step 31, the table stops at 28. 31 is the origin return command. The PLC's own comment calls it "carousel reset position", and the drive's table calls the same code "Origin return command". ✅ Same thing, two vocabularies, and POS_RESET_INV = 0 is the value for a machine wired with inverted logic — which is what the EN_CU_6 < 0 branch selects, and which this machine does not use.

🔴 What this means for the retrofit — only four bits do the work

Pockets 1 to 8 need P1IN, P2IN, P4IN and P8IN only. Codes 1 through 8 never set P16IN.

P16IN is needed for exactly one thing: forming 31 to home the carousel.

✅ So the mapping is not a code to be discovered — it is binary, and we have the pocket table to go with it. Send 3, the drive goes to step 3, which our capture says is 300000 pulses. Nothing is inferred.

🔴 The handshake, from §12-6 — and there is a trap in it

The manual specifies the full sequence, so LinuxCNC does not have to imitate the Tecnos:

1 Set the point assign bits to the pocket number
2 ⏱️ Wait at least 10 ms. "After 10ms or more of setting the point assign input, connect the strobe signal input" — sooner and "the position driver may not read the point assign input correctly"
3 Close STB for at least 10 ms
4 Within 10 ms the drive turns its BUSY transistor off and starts the motor
5 🔴 Release STB once BUSY has gone off

⚠️ The trap, in the manual's own words

"In case that the motor operation is finished while the strobe signal input is not returned to the open state after turning off of the motor operation state output, motor operation state output transistor will not return to the ON state, holding the OFF state. After turning the motor operation state output transistor off, be sure to return the strobe signal to the open state."

🔴 If STB is still held when the move completes, BUSY latches off and never comes back. The carousel would appear permanently busy, and a naive "wait for BUSY to clear" would hang forever.

That is a bug we would otherwise have written, and it is exactly the kind of thing that only shows up on a real machine at an awkward moment. The rule is: drop STB as soon as BUSY asserts, not when the move finishes.

⚠️ Also from §12: after power-up, wait "servo parameter No. 10 'Startup delay time' + 3 seconds" and confirm no alarm; and STB must not be sent until 500 ms after the brake releases. PA 10 reads 0 on this drive, so that is a flat 3 second wait from power-on.

✅ Item 9 is largely answered without the Tecnos

The open dispute was whether OF.42 is the go command with five position bits on OF.43-OF.47, or SVON with the strobe on OF.43.

🔴 The retrofit does not inherit the Tecnos's outputs — it drives this connector directly. So the question that actually matters is "which Mesa output goes to which CN I/F pin", and that is a wiring decision we make, against the pin list already recorded above (P-IN on pins 35·34·33·32·31, STB on 10, SVON on 12, EMG on 9).

✅ And it is self-verifying. The drive's dP_IO monitor displays IN-7 as a decimal number. Drive the four bits, read the number back off the panel, and the wiring is proved — no Tecnos, no meter, no inference. If the panel shows 3 when you meant 3, it is right.

⚠️ One thing the manual does not settle: which physical pin carries which weight. The table lists P-IN as pins 35 · 34 · 33 · 32 · 31 without saying whether that reading is MSB-first. The readback test settles it in about a minute — set one bit at a time and watch the number.