Hobby Components 1602 SmartLCD (HCMODU0122)

Hobby Components modules
admin
Site Admin
Posts: 865
Joined: Sun Aug 05, 2012 4:02 pm

Hobby Components 1602 SmartLCD (HCMODU0122)

Post by admin » Fri Jul 07, 2017 3:50 pm

Image





The 1602 SmartLCD module is a serially controlled 2 line by 16 character alphanumeric LCD display. Unlike most serial LCD modules on the market the 1602 SmartLCD includes a microcontroller which gives the module a rich set of features. It also requires no software or libraries to initialise the display, output text to the screen or control the features of the module, which reduces development time and frees up much needed resources in your microcontroller or development board. The SmartLCD can be used in one of 3 modes:


PASSIVE SERIAL (TERMINAL) MODE

Image

With passive serial mode no libraries or special configurations are required, just hook it up to your microcontroller's serial port and display any text output from the port. That's it!



SERIAL AT COMMAND MODE

Serial AT command mode also allows you to display text via a serial port but adds more control via simple to use text based AT commands - print text anywhere on the screen, control the brightness and contrast or even read the status of the push buttons on the optional SmartLCD keypad.



I2C MODE

Image

Finally in I2C mode multiple screens can be connected to one I2C port. For Arduino users just install the SmartLCDI2C library (download from our support forum) and control all the features of the SmartLCD from simple I2C commands.





Features:


Image

16 character by 2 line LCD display module.
Very clear white text with blue backlight.
No software or drivers required to setup or control the module.
Software backlight control with 11 brightness levels.
Software contrast control.
External keypad with buzzer support (optional extra, see item HCKITS0058).
Single 5V operation.


I2C Mode

Control multiple displays from one I2C bus.
Software control of all module features via simple I2C commands.
I2C address configurable via software from 0x08 to 0x77 (default 0x27).
Built-in 10K pull-up resistors for clock SCL and data SDA lines.
Access to external keypad and buzzer.

Serial AT command mode

Software control of all module features via simple AT text commands.
Software configurable baud with 8 different speeds (9600 BAUD default).
Access to external keypad and buzzer.

Serial passive mode

Compatible with 5V serial UART devices (9600 baud default) – no microcontroller required.
Automatically displays any printable ASCII text.
Responds to a number of additional extended ASCII control codes.



Specification:

Model number: HCMODU0122
Supply voltage: 5V
Display type: 16 character x 2 line alphanumeric LCD
Display technology: STN negative blue / transmissive polariser
Supply current: 27.5mA (backlight on) / 9.8mA (backlight off)
Interfaces: I2C, serial UART and external keypad
Module dimensions: 80mm x 36mm x 17.5mm
Bezel dimensions: 71mm x 24mm




Arduino Example - Printing to the screen in AT command mode

This example demonstrates how simple it is to control the LCD in AT command mode using an Arduino. The example uses the Arduinos built in serial print function to send the AT commands to clear the screen and print 'HELLO WORLD!' to the screen. No special libraries or setting up required! Just connect the LCD to your 5V Arduino as follows:

ARDUINO.......SMART LCD
GND..............GND
5V.................5
TX.................Rx

  1. void setup()
  2. {
  3.   Serial.begin(9600);                 //Initialise the serial UART
  4.  
  5.   Serial.println("AT+CLR");           //Clear the screen
  6. }
  7.  
  8. void loop()
  9. {
  10.   Serial.print("AT+PR=");             //Send the AT print command
  11.   Serial.println("HELLO WORLD !");    //Send the text to print. Note the println to send a CR+LF after the text
  12.  
  13.   while(1);                           //Do nothing
  14. }





Optional Features - LCD Keypad kit

Image

The SmartLCD's features can be further expanded with the addition of the Smart LCD keypad (see item SKU: HCKITS0058). This add-on board connects to the SmartLCD's keypad header using a single 4 way cable. Once connected it adds the additional features of keypad control (up, down, left, right, select, and back) and audible output to your end application. Access to button states and speaker output is then available via the SmartLCD's I2C or UART interfaces using its built-in commands (see the software section of the SmartLCD manual for more information).


Wireless access

Image

A bonus feature of the Smart LCD, due to it not requiring initialisation by a microcontroller, is it's ability to operate wirelessly using a suitable serial wireless pass-through module. Here in the diagram below you can see a remote control application of the Smart LCD and
keypad with the addition of HC-05 Bluetooth slave (see item SKU: HCARDU0004) and Bluetooth master (see item SKU: HCARDU0064) modules.




Image

The reference manual for the SmartLCD 1602 LCD can be downloaded here:

http://hobbycomponents.com/downloads/HC ... Manual.pdf


If you wish to interface the SmartLCD to an Arduino via its I2C interface we have written an Arduino library that will help simplify your sketch. This can be downloaded from the software section of our forum here:

http://forum.hobbycomponents.com/viewto ... =58&t=2206




Disclaimer: Libraries, example code, and diagrams are provided as an additional free service by Hobby Components and are not sold as part of this product. We do not provide any guarantees or warranties as to their accuracy or fitness for purpose.

Descriptions and diagrams on this page are copyright Hobby Components Ltd and may not be reproduced without permission.

kalle67
Posts: 5
Joined: Tue Oct 10, 2017 11:17 am

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by kalle67 » Wed Oct 11, 2017 7:05 am

Hello, I bought your product on Amazon, I would like to know if my keyboard can handle multiple menus. In fact, I'm designing an aquarium with an Arduino and Hobby Components 1602 SmartLCD (HCMODU0122) and I'd like to be able to fix times and more with the keyboard.
Help me?

andrew
Site Admin
Posts: 1374
Joined: Sun Aug 05, 2012 4:15 pm

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by andrew » Wed Oct 11, 2017 9:26 am

Hello, I bought your product on Amazon, I would like to know if my keyboard can handle multiple menus.
Yes it's possible but the SmartLCD itself doesn't have any built in menu system. Any menus have to be handled by your own sketch by sending text to the display and checking for keypad button presses. You may want to take a look at the example 'SmartLCD_Keypad_Example' sketch found in the SmartLCDI2C library which will give you some clues on how to send information and read back button presses.
Last edited by andrew on Wed Oct 11, 2017 9:42 am, edited 1 time in total.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.

kalle67
Posts: 5
Joined: Tue Oct 10, 2017 11:17 am

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by kalle67 » Wed Oct 11, 2017 9:39 am

Thank's for all.

kalle67
Posts: 5
Joined: Tue Oct 10, 2017 11:17 am

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by kalle67 » Fri Oct 13, 2017 9:33 am

Sorry if you are disturbed but are in trouble creating the code. I would like to change the time of the ds3231 via the button, do you think you can do it?

andrew
Site Admin
Posts: 1374
Joined: Sun Aug 05, 2012 4:15 pm

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by andrew » Fri Oct 13, 2017 4:13 pm

I'm afraid we don't offer software design services but if you have any specific issues feel free to post them on this forum as somebody may be able to help.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.

kalle67
Posts: 5
Joined: Tue Oct 10, 2017 11:17 am

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by kalle67 » Fri Oct 13, 2017 7:43 pm

Thanks for writing the software I arrange it by myself, the important thing is that this hardware supports it.
thank you very much and good job.

kalle67
Posts: 5
Joined: Tue Oct 10, 2017 11:17 am

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by kalle67 » Mon Oct 16, 2017 9:27 am

Hi, I got the product but I can not find the scheme for welding the components, can you help me?

andrew
Site Admin
Posts: 1374
Joined: Sun Aug 05, 2012 4:15 pm

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by andrew » Mon Oct 16, 2017 2:23 pm

Are you by any chance referring to the keypad kit? If so this can be found here:

https://hobbycomponents.com/smartlcdkeypad
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.

peterlinstead
Posts: 1
Joined: Sat Dec 26, 2015 8:45 pm

Re: Hobby Components 1602 SmartLCD (HCMODU0122)

Post by peterlinstead » Thu Jun 21, 2018 4:13 pm

Hi,
I'm not that experienced programming in C and have struggled with using String arguments with the SmartLCD.print() command what was easy with lcd.print() seemed bizarrely difficult with SmartLCD.print().
Here is a (probably extremely ugly but I don't care as I have been struggling it with for hours and was glad to have found something that works) solution in case you are suffering like I was:

void PJLwrite(int loc, int line, String text)
{
lcd.setCursor(loc,line);
lcd.print(text);

char chartext[text.length()+1];
text.toCharArray(chartext, text.length()+1);
SmartLCD.CurPos(line,loc);
SmartLCD.Print(chartext);

/* Example of use: */
/* PJLwrite(0,0,"Out " + String(choosenoutput) + " high limit"); */
}

If Andrew or some other guru can explain why I can't just code SmartLCD.Print(text); in the above function or if you have a more elegant solution then it would be nice to know. Thanks Pete

Post Reply

Return to “Modules”