I2C, OOPic and LK162-12

LK/ELK/VK/PK/OK/MX/GLK/EGLK/GVK/GLT Series

Moderators: Henry, Mods

Post Reply
Gizmo
LCD?
Posts: 4
Joined: Sun Mar 18, 2007 1:12 am

I2C, OOPic and LK162-12

Post by Gizmo »

I am trying to interface an LK162-12 with an OOPic II+ via I2C. The OOPic comes with a built-in I2C object that (as far as I can tell) should be compatable with the display. I've tried using a serial connection (RS232) via my PC, and the display responds perfectly (via LCD Tester - it came on the CD I got with the display), but it won't even flicker when I try to use I2C.

Display info:
MO LK/Vk162-12, R.22

There is a sticker on the back of the display's pc board that has the numbers 1330-04M06

I've verified the wiring, and played with the coding as best I can (I'm a bit of a noob at things like this), but I get no results at all. I've also tried changing the jumper settings to TTL, but got no results (can I still use the RS232 connection with my PC with these settings, or will it damage the display?).

Any help would be greatly appreciated. I've tried looking through the forum, but can't seem to find anything that I can use. I don't remember anything about C (haven't used it for more than 10 years), so I'm programming in Basic, and the examples in C and Java don't make sense to me.

Thanks in advanced. Will post code if required.
Henry
OMNIPRESENT
OMNIPRESENT
Posts: 3014
Joined: Tue Aug 14, 2001 6:00 pm
Contact:

Post by Henry »

Hi Gizmo,

Have you taken a look at section 2.1.7? Mind the typo there, it should say LK162-12 not LK404-55. Also, make sure you are talking to the display on the correct I2C address. I can't tell you right now what the default is, so the easiest way to resolve that is to set it using serial communications using uPorject. Monday Raquel will tell you the default address.
Henry J.
President
Matrix Orbital
Raquel
Matrix Orbital
Matrix Orbital
Posts: 834
Joined: Thu Aug 19, 2004 3:37 pm
Location: MO Office

Post by Raquel »

Hello Gizmo,

The dafault I2C slave address of the VK162-12 is 0x50. If for some reason this has been changed, try putting on the manual override jump (pins 3 and 4 of the keypad/GPO connector) while communicating via I2C.

As Henry pointed out on Section 2.1.7 of the manual, you should have the two I's soldered and the two R's desoldered. Make sure also that you have your pull-ups for the I2C lines.

Best Regards,
Raquel Malinis
Design and Development
Matrix Orbital
Gizmo
LCD?
Posts: 4
Joined: Sun Mar 18, 2007 1:12 am

Post by Gizmo »

Raquel wrote:...you should have the two I's soldered...
Check.
Raquel wrote:...and the two R's desoldered...
Check.
Raquel wrote:...Make sure also that you have your pull-ups for the I2C lines...
Check.

I've been using a USB based scope by Parallax to check signals, and I have a good clean clock and data signal at the connector on the display. Also, I've reset the 'ttl logic' level jumpers to non-ttl, and was able to get the display to work with HyperTerminal, LCD Tester, and UProject via RS232. That makes me suspect that the problem is only in the I2C side of things. Are there any things that I can check/test on the board to confirm that the correct parts of the board are getting the correct signals?

Thank you very much for your assistance thus far. I really appreciate it!!
Raquel
Matrix Orbital
Matrix Orbital
Posts: 834
Joined: Thu Aug 19, 2004 3:37 pm
Location: MO Office

Post by Raquel »

Hello Gizmo,

Going back to addressing, please confirm that you are addressing the display at 0x50. Use this address straight out, no need to do the 7-bit addressing as per stated on section 2.1.7 of the manual.

Also, if for some reason the module has been configured with a different address, make sure that is reconfigured back to the 0x50 address by communicating with it via uProject. In the main tab, there is a section where you can set the I2C Address, enter in '50' and click on Set I2C Address.

Please let me know how it turns out.
Raquel Malinis
Design and Development
Matrix Orbital
Gizmo
LCD?
Posts: 4
Joined: Sun Mar 18, 2007 1:12 am

Post by Gizmo »

Still no response from the display. I did notice, however, that the display reset itself when the OOPic started up. I had set the I2C address in UProject to 50, cleared the display, then started up the OOPic, and the display acted as though it recieved a reset command. Any link?
Raquel
Matrix Orbital
Matrix Orbital
Posts: 834
Joined: Thu Aug 19, 2004 3:37 pm
Location: MO Office

Post by Raquel »

Hi,

There is no reset command at all with the modules. I think there might be some power issue such that, when you have the OOPic started the displays gets reset. Is it possble for you to have the OOPic and the display started at the same time? If you have this set up, make sure the OOPic sends its first I2C transaction after some delay making sure that the display is fully initialized.

If you look at the SCL and SDA again using your scope, do you see a 01010000(ACK bit) clocked out?

By the way, I hope that you are not making new designs based on the LK162-12 PCB 2.2. We have phased out this revision and are currently producing the LK162-12 PCB 3.0.

Thanks,
Raquel Malinis
Design and Development
Matrix Orbital
Gizmo
LCD?
Posts: 4
Joined: Sun Mar 18, 2007 1:12 am

Post by Gizmo »

Raquel wrote:...If you look at the SCL and SDA again using your scope, do you see a 01010000(ACK bit) clocked out?
Hmm. That would be a little hard to decipher. You see, the display is on the same bus as the EEPROM, so there is a constant flow of data on that bus. Might this be a problem?
Raquel wrote:...By the way, I hope that you are not making new designs based on the LK162-12 PCB 2.2. We have phased out this revision and are currently producing the LK162-12 PCB 3.0...
No worries there. Just a personal home-brew project to fill the hours after work (I work an odd shift).
Post Reply