Jump to content

MBLC/Surround Control/LCD q's


d2k
 Share

Recommended Posts

Hey...

I have a 128x64 display that uses the HD61202 and HD61202 controller IC's. I've had a look around and it seems that the 61202 is s/w compatible with the KS0108 so i'm thinking it wouldn't take much to implement it with MIOS. The aim is to use this display as a graphical representation of surround control for use in Logic. A joystick would control the surround settings - as described in this post: http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=concepts;action=display;num=1039325767;start=0#0. So the questions are:

1. First off, is this display okay? (datasheets at end of post)...

2. Would it be possible to use it as a graphical representation of surround control? I see it as summin quite basic, like a cursor (controlled by the joystick) which u'd then just move about on screen and position accordinly...This would have to programmed I assume?

3. I'm guessing it would require a seperate core (would be used in my LC box) - is this where midibox link comes in?

4. I also remember TK talking about the 'layer functionality' of the MBLC - would that play a role in this config?

Datasheet for Display:

http://www.notapplicable.co.uk/mbhp/dg-12864.pdf

Datasheets for HD61202/3:

http://www.notapplicable.co.uk/mbhp/hd61202.pdf

http://www.notapplicable.co.uk/mbhp/hd61203.pdf

All the best...

Dan

Link to comment
Share on other sites

Hi Dan,

this is one of the good ones - as you can see in the datasheet:

glcd_vertical.gif

it stores the pixels vertically.

The command set is compatible, so it should work with GLCD mode 1 w/o problems. Would be great if you could ensure this :)

2) yes, this has to be programmed. No problem with MIOS so far, but requires some skills

3) if you want to use it as second GLCD: yes, a second core. For MIDIbox Link just connect the grounds together and MO of the "master core" to the MI of the "slave core". Thereafter the "master core" (your MIDIbox LC) can send special SysEx strings or similar to control the second GLCD via remote (but here again: implementation is easy - routine has to be inserted into the MIDI processor handler - but requires programming skills)

4) no, you would have to program an additional layer

Best Regards, Thorsten.

Link to comment
Share on other sites

Hey T...

Great, it seems to be compatible then ;)...

One thing - to test the LCD how should i connect it it to the 18F core module? Should i just follow the pinout of the GLCD as in mbhp_glcd_64240a.pdf? Some of the pins are slighty diff...

Also, as this GLCD would go on a second core - would i also use this for the joystick/surround control addon? Makes sense i guess...

Best...

Dan

Thanks again...

Dan

Link to comment
Share on other sites

Well, I tried connecting this LCD to an 18F core and it was a no go - lowered all the voltage levels instead :??? I wired it in as shown in GLCD pdf/gif as the pinouts was more-or-less the same...

Perhaps this LCD requires some additional components for the power or summin - as that T6963C did?

Best...

Dan

Link to comment
Share on other sites

Hi Dan,

the initialization is exactly the same - the display will be turned on with the "0x3f" command, thereafter you should see the pixels.

Also the bus interface is exactly the same. Are you able to control the contrast? Do you see gray pixels? If not, the Vee->V0 connection via the pot has not been setuped correctly. You could also measure Vee against ground, should be ca. -10V. The level at V0 should be between -8V and -10V

Another possible reason could be the reset line (remember the HD64240 problem?). The reset input should be tied to +5V. If this doesn't work, try ground (the datasheet doesn't make clear if the reset is inverted or not)

Best Regards, Thorsten.

Link to comment
Share on other sites

Hey T...

Still no joy... :-/

I had it wired exactly as described in ur pdf and the additional 10k pot connected as so. I've tried ur other suggestions but I still get the same result - an overall reduction in voltage accross the whole circuit. The points u mentions are coming up at like -0.186V :??? but then once the GLCD is removed it's all fine again - and working with the standard characted LCD...

Mebbe this GLCD requires some sort of additional power circuit or summin?

One thing, i'm testing without the A&K pins connected - that shouldnt matter tho should it? It's only for the backlit and works fine with no connection on regular cha LCDs...

Best...

Dan

Link to comment
Share on other sites

Hi Dan,

yes, the A/K pins are not necessary to control the LCD. Hm.... you wrote:

but then once the GLCD is removed it's all fine again - and working with the standard characted LCD.

does this mean that the core is running with the same LCD type for both displays? This will not work, you have either to change the type setting in the ID field during burning the first-level bootstrap loader, or you have to add a MIOS_LCD_TypeSet function call to the LC_Init hook of the application.

Best Regards, Thorsten.

Link to comment
Share on other sites

Hm, in this case I'm very unsure what is causing the trouble. Maybe the LCD needs some additional time until it is ready for receiving a command.

Maybe you should try a second initialization in the init hook (e.g lc_init.inc):

USER_Init
      movlw      200                  ; wait for 200 ms
      call      MIOS_Delay

      movlw      0x3e + 1            ; Display On command
      call      MIOS_LCD_Cmd

Best Regards, Thorsten.

Link to comment
Share on other sites

Hey...

I've had a google for this display - not much info came up but i did come across this post from some forum: http://www.skippari.net/phpBB2/viewtopic.php?p=503 - It's a slighty diff model number to the one I have but it may help to troubleshoot. It mentions the display ".... needs some extra negative tensions to work properly (lcd Driving and Contrast)", so that makes me think thats what the prob here is...

Any ideas...?

Nice...

Dan

Link to comment
Share on other sites

Hi Dan,

some days ago you wrote that you are seeing the pixels (points), so the contrast voltage level is ok and doesn't require an additional supply. The backlight is another issue, but not so important yet. However, it would be interesting for me if the display driver is still active. Could you please send the following SysEx string to the core and write down the return message?

F0 00 00 7E 40 00 0D 02 00 0B 12 00 00 00 01 00 00 00 00 F7

Best Regards, Thorsten.

Link to comment
Share on other sites

Hey T

some days ago you wrote that you are seeing the pixels (points)

???

I don't remember sayin that, I havnt been able to see anything on the display...

Again, I cant send that msg to the core as when the GLCD is attached the voltage levels across the WHOLE circuit (lcd/core/etc) get screwed up so the core wont be able to send out a bean...only when the GLCD ISNT attached do the voltage levels on the core return to normal - as ud expect so...

Best...

Dan

Link to comment
Share on other sites

Alright, it seems that I've misinterpret one of your comments ("The points u mentions are coming up at like -0.186V").

The datasheet says the the LCD consumes about 3mA --- thats nothing compared to other components. So it must be a wiring error (are you sure that this: http://www.notapplicable.co.uk/mbhp/dg-12864.pdf  is the correct datasheet?). One thing that you can do is to remove all wires from the display and to connect them again in the following order

(turn off the power before every step!)

  • Vss/Vdd
  • check if the core sends a MIDI message after power-on
  • Vee->Pot->V0
  • check if the core sends a MIDI message after power-on
  • control lines (D/I, R/W, E, CS1, CS2)
  • check if the core sends a MIDI message after power-on
  • data lines (D0-D7)
  • check if the core sends a MIDI message after power-on
  • reset line with a 10k pull-up against Vdd
  • check if the core sends a MIDI message after power-on
  • OR reset line with a 10k pull-down against Vss
  • check if the core sends a MIDI message after power-on

does it help?

Best Regards, Thorsten.

Link to comment
Share on other sites

(are you sure that this: http://www.notapplicable.co.uk/mbhp/dg-12864.pdf  is the correct datasheet?)

Thats the thing, it seems this is bit of phantom LCD as after getting in touch with the manufacturer this is what they said:

I think that my design team (in Taiwan) did a little work on the side and made the '15 series pin compatible with the DG-12864, then renamed it the DG-12864-27.  Technically  this module was not was not

sold by Excel Tech so I can only offer limited (official) support.  Take a look at these two datasheets and let me know if you think my theory is correct, the urls are:

http://www.lcdexceltech.com/lcmdata/DG-12864-15.PDF

http://www.lcdexceltech.com/lcmdata/DG-12864.PDF

This was a reply to diff query from someone who has the same LCD I got - also got it off ebay, prolly from the same seller...

So, that other datasheet has a few diff values, but does it make any more sense  ???

Cheers...

Dan

Link to comment
Share on other sites

Hi Dan,

yes, the new datasheet makes much more sense - among other pins Vdd and Vss are exchanged, this means that you will get a short when you connect the LCD in the wrong order. Thats exactly what you've noticed. It's also interesting that the pin name for the reset line indicates a low-active input /RST, means: you have to use a pull-up to +5V.

Now I see only two problems: Vee is missing, this means that you have to supply V0 (here: Vlc) with ca. -8V to -10V from external. (Note: in some days I will publish a MAX759 based DC converter which supplies up to -15V from a 5V source).

Another problem are the chip select lines /CS1 and /CS2. They are inverted. However, I can compile a special MIOS version for testing purposes if another polarity is required.

But in the meantime just check if the core voltage is ok with the new pinning.

Best Regards, Thorsten.

Link to comment
Share on other sites

yup, i forgot to chek the new datasheet there myself ;p indeed voltage levels are now fine after swapping the Vdd/Vss wires ;)

Also, I measured the reset pin (14) against ground and got 5V - do i still need a pullup?

So, I guess we leave it there for now - i'll get some those max ic's in ready for the circuit needed...

thanks again...

Dan

Link to comment
Share on other sites

Hi Dan,

for the case that you want to try it with an external voltage source w/o the DC converter:

http://www.ucapps.de/tmp/mios_v1_2_pre3.hex.zip

now supports

  • an option for the KS0108 driver which inverts the chip select pins
  • your T6963C based GLCD
  • more than 2 CLCDs (in fact the number of CLCDs which can be driven by one core is now only limited by the number of free pins)

for your LCD you need to change lc_init.inc:

USER_Init
LC_Init
      ;; use a KS0108 compatible graphical LCD with inverted chip selects
      movlw   0x01
      movwf   MIOS_PARAMETER1
      movlw   0x01
      call    MIOS_LCD_TypeSet

it would be great if you could check this with your HD61202 GLCD

Best Regards, Thorsten.

Link to comment
Share on other sites

u da man TK! ;))

for the case that you want to try it with an external voltage source w/o the DC converter:

so, once i get this external voltage thing made I can test ye? or do you mean i dont need one now - the lcd works of the core power? I've got some of those maxim ics in the post just in case neways...

Thanks again again and again :)

Dan

Link to comment
Share on other sites

Hi Dan,

sure, the LCD logic itself works with +5V, only the liquid crystal cells require a negative supply (-> Vlc pin). You could use an additional PSU which delivers stable 9V - connect the positive end to the ground of your core module and the negative end via a pot to the Vlc input, the contrast has to be adjusted with the pot. If you don't have a PSU available, just use batteries. The LC cells don't require more than 3 mA (will work for a lot of hours ;-))

Best Regards, Thorsten.

Link to comment
Share on other sites

hmm, so i guess i could take the power circuit of the SID module (8580 version) which uses the 78L09 and just breadboard it exclusivly for the 128x64...maxim ic not needed then ;)

I'll test and report back the lcd quality as soon as...

Best...

Dan

Link to comment
Share on other sites

okay, we're making progress. After connecting the GLCD fully to the core with that new hex file burnt (ID Value: 0000000000001000 in ICProg) and connecting a 9V battery I got this:

image02.bmp

I could kinda make out a loading bar when power is first turned on, then it'd go to the Ready screen sometimes, or it'd stay 'stuck' like that, or show nothing at all (bar the mass of pixels), nothing ledgible neway. So I got MP Lab and recompiled a new HEX with the updated code - didnt make any diff - infact it seems that after sysexing that to the core it's now showing no ledgible info :/...

I just replaced:

#if LCD_USE_SECOND
      ;; initialize the LCD: we allow graphical LCD and up to 2 character LCDs
      ;; for the 2-character LCD option, we have to set the offset of 
      ;; line 3 and line 4 to 0x80/0xc0
      movlw      0x00
      movwf      MIOS_PARAMETER1
      movlw      0x40
      movwf      MIOS_PARAMETER2
      movlw      0x80
      movwf      MIOS_PARAMETER3
      movlw      0xc0
      call      MIOS_LCD_YAddressSet
with:
#if LCD_USE_SECOND
       ;; use a KS0108 compatible graphical LCD with inverted chip selects 
      Â movlw   0x01 
      Â movwf   MIOS_PARAMETER1 
      Â movlw   0x01 
      Â call    MIOS_LCD_TypeSet 

then F10'd, then perl'd to a sysex file then mios'd to the core - thats correct ye?

Also, i think I might have the contrast pot connected wrong as when adjusting it presently it'd turn the display off when i turned it to the left and same before all the way to the right - it also got very hot and started to smoke! :( I have it like this at present:

 ____

 |      |

 |___|

 |  |  |

1  2  3

1 - Vee (1)

2 - Vlc (2)

3 - Open (did try it on 18 (FGND) and Vss no diff)

The reset line i think should be left open as when tied to ground or +5 it'd reset the LCD and show nada...

Another pixel closer...;)

Dan

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...