Smartlinc Hardware Information

Smartlinc Hardware Information

brad@heeltoe.com 9/03

Here's some notes on the Smartlinc device's hardware. It's basically a PIC16C73, some latches, power supply and an Optrex 5001N display.

I bought the device for a home automation project but could not get it to do what I wanted. It sat unused for a few years and one day I opened it up and discovered the PIC. More time passed. One day I broke out the ohm meter and beeped out the PC board. I then bought some 16F73's and started hacking. Next thing I new I had a nice simple ascii terminal with a touch screen.

My new firmware turns the device in to a simple display device with a touch screen. It is driven via simple serial protocol.

The touch screen connects to CN3 & CN4.

The backlight is controlled by a simple Sipex regulator.

One latch has sipex and lcd control signals and the buzzer.

One latch is used for the touch screen to scan like a keypad matrix

I didn't bother with the X10 interface or the EEPROM. Some day I might but I don't need them now.

The touch screen code is not complete. It only works on the bottom few rows. I think the technique I'm using is not quite right but it's good enough for the two rows which are connected to gpio's.

flex cable connector CN3

pin signal 1 1Q 373 #2 2 2Q 373 #2 3 3Q 373 #2 4 4Q 373 #2 5 7Q 373 #2 6 6Q 373 #2 7 5Q 373 #2

flex cable connector CN4

pin signal 1 pic pin 21, rb0 2 1D 373 #2 3 2D 373 #2 4 3D 373 #2 5 4D 373 #2 6 5D 373 #2 7 6D 373 #2 8 7D 373 #2 9 pic pin 16, rc5 M2570-2BM regulator Atmel 750 24C128 16kx8 eeprom Sipex 4423CN pin 1 - HON (high=active, low=inactive)

73HCT373 #1

bit pin --- --- 0 1D pic ra0 - 1 2D pic ra1 - 2 3D pic ra2 - 3Q - lcd8, CE# 3 4D pic ra3 - 4Q - sipex pin 1, HON 4 5D pic ra4 - 5Q - lcd9, C/D# 5 6D pic ra5 - 6Q - lcd11, RESET#, led? 6 7D pic rc2 - 7Q - buzzer? 7 8D pic rc5 - OE# gnd LE# rb6

73HCT373 #2

bit pin --- --- 0 1D pic ra0 - 1Q matrix CN3, drives w/pullups 1 2D pic ra1 - 2Q matrix CN3 " 2 3D pic ra2 - 3Q matrix CN3 " 3 4D pic ra3 - 4Q matrix CN3 " 4 5D pic ra4 - 5Q matrix CN3 " 5 6D pic ra5 - 6Q matrix CN3 " 6 7D pic rc2 - 7Q matrix CN3, drives w/pullups 7 8D pic rc5 - n/c? OE# rb7 LE# rb7

LCD

LCD1 - gnd LCD2 - gnd LCD3 - vdd LCD4 - contrast LCD5 - vee LCD6 - pic rb3, WE# LCD7 - Vdd, RD# LCD8 - 3Q, 373 #1, CE# LCD9 - 5Q 373 #1, C/D# LCD10 - Vdd, HALT# LCD11 - 6Q 373 #1, RESET# LCD12 - ra0, data LCD13 - ra1 LCD14 - ra2 LCD15 - ra3 LCD16 - ra4 LCD17 - ra5 LCD18 - rc2 LCD19 - rc5 LCD20 - n/c

PIC - 16C73

+-----------------------+ | 1 MCLR# rb7 28 | LE/OE# on 373 #1 1D #1/1D #2/lcd12 | 2 RA0 rb6 27 | LE on 373 #2 2D #1/2D #2/lcd13 | 3 RA1 rb5 26 | backlight sipex Vdd 3D #1/3D #2/lcd14 | 4 RA2 rb4 25 | ? pulled up 4D #1/4D #2/lcd15 | 5 RA3 rb3 24 | lcd6, WR# 5D #1/5D #2/lcd16 | 6 RA4 rb2 23 | to transistor w/cut signal (TW523?) 6D #1/6D #2/lcd17 | 7 RA5 rb1 22 | TW523 | 8 Vss rb0 21 | CN4,1 | 9 Osc Vdd 20 | | 10 Osc Vss 19 | ? | 11 rc0 rc7 18 | Uart ? | 12 rc1 rc6 17 | Uart 7D #1/7D #2/lcd18 | 13 rc2 rc5 16 | CN4,9/lcd19 atmel pin 6/scl | 14 rc3 rc4 15 | atmel pin 5/sda +-----------------------+ 16Mhz external osc port A ra0 data bus 0 ra1 data bus ra2 data bus ra3 data bus ra4 data bus ra5 data bus 5 port B rb0 out touch, CN4,1 rb1 ? TW523 rb2 ? TW523 rb3 out lcd WR# rb4 ? rb5 out backlight vdd rb6 out 373 #1 LE rb7 out 373 #2 OE# port C rc0 ? rc1 ? rc2 data bus 6 rc3 atmel pin 6 / SCL (i2c) rc4 atmel pin 5 / SDA (i2c) rc5 data bus 7 rc6 uart rc7 uart

Touch matrix

Start by setting all 373 #2 outputs low Scan by setting one 373 #2 output high Check inputs - if any low, you've got a hit