Hello dear community, long time no see. I've been busy and kinda heart broken recently so didn't feel that much posting. Now I'm back on my feet and want to get something done so here's my question: is it possible to have a virtual 16x2 display (or something like that) that shows and enables to do basic tasks on a Raspberry Pi? I've been looking around those kind of displays and ways to control them (either through integrated keypads or external buttons) but than I realized that 15 to 40€ for an Adafruit display would be way too much for me to spend and, since I don't have my Raspberry Pi in a portable configuration at the moment, would be a waste.
If you have any suggestions or even just point me out in the right direction for a research I'll greatly appreciate it. Thanks.
Hi and welcome back. What do you mean by a virtual display? like a software emulated display?
There are plenty cheap 16x2 and 20x4 LCDs that can be driven using Raspi or even a simple MCU like an Arduino.
Like this one:
These are very easy to program and play with. and you don't have to use a Raspi. An Arduino will do. You can also connect it to your computer and the internet to display various stuff that you want.
here is a little project that I've worked on last year
Lemme know if you're interested in the details. I'd be more than happy to help.
Cheers.
First of all thanks for the reply. Yeah, something along those lines but showing the system stats of my Raspberry Pi and than some. My idea is to have something like this:
but showing it on my phone (for money saving purposes). If cheap displays are a thing I would buy one to do such a project. Also I'm pretty much below basics when it comes to python and libraries to drive this kind of accessories.
P.S. I think 20x4 displays are interesting and I wouldn't need a keypad for inputs because my friends gifted me a sensors pack for this kind of integrated boards and it comes with a button and a joystick so I could use those as controls
P.P.S. the only thing that it's missing that project shown in the video is CPU temp. Other than that I think would be absolutely perfect for my needs for now (until I start learning how to tailor it to more specific needs)
Showing stuff on the phone would be cheaper and honestly I'm pretty sure it'll be less of a hassle, The LCDs are cheap enough but you have to factor they require some programming. Although I have a Raspi, I've never tried to hook an LCD to it. and honestly my experience with python isn't much.
Now if you decide to get one of those LCD displays, just make sure to get it with serial interface module, This will save you the hassle of wiring down to 2 wires(Serial Clock and Serial Data). and they are cheap. usually a dollar or two. Or you can just buy the LCD with one of these included.
if your Raspi has bluetooth in it. you can use that to connect the display wirelessly.
Another idea would be to print the data(cpu temp or w/e) directly to a local html webpage and open it up from your phone.
btw a joystick is far better than a keypad. I have to used one in a project before to control a menu items on a 16x2 LCD. it is very easy to operate.
Sure an I2C display is what I was looking for and I've found a 20x4 for 13€ on Amazon from a reputable brand so that's what I would buy. Maybe I should just buy one and go for it with programming and stuff but I'm not sure about that to be honest.
I don't have a clue on how to interface a joystick with a display. I even had a lot of issues writing a script to turn on and off a relay and still I didn't figure out how to implement the GPIO cleanup without everything failing miserably lol
The HTML page might be a good starting point for monitoring system stats and maybe even sending basic commands like shutdown or stop torrents. Thanks again for all the inputs and ideas.
Here is a great article to get started
and another on how to wire an LCD with i2c chip
http://www.raspberrypi-spy.co.uk/2015/05/using-an-i2c-enabled-lcd-screen-with-the-raspberry-pi/
the latter is obviously easier to connect and requires less wires. Basically SDA+SCL+5v PWR+GND
The code can be written using C++ or Python or w/e you're familiar with. simply all you have to do is to import the necessary libraries and include them into your code. then its a simple logical statements. even tho I'm not that familiar with python, reading an example code was more than enough to get the job done.
after writing the code, you have to compile it into an executable file. then simply run the executable file. and ofc you can add it to be ran automatically at the startup of your PI. The adafruit article covers all these steps in details.
=====
If you want to try the local website route. you'll need to enable SSH and install apachi server. There are many guides on how to do it. just google it. here is a simple instructable that I've found
Best of luck.
Thanks man, you've been really really helpful. I appreciate all the effort you put into answering my question.
I've talked with a friend about this thing and he looks interested too so we're going to both buy an LCD and work on something toghether.
P.S. do you think that Adafruit library works with a 20x4 display too?
Different LCDs have different driver chips. Adafruit Liberary covers most of them to my knowledge (HD44780 Driver Chip which is used on almost all 16x2 and 20x4 LCDs). and even if your display isn't supported. usually you can find the correct libraries on github.
This page answers your question
Btw I encourage you to get an arduino if you're buying an LCD. Many projects are simple enough that you don't need an expensive rasp pi. a 5-10$ arduino clone will usually do the job.
P.S. I'm more than happy to help :D
Idk if useful but some vids
Raspberry Pi Projects: (stuff at the bottom of the list sounds more like what you are going to do)
The Pi is always on and I don't mind using it to drive an LCD or anything that sparks my interest. Thanks again for everything.
@MFZuul Thanks to you too for this videos, I might find something to use from these too.