waveshare 1.44 inch lcd display hat for raspberry pi install in stock

This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.

waveshare 1.44 inch lcd display hat for raspberry pi install in stock

Both Raspberry Pi Zero and Raspberry Pi Zero W is ok. WiFi version can make subsequent setup easier but in contrast it may draining more power continuously, i.e. shorter battery life.

Waveshare released 2 LCD HAT for RPi Zero, both have a tiny square LCD. The newer version have a 240 x 240 1.3" IPS LCD. It is 261 PPI and within the apple defined retina display range (218 - 458 PPI). This resolution is capable to emulate many retro game console in the CRT TV age, e.g. NES at 256 x 240 resolution, we can cut 8 pixels from both left and right overscan area and make it become 240 x 240.

To closely fit for the Waveshare 1.3" LCD HAT, it require a 8 mm tall 2 x 20 pins header. But I cannot buy one with 8 mm tall, so I will modify from a 12 mm tall pin header.

The interior size between RPi and LCD HAT can fit for a 5 mm x 23 mm x 45 mm battery, any LiPo battery with protection circuit that within this dimension should be ok.

I have some 10 mm x 10 mm tiny 5 V LiPo charge board in hand. It is small enough for this project, but the limitation is it only can charge the battery up to 50 mA current. A 400 mAh battery require over 8 hours for fully charged.

According to the RPi Zero reduced schematics, there are only 2 pins direct connected to 5 V, it is USB plug and PAM2306 regulator. All other parts powered by regulated 3.3 V and 1.8 V.

RPi Zero average draw around 100 - 200 mA and the LiPo is around mAh, the discharge rate is around 0.5 C. It can still utilise 90% of LiPo capacity before drop below 3.5 V.

Waveshare LCD HAT use low profile female pin header, it can make the product more slim. But we need a corresponding low profile male pin header at RPi Zero to make it. The male pin header should be 8 mm tall, but I cannot find on the web. So patch it from a 12 mm male pin header.

The steps to flash RetroPie image to the micro SD card is as same as flashing Raspbian image. If you are not familiar the flashing steps, please follow the steps provided by Raspberry.org:

We need further config after RetroPie boot, before that, we need to enable DWC2 USB controller to make network connection between computer and Pi Zero.

Edit the codlin.txt in micro SD, insert "modules-load=dwc2,g_ether" after "rootwait" keyword. The result should be something like that:dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=PARTUUID=14a75fe9-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait modules-load=dwc2,g_ether quiet loglevel=3 consoleblank=0 plymouth.enable=0 quiet init=/usr/lib/raspi-config/init_resize.sh

Find the "static const int mk_arcade_gpio_maps[]" row and update to HAT button mapping:static const int mk_arcade_gpio_maps[] = {6,19,5,26,13,21,16,20,0,0,0,0};

Fine tune for 1.3" LCD: C Configuration / Tools -> 805 configedit -> 1 -> 0 -> 2 Render Resolution -> O Video output resolution -> OK -> Cancel -> Cancel -> Cancel

The LCD HAT have 3 buttons and 1 extra push button in the cross button, it can map to the retro game console that only have 4 buttons (select, start, A and B). The highest resolution for this type of game console should be NES, it have 256 x 240 resolution. It can just fit for the 240 x 240 LCD display if simply crop the horizontal overscan area.

sorry for all the questions but could you please tell me what pins on the waveshare board i should solder because i dont know how you numbered the pins and what their functions are

for some reason my screen stays blank and it seems to output to hdmi (my tv cant handle the resolution though. i don"t see anything but get a low res warning)

got it to work by adding "fbcp &" to /etc/rc.local above the word “exit” at the end of the file. but the display looks weird. is that a misconfiguration or is the display broken?

i could fix it. according to https://www.waveshare.com/w/upload/6/6b/1.3inch_lcd_hat_user_manual_en.pdf i did edit the /etc/modprobe.d/fbtft.conf with speed=40000000 instead of 125000000 looking good now0

Nice work. I followed your instructions but for example the game 1942 I cannot see to complete screen, there are black bars at the sides. If I put "rotate=1" in "config.txt" I get image complete (like your video) but it is rotated 90º. How can do it to get a complete image wihtout "rotate=1"?

If I want to add sega Megadrive roms into system. Can you guide how to map the "c" button? (Megadrive have 4 buttons A,B,C and start this quite suit for this thing)

Trouble is I can"t find the charging board you used and the ones that are available are nearly twice thed size and have a usb port.... Thats why I asked you what you used!0

waveshare 1.44 inch lcd display hat for raspberry pi install in stock

I’ve played around with Retro-Pi in the past, using a fairly standard setup (screen, keyboard and USB game-controllers). This created quite a nice setup using the re-purposed portable DVD screen, but it is only really semi-portable (not really pocket-able).

I have several Raspberry Pi setups with built-in screens. I even have some Li-ion battery packs and USB chargers. Of course, I also have little the DIY game-pad kit I produce*.

* although I don’t actively sell them at the moment (as I felt I couldn’t guarantee swift shipping and service). However, I do have a few left in stock so email me from the address on the contact page and I’ll do my best to get back to you.

Although these form the components of a potential mini Retro-Pi setup, without a custom built case it wouldn’t be particularly practical one. Therefore, I really needed something to try out before creating a more embedded version so I can work out what features I’d want and ensure it works together nicely.

Then I saw this little board, which provides a little screen (120×120 1.4″) and some buttons, in a nice little form-factor which would stack directly onto a Pi Zero. I figured this would allow a neat setup which would allow testing of various setups and also something I could use as a user interface for many other Raspberry Pi based projects.

Within the thread and elsewhere others had reported success using a pre-built Retro-Pi image with a few adjustments. Although not my favourite way to do things (I like to understand it and be able to reproduce it from scratch), at least I could confirm the screen worked and have a working configuration to work from.

Ensure you at least use the following command to at least obscure your password (if copied this hash will still work on other devices so it isn’t much of a security measure, but it at least makes it less memorable).

I highly recommend putting an extra SSID entry in your wpa_supplicant file which you can remember easily. That way you can always start a WiFi Hotspot on your phone, with those settings, and access the device using a SSH terminal app, like JuiceSSH.

If you use SSH and intend on connecting the RetroPie to your network, then make sure you change the default password and enable SSH (you can do this via the raspi-config options).

Under Configuration / tools select samba – Configure Samba ROM Shares. This will make adding/removing ROMs and changing settings that much easier when connected to your network.

Note:Retropie does not come with game ROMs (for legal reasons). You will need to obtain your own ROMs to use an the systems you install. Sources of ROMs will not be discussed here.

By default, without ROMs installed only the RetroPie Configuration page will be visible, however once you add suitable files into ~/RetroPie/roms/, pages for each game system will appear.

It is important to remember that this add-on only provides 3 buttons (plus joystick central press), so it isn’t going to be suitable for all types of game systems. For now I’ve stuck to a small selection of Gameboy and MegaDrive/Genesis ROMs I used to play.

As always, it is important that the Raspberry Pi is shutdown correctly before it is powered off. That can often be difficult if you haven’t got a keyboard connected or you can’t easily navigate to the RetroPie menus.

Fortunately the software supports the ability to allocate a GPIO pin as a “soft” shutdown button. While this doesn’t fully power off the device it will trigger a software shutdown (allowing safe removal of the power). By default this is set to gpio_pin 3 (that is BCM GPIO 3 and the physical pin BOARD GPIO 5). Pin 5 is rather useful since it has a hardware pull up it can be shorted directly to Ground safely (as it has a resistor already on the board, limiting any current and not causing a short circuit). Pin 5 is also hardwired to trigger a reset from sleep.

In another words, you can connect a simple push button between Pin 5 (BCM GPIO 3) and Ground (i.e. Pin 6). This will not only trigger a shutdown when powered on, but will also cause the Raspberry Pi to power up again if previously in sleep mode. Giving us a combined Sleep and Power up button.

Therefore we can use the following script to toggle the screen on and off. At the moment this isn’t too useful, but if we add more hardware buttons we can use this to switch the screen off when we aren’t using it (helpful if we are using the Raspberry Pi remotely via a network connection).

Unless you are happy being tethered to the wall by a USB cable, portable power is a must. Thankfully most portable phone chargers can be used (at least with the lower end Raspberry Pi Zero etc.). Alternatively there are some Li-ion power boards available too, which are more likely to supply enough current for newer Raspberry Pi versions.

The waveshare 1.44″ hat provides an excellent little gaming device, but it does require a little fiddling around with to get setup. As a little Gameboy emulator it is ideal, with the added bonus you can remotely connect and do some programming on the side. The little screen and buttons mean only the most basic games will make sense on it, but it is versatile enough that it can be used in many other projects too.

waveshare 1.44 inch lcd display hat for raspberry pi install in stock

The ST7735S is a 132*162 pixel LCD controller, but the pixel of the 1.44inch LCD HAT is 128*128. So we have made some processing on the display: the horizontal direction starts from the second pixel, so that to guarantee the location of RAM in the LCD is consistent with the actual location at the same time.

Note: Different from the traditional SPI protocol, the data line from the slave to the master is hidden since the device only has display requirement.

The final display effect is scaled and displayed on the 1.3inch LCD in proportion. The setting of the resolution here should be slightly larger than the LCD resolution, the too high resolution will cause the font display to be blurred.

【Note】The mouse.py needs to run under the graphical interface, which will not run under the SSH login. You can skip this step directly, the Pi will run the demo automatically by booting up.

If fbtft is turned on, spidev0.0 will be occupied after restarting. If you need to run the demo at this time, you need to comment out the lines corresponding to fb in /etc/modules.

waveshare 1.44 inch lcd display hat for raspberry pi install in stock

There is an open source project on github: https://github.com/notro/fbtft. Thanks to its contributors. With this project, Raspberry Pi could supports TFT LCD perfectly. Let"s do it.

Note: You need to edit the name to the exact type of controller of your LCD. The controller of 1.44inch LCD HAT is ST7735s which is same as adafruit18_green and the fbtft support it as well, so we use adafruit18_green here.

9. You can see that there are all 0 on the memory, it is why the screen display black. We change the first line to FF, convert to BIN file again and save.

Then you can see that several white dots are display at left-bottom of screen. This is what Framebuffer work. If we change the data on buffer, the display will change as well,

The code will read one image, convert it to data and write to device /dev/fb1. Note that the display uses two bytes for one pixel which is based on RGB565.