Categories
Linux Posts

“Look of disapproval” not correctly displayed in Ubuntu / Linux Mint

If internet memes such as the following are displaying as squares rather than the faces they should be, it’s because Ubuntu/Linux Mint doesn’t come with the correct font packages.

ಠ_ಠ

To install these packages, simply install “unifont”:

sudo apt-get install unifont

If you’re having trouble in other distros, just search for the unifont package and install in that (might be named slightly differently.)

Categories
Blog Electronics Posts

Densitron – DD-160128FC-2A – Review

Product: RGB OLED 160X128 Display
Manufacturer: Densitron
Price: £20.33 (At the time of this review.)

Datasheet: DD-160128FC-2A Datasheet | Farnell Mirror
EAGLE library: http://prusadjs.cz/eagle/OLED.lbr

The DD-160128FC-2A is a solid little screen, at around 4.3cm (from corner to corner) it’s perfect for displaying information on small mobile robots, a little serial terminal screen for desktops, wrist mounted electronics and a whole bunch more. The only issue with the design of the screen is that it doesn’t come with any mount holes, leaving the only real option of mounting this to a case or project box with glue on the back (which makes it not reusable) or sandwiching the displays edges between two layers (which could prove difficult with only a few millimetres border).

The display boasts a bright back-light thanks to the use of OLED (organic light-emitting diode) which also keep the power consumption low (3.3V input) making this an awesome little display for mobile use when a power supply isn’t available. The colours are surprisingly deep and vibrant for such a small display and there is no visible flicker from the refresh rate. The 160×128 resolution is easily enough to display around 10 lines each with 18 characters on, alternatively it would look great displaying a camera video feed or a slideshow of pictures.

An EAGLE library was created for this OLED screen which includes pin descriptions and correct sizing for those wishing to create their own PCBs for projects using this display. It can be found here.

For those wishing to use this product in conjunction with an mbed (more info here) someone (simonb, over at the mbed community) has created a driver for the “Densitron DD-160128FC-1A”, this should work perfectly well with this newer module screen and all the source code and much more information is available through the mbed website – here. This is a great library which allows you full control over colour, fills, text, individual pixels and even the orientation of the screen.

If you’d prefer not to attempt creating your own PCB and all that pesky soldering, or are not very good at soldering I strongly advise buying the breakout board for this screen (this can be found at Farnell here), it’ll allow you to develop and play around with the board much easier and it’s only around £15.

Densitron also offer a bunch of other screens with a range of sizes, resolutions and prices and due to the ease of use of their products they seem to be an ideal for hobbyists, students and anyone looking to prototype a product quickly. Check out their entire range over at Farnell – http://uk.farnell.com/densitron/

Keep tuned for more projects using this, all will include schematics and source code.

Categories
Arch Linux Blog Command Line Fedora Linux Posts Ubuntu

Switching Between Two Resolutions in Linux

I have a TV and my monitor connected to my PC by a VGA switch box but what’s annoying is they aren’t the same resolution. This causes problems because I can’t see what I’m doing when I have switched to TV and usually have to leave the setting manager open so that when I change between them I just have to hit return and the resolution changes. That’s great and all but it’s far more effort than I want for something I do fairly often.

My plan was initially to create two xorg.conf files and switch between them using a script, I figured this would be the easiest way even though I haven’t messed around with xorg stuff for a few years ever since things just started working better in Linux. Turns out I couldn’t even find where they keep the xorg.conf file, it sure isn’t in /etc/X11 where it was the last time I looked..

On the search for this file though I came across another useful tool called xrandr, which essentially allows you to change the resolution from the command line.

Xrandr is used to set the size, orientation and/or reflection of the outputs for a
screen. It can also set the screen size.

If invoked without any option, it will dump the state of the outputs, showing the
existing modes for each of them, with a ‘+’ after the preferred mode and a ‘*’
after the current mode.

There are a few global options. Other options modify the last output that is spec‐
ified in earlier parameters in the command line. Multiple outputs may be modified
at the same time by passing multiple –output options followed immediately by
their corresponding modifying options.

For more information on xrandr check out the manual page (or type man xrandr in terminal).

It turns out it’s an extremely easy tool to use, with a command as simple as the following changing the resolution:

xrandr --output VGA1 --mode 1440x900

So the next thing I did was create the following script which allows the resolution to switch between 1440×900 and 1360×768 (my monitor and my TV native resolutions).

#!/bin/bash

TV="1360 x 768"
MONITOR="1440 x 900"

TEST="$(xrandr | grep current | sed -e 's/.*current //;s/, maximum.*//')"

#echo $TEST

if [ "$TEST" == "$MONITOR" ]
        then
                xrandr --output VGA1 --mode 1360x768

elif [ "$TEST" == "$TV" ]
        then
                xrandr --output VGA1 --mode 1440x900

else

        exit

fi

This script simply checks what the current resolution is being used and then toggles between the two set resolutions.