Memorex | MVD2029 | MT13x9 hardware interface to front panel

MT13x9 hardware interface to front panel
Gridd © 2004
Partial copyrights Camomille22003
Version 19-Oct-2004
Disclaimer
This is rather research paper since it discusses facts not clearly known.
Therefore, it would be honest to warn any individual about use this information on its own risk.
1. Proper use of this information suppose some experience in low- level programming and
hardware (basics of the digital electronics at least).
2. Author of this memo cannot be responsible for any consequences that may arise from
application of information, contained herein. Doing wrong may cause severe damage of your
DVD player (or even electric shock for unqualified person).
3. Author of this memo believes this information is correct as much as possible, but recognize s
that our knowledge is not full and may sufficiently change.
You can reach author of this memo at gg2004@yandex.ru, or post at Yahoo MT13x9 group or
Amstrad forum. Please inform me of any bugs in this memo, misinterpretation or incompleteness.
The goal of this memo is attempt to build a system from pieces of known facts in plain form for
everyone who would like to understand this subject better. The qualified ones probably would not find
anything new in this paper, but for beginners it should be quite helpful.
Everyone’s been a newbie, everyone’s needed kickstart.
How it works. In general
VFD stands for Vacuum Fluorescent Display. This is most common indicator for status representation
in different DVD players and home electronics appliances, because of its cheapness and reliability.
The LCD is second one.
NEC sometimes refers VFD as Front Interface Panel in their datasheets, so don’t stuck if you meet
FIPTM in NEC’s docs or somewhere else. For the eye of engineer in electronics VFD and LCD are
quite different – LCD consumes lower power, and, basically, needs other chips (drivers). In practice
this mean you cannot throw away VFD and set up LCD on the same place without sufficient redesign
of scheme. From the programmer’s point of view there is no difference. That sounds good and we
should keep it for future reference. And while you would not read explicit notice, you have to void
difference for VFD and LCD.
Fig.1 VFD interface components
1
The general VFD interface is shown at Fig.1 User reads device status on display and tries to change
the sequence of operation by pressing front panel keys. A chip responsible for displaying out
information on VFD and reading buttons named as VFD driver. It is controlled by 8032 processor core
integrated in MT13x9. For MT1389-based boards this IC is usually NEC ìPD 16312 or compatible
(for successful datasheet search by google you have to type uPD or even mPD at search bar).
MT1369-based boards use NEC ìPD 16311. MT1379 boards can use both types.
Original NEC chips are not frequent guests on printed circuit boards. There is a number of VFD
drivers available on market and most of them are made by Asian manufacturers not widely known.
(Princeton Technologies (PT), HolTek (HT), SamHop MicroElectronics (SM), Topro (TP), AnaChip
(AD)) But last two digits in chip model number may give some info when docs are lacking. If there are
‘12’ or ‘11’ there is a chance that chip would be compatible with NEC. To ensure this, try to retrieve
datasheet from the Net. You may require Chinese Acrobat Reader (or full Acrobat) for successful
reading (even if these datasheets were written in English they may use numbers and some symbols
from Chinese fonts J ).
Variety of designs
If DVD manufacturer can spend some additional resources to improve hardware design or just to
create something different and, for its opinion, customer attractable, then VFD board schematics may
became quite different of reference Mediatek design.
There are some VFD boards distinctive from that reference – BBK 965S, LG 7831, Pioneer DV-470-S,
Philips DVD LX-8300.
BBK965S uses LCD driver PT6554LQ by Princeton Technologies. As mentioned above, from the
programmer’s point of view there is no difference between LCD and VFD, but PT6554LQ also differs
from NEC uPD 16312 – it has more pins and consequently more inner registers. It looks like extended
version of 16312 and uses other command set (but similar – none carefully checked that). Further
exploration is needed to determine distinct features. Unfortunately, there is no complete datasheet
available on the Net (the currently available one has pinout and examples of typical applications but it
lacks of programming guide).
LG 7831 uses Hynix GMS81C2012. This is programmable 8-bit MCU (microcontroller unit) and has
independent program wired in the internal ROM. And, again, further exploration is needed. Probably
MCU may be responsible for generation characters on chip side and therefore 8032 code of LG may be
simpler to understand, since there would not be character tables inside 8032 code. But this is not a fact,
just a proposition…
Pioneer DV-470-S, Philips DVD LX-8300 use different VFD drivers – PE5374B and Toshiba
TMP87CH74 respectively. When reversing code you have to have these datasheets at hand.
Links to some datasheets
NEC uPD 16312 (you can find here uPD 16311 also)
http://www.alldatasheet.com/datasheet-pdf/view/NEC/UPD16312.html
PT6554
http://www.princeton.com.tw/english/product/getProductFile.asp?Product_no=PT6554
2
Hynix GMS81C2020
http://www.hynix.com/eng/products/ system_ic/sp/down/GMS81C2020.pdf
PE5374B
Unknown chip by unknown manufacturer. No datasheet . Let author know if you find something
about.
Toshiba TMP87CH74
http://pdf.toshiba.com/taec/components/Datasheet/TMP87CH74_M74.pdf
VFD in itself
VFD is fragile vacuum-contained tube with luminescent anode segments and cathode grids inside.
There is a huge variety of VFDs on market since manufacturers pay enough attention to exterior view
of production. A lot of VFD manufactures are not known to wide public. The well-known names are
Samsung and Futaba and more or less known are ZEC and Noritake.
A good FAQ on VFD technology resides on Noritake site.
http://www.noritake-elec.com/vfd_technology.htm
This is a good introduction in hardware matter. You can learn that is ‘duty factor’, ‘bias’ and lot of
other stuff, but this is extra reading. If you miss it, you lose almost nothing.
Samsung VFD and recommended VFD drivers for their production is at
http://www.samsungsdi.co.kr/contents/en/product/vfd/vfd.html
Find «VFD catalog», Click «View e-book»
I don’t know who was that smart boy in Samsung who put PDFs in flash player. Instead of whole thing downloading you have to sit and click for every
page in VFD catalogue. That’s boring and embarrassing even on 256K link. Really!
MAXIM site also has web pages of VFD tube manufacturers (some links are dead)
http://www.maxim- ic.com/appnotes.cfm/appnote_number/1154
Service Manuals often miss the VFD manufacturer’s name and sometimes even does not contain
model number. Therefore, understanding which information displayed at specific program point is not
simple. There is a perfect page from Grundig Xenaro GDP 5100-6150 service manual. This is
extremely rare case when manufacturer puts VFD layout in manual. Grundig player does not use
MT1389, but has similar VFD controller board. Fig.2 included just for reference to better understand
the connections of VFD to driver chip and how it displays information.
3
Fig 2. Futaba VFD example. Model 6-BT-297GK.
(from Grundig Xenaro GDP 5100-6150 service manual)
This VFD has six grids (1G-6G) and 16 segments (P1-P16) connected internally to different symbols
and common 7-segment indicators. Other models usually have different sets. To highlight specific
symbol or digital element you have to select respective grids and segments, i.e current should be
drive n to these pins by VFD driver chip.
Another good example is from Philips manual. DVD players manufactured by Philips often use
indicators capable to show any alphanumeric symbol. (15-segment) versus traditional 7-segment.
4
Fig 3. Overall view of HUV-08SS57T or 20U26115TAN , with detailed view of single 15-segment
element (from Philips LX-3900-SA service manual)
Table 2. Relation between grids and segments for Philips indicator
and we should not miss excellent camomille’s drawings in Excel. It may be very useful for VFDs
consisting of 7-segment elements. (Characteres.xls 34816 bytes in size)
5
6
VFD driver
Let’s look to VFD chip closer with connected VFD Futaba 6-BT-297GK (not shown here, see fig.2)
Fig 3. VFD driver example. (NEC ìPD16312)
(from Grundig Xenaro GDP 5100-6150 service manual)
Short pins description: (more detailed – in ìPD16312 datasheet)
Pin OSC is an external oscillator pin required for chip synchronizing and has no interest for
programming. Pins VSS, VDD are the supply power for IC and has no interest for programming also.
Understanding of other pins is essential.
VFD Futaba 6-BT-297GK has grids G1-G6 connected to 32-37 pins of VFD driver IC (GRID6GRID1). Such signal wiring is illogical only at first glance and may be easily justified by PCB layout.
This is done often to improve signal throughput, reduce noise and cross-talks between neighbor wires.
Don’t forget – there are hard- and soft- wares. The PCB redesign requires much more efforts, time and
money in comparison of changing bits order while programming.
Segments of Futaba VFD connected to 15-31 pins (P16-P1 respectively). This is a set of pins
(SEG1/KS1-KS6, SEG7-SEG11 and SEG12/GRID11-SEG16/GRID7). Some pins may have different
assignment, depending on selected VFD driver configuration.
LED1-LED4 – each of these pins can directly connect to LED. Status of bits can be programmed
independently. Oftenly one LED used to show STANDBY status. BBK 965S uses more LED pins for
LCD backlight of regulated intensity.
KEY1 – KEY4 – key matrix for front panel buttons (PAUSE, STOP, REWIND, etc.). Front keys also
wired to SW1-SW2 (not shown on Fig.3) but Grundig front panel is not suitable for educational
7
purposes (engineers drawn jog dial and buttons which were not seen at front). So we should look for
some primitive circuit to learn basics. Here is it.
Fig.4. Keyscan Matrix example
(from Memorex MD2028 Service Manual (MT1379))
Some wirings were removed to clean the picture (pin 14, for example). Note the STANDBY LED on
LED0 (pin 42). There is a plain set of front panel buttons, connected to KEY0-KEY3 (rows) and SG1SG3 (columns). To read the status of pressed button, you should select respective column by setting
one of SG1-SG3 to ‘1’. Current began to flow and if button pressed it goes to respective KEY0-KEY3
input. VFD driver reads status and stores bits for each pressed button in internal RAM register.
And, again, this is a just an example. In most cases of real life, circuit diagrams of specific players will
be different.
To customize VFD driver chip for handling miscellaneous numbers of grids and segments, the chip
should be programmed appropriately. Basically driver chip configuration (number of supported SEGs
and GRIDs) programmed only once during initial setup. It may use default settings also.
VFD interface to host. 4-wire vs. 3
There is a detailed description of the internal VFD driver registers in datasheets, consequently there is
no need to copy manual pages here. You can always download and read original.
Nevertheless, some attention to programming of chips should be paid. Usually this topic is not covered
extensively and datasheets are full of technical details useful for engineers in electronics but have little
interest for programmers.
VFD driver gets commands and puts data to host by DIN / DOUT / CLK / STB serial interface
(Sometime it refers as NEC interface). Let’s look closely at VFD driver from previous figure 4.
8
Fig.5 A closer view to host interface.
(from Memorex MD2028 Service Manual (MT1379))
Name on
chip
DIN
DOUT
CLK
CS (STB)
Table1. NEC interface pins
Name on
Name on
Purpose
connector
MT1389
VFD driver data input
DAT
VDATA
VFD driver data output
CLK
VCLK
VFD driver tx/rx data clock
STB
VSTB
Chip select (strobe)
Flat cable, connected to CN1 at fig.5 leads to MPEG board where these signals connect to MT1389
(8032 host) pins. Signal may change its name when traveling between sheets of drawings and
complicate understanding for the first time. That happens very frequently because OEM service
manuals created by copying and pasting pages from different sources and none carefully scrutinizes
every sheet.
Originally NEC proposed 4-wire interface. Basically, there is no simultaneous read/write operations
from/to VFD driver at the same time. To reduce number of wires, pins DIN and DOUT are usually
soldered together. Chip inside has some protective logics preventing registers data from mutual
influence. Thus, 4 wires became 3.
To see which pins of MT1389 used for VFD interface, look at the summary table at the end of this
memo. Note the ‘shifting up and wrapping around’ of VFD interface bits in MT1369 devices, and no
difference between MT1379 and MT1389.
As we can see, DVD manufacturer for some purpose may change assignment of 8032 bits to control
VFD driver. This is one of the reasons why firmwares may be incompatible between OEMs and may
not work if flashed directly without adaptation.
Adaptation requires careful studying of all available info. The best source is service manual for
specific model, but obtaining it is not simple, and frequently is not possible.
And even you have pdf on hand, be careful. For example , schematics of BBK965S probably may have
errata. Circuit Diagram of VFD board shows separated DIN and DOUT wires, but MPEG board get
9
only one – VSDA. For proper functioning it should be somewhere connected together, but this is not
shown.
The known exclusions of VFD design are LG 7831, Pioneer DV-470-S, Philips LX-3900. They use
different chips as VFD drivers. (Philips and LG use MCU, Pioneer uses unknown chip)
Serial Communication Format for NEC 16311/16312 and compatibles
Nevertheless, number of players (especially non-brands) has NEC-compatible chips.
Fig.6 Data reception over NEC interface.
(snatched from NEC mPD 16312 datasheet)
Reception is for VFD driver side, for 8032 side it would be transmission. To write data we should :
1. Set STB pin low.
2.Put data on DIN,
3.Accompany each bit with toggling CLK.
….. < if command requires additional data,
serialize bytes to bits
and send them across the wire>
4. set STB pin high.
VFD interface pin arrangement for BBK965S
P13 – VSCK (CLK)
P14 – VSDA (DIN/DOUT)
P15 – VSTB (STB)
The following code (CODE4:A373 – CODE4:A37D) from BBK965S firmware bank4, an example of
sending command to VFD interface. The ‘???’ shows that 0x43 is doubt to be ‘SCAN KEYS’ J, but
in this case, it does not matter.
10
Fig.7 Example code for complete interface cycle to VFD from 8032 (BBK 965S)
To see what happened in detail we should look transmit_byte_to_VFD subroutine listing:
Fig.8 Example code for byte transmission to VFD from 8032 (BBK 965S)
and its relation to signal timings
11
VSTB(STB) stay low all the time while data transmission is in progress. VFD reads VSDA(DIN) on
the rising edge VSCLK(CLK) (transition from low to high – ‘setb P13’). The order of bits in
transmission is from LSB to MSB (serialization and output done by ‘rrc A / mov P14,C’ commands).
Fig. 9. Data transmission over NEC interface
(snatched from NEC mPD 16312 datasheet)
And again transmission is for VFD driver side, for 8032 it would be reception.
To read data we should :
1.
2.
3.
4.
set STB low and keep it while reading is not completed.
toggle CLK from high to low (falling edge)
read data from DIN/DOUT,
set STB high when reading has to be completed to close serial interface.
LSB goes first when 8032 reads VFD driver. Between sequential write and read there should be delay
of twait to ensure write operation has been completed and there would not be unwanted influence of
previous operation. Datasheet says that 1 microsec of delay would be enough. Usually you see the six
or seven nops in code.
After this discussion understanding of display memory updating by incrementing address would be
quite obvious. Note the behaviour of STB signal. It toggles every new command and stays low while
command data (DIN) are transmitting. You cannot transmit more than 22 bytes between STB toggles.
This is NEC 16312 chip restriction.
Fig.10 Updating display memory by incrementing address.
(snatched from NEC mPD 16312 datasheet)
12
Fig. 11. updating specific adress.
(snatched from NEC mPD 16312 datasheet)
Happy reversing!
Gridd, 19.10.2004
13
Table 2. Summary Table (from unpublished paper)
Daewoo
DVG-8500N
(Hitachi
HOP
1120/1200)
Memorex
MVD2029
(Sony KHM234)
Sanyo SFHD60AV
(Memorex
MVD2028 /
2030)
Memorex
MVD2022 ,
POLAR
DV10xx,
(Sony KHM280)
BBK965S
MTK Ref
design board
Philips
LX3900SA
(mod.
01/05/69/75/93)
Philips
DVD LX8300 (mod.
Pioneer
DV-470-S/K
LG DV8731
MT1369E
?
?
VSTB
VSCK
VSDA
ASTB
Philips
DVD625
(submods /001
/021 /051),
Philips
DVD728/729/7
31
MT1379E
?
?
STBY_DECT
VSCK
VSDA
VSTB
Processor
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
MT1369AE
?
?
VSTB
VSCK
VSDA
STANDBY
MT1379E
?
?
No conn
VSCK
VSDA
VSTB
MT137E ‘C’
?
?
No conn
VSCK
VSDA
VSTB
MT1389
?
?
no conn
VSCK
VSDA
VSTB
MT1389
?
?
no conn
VSCK
VSDA
VSTB
MT1389E
?
?
No conn
VSCK
VSDA
VSTB
MT1389EE
FP_SO
FP_SCK
FP_ACK
FP_SI
MT1389
?
?
no conn
No conn
VFD_SCK
VFD_TXD
Processor
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
SCL (I2 C)
SCL
SCL
SCL
SCL
SCL
SCL
SCL
SCL
SCL
P1.6
P1.7
SDA (I2 C)
SDA
SDA
SDA
SDA
SDA
SDA
SDA
SDA
SDA
P1.7
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
Front panel
controller
MICMUTE
MUTE
?
?
RXD
TXD
NEC uPD
16311
P3.01
P3.1
?
?
RXD
TXD
NEC uPD
16311
ASTB
P3.1
?
?
RXD
TXD
NW 6312
(625), PT6312
(728-731)
TV1
TV2
?
?
RXD
TXD
PT6312 or
HR6319 or
HT16512
P3.0 ASTB
P-S-SELECT
?
?
RXD
TXD
Unknown
(Missing pages)
No conn
No conn
?
?
RXD
TXD
PT6554LQ
No conn
No conn
?
?
RXD
TXD
NW6312
STB_SW
AV_MUTE
?
?
RXD
TXD
NW6312
PT3611
uPD163112
MT1389E
?
?
No conn
VSCK
VSDA
Selection
HDMI/DAC
SCL_HDMI
(SCL_DAC)
SDA_HDMI
(SDA_DAC)
FP_IRQ
AV_MUTE
?
?
RXD
TXD
TMP87CH7
4
P1.6
LIMIT
UP3_1
?
?
RXD
TXD
PE5374B
No conn
VFD_RXD
?
?
RXD
TXD
Hynix
GMS81C2012
Parental
password
Design name
3308
CONF_V2
SD6.1
SD6.3
WYXCN,
WYxCN/FG
DV8000’S
SR14811B
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
Front
panel
controller
Parental
password
Design
name
Not specified
7890
MTK_1369_H
D6_E2T43
625 - CL
36532022_015
(19/03/03)
728-729-731 –
(27/03/03)
MTK_1369_H
D6
Revisions:
E1T2 MVD2028
E1T3 MVD2030
MT1379
SERVO SONY
MEGA
Not specified
? – Not known from schematics
No conn – No connection
1
This is not a mistyping, all the names are from circuit diagram
A bit confusing – NW6312 and mPD16311 written together on schematics, at block diagram PT3611 specified (typo?)
3
Looks like design for Sanyo
2
14
15
Download PDF