bingshui.org

the Life of Zim

2nd February
2012
written by dzimney

I’ve been running Ubuntu 10.10 for a year or so now and there have been a few times, after installing some updates I presume, where I’ve restarted my computer and suddenly my monitor resolution isn’t recognized. Normally I run the maximum resolution (1920×1010) of my monitor, a Dell P2311H. But on these restarts, my resolution is reduced to 640×480. Very annoying. Now, from what I understand, this is not an issue with Ubuntu per se, but rather the monitor’s failure to send the proper EDID or Extended Display Identification Data for the monitor. Essentially the EDID sends information of what display settings the monitor is capable of, such as refresh rates and resolutions. The basic remedy is to manually enter these settings.

Very recently I had this issue occur to me twice for two separate issues, which is really what’s prompting me to write this post. I don’t want to have to dig through the interwebs again to solve this. So, in my case there were two separate incidents with two different resolutions.

Round 1
The first time my screen resolution was all jacked up, it was because of the “Screen” settings in my xorg.conf, which is located at /etc/X11/xorg.conf.

NOTE: be sure to make a backup of xorg.conf before making edits. You don’t want to make matters worse, and there’s no guarantee that this solution is the solution to your problem.

At the bottom of xorg.conf you should see a section labeled “Screen” or something similar to this:

Section “Screen”
    Identifier    “Default Screen”
    Default Depth    24
EndSection

In this section you’ll want to add a subsection labeled “Display” that defines your available screen resolutions, or more importantly a Virtual resolution which appears to server as a setting for the maximum allowable resolution. Edit the “Screen” section to look something like this:

Section “Screen”
    Identifier    “Default Screen”
    Default Depth    24
    SubSection “Display”
        Virtual    1920 1080
        Depth    24
        Modes    “1920×1080 1680×1050 1344×840 1280×800″
    EndSubSection
EndSection

The resolutions you enter should obviously match to available resolutions for your monitor. More importantly the Virtual entry should match you monitor’s maximum resolution, or rather the maximum resolution you intend to use, whichever is smaller.

Now restart xerver. Depending on your default display manager, you can do this by running one of the following commands:

sudo restart lightdm
or
sudo restart gdm
or
sudo restart kdm

You can find out what your default display manager is by looking at the file default-display-manager in the /etc/X11 directory.

After the restart, maybe you’re good, maybe not. On to…

Round 2

The second time my resolution went all wonky on me it was due to the refresh rates. For this edit, we’ll still be working with the xorg.conf file, but we’ll be editing the “Monitor” section. In my case, this section looked like this:

Section “Monitor”
    Identifier    “Monitor0″
    VendorName    “Dell”
    ModelName    “P2311H”
    HorizSync    28.0 – 33.0
    VertRefresh    43.0 – 72.0
    DisplaySize    509.76 286.74
    Option    “DPMS”
EndSection

The two fields in question are the HorizSync and VertRefresh. You’ll want to change these to whatever your monitor’s refresh rates are. You’ll probably have to do a bit of Googling to figure it out. Of course you could probably just enter in these numbers I have below and see what happens. I believe the worst case scenario would be that Ubuntu would restart without any GUI in which case you’d be stuck in the terminal. So if you’re not comfortable with the Terminal it might not be worth the gamble. Also, in my case DisplaySize looked awfully suspicious and so I removed that line completely.

Again, in my case, the final section looked something like this:

Section “Monitor”
    Identifier    “Monitor0″
    VendorName    “Dell”
    ModelName    “P2311H”
    HorizSync    30.0 – 83.0
    VertRefresh    56.0 – 76.0
    Option    “DPMS”
EndSection

Again, restart your display manager as per the instructions from Round 1 and with any luck you should be in business.

2nd October
2012
written by dzimney

So I think this is my third post on setting display resolutions under Ubuntu. I’ve got this Dell P2311H 23″ monitor, which has really been great for what it cost me (around $200, I believe). However, the monitor resolutions don’t get picked up by Ubuntu and after a few restarts of my computer, I end up with 640×480 display, which is really a pain in the ass. The odd part is, that usually during installation and for a few restarts, everything runs fine. Eventually it always gets jacked. It has something to do with the monitor not putting out a EDID. I write a little about it here. Anyhow, I recently updated to Xubunut 12.04 (not a fan of Unity at all). And so of course, here I am dealing with the same issue. Things have changed since 10.10 however.

In Xubuntu 12.04 (which for the record is simply Ubuntu running Xfce rather than Unity), the xorg.conf files are handled a bit differently. Firstly, they’ve moved out of the /etc/X11 directory and into the /usr/share/X11 directory. Additionally, they have become they. In 12.04, and I believe since 11.04, the xorg.conf is now a directory called xorg.conf.d and contains various *.conf files. This is a very welcome change as it allows for the config files to be more organized. In the /usr/share/X11/xorg.conf.d directory, there should already be a number of files. One thing to not here is the that naming convention is to start with a two digit number then dash then the config file name, such as 10-monitor.conf, which is what we will be using. From what I understand the number at the beginning is used to sort which file gets loaded first. I believe there are also some conventions for the number ranges, such as numbers in the 40s are all for some type of config. I really don’t know, but in case you care, there is a rhyme or reason to it, which you can of course choose to ignore if you wish.


Step 1

Before we begin, there are a few pieces of information we need. Firstly, we need to know how to write our modeline. What’s a modeline? I don’t really know, but we’ll be generating one with the gtf command which takes three parameters, Horizontal Resolution, Vertical Resolution and Refresh Rate. In my case, I will be entering the command like this:

gtf 1920 1080 60.

This will provide a modeline for a screen resolution of 1920px width 1080px high and a refresh rate of 60hz. If you don’t know your refresh rate, you probably want to go with 60, especially if you’re using an LCD screen. Entering the command should output something like this:

# 1920×1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz
Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync

We want the “Modeline” which is including and everything after the word “Modeline”.

Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync

We also need the Mode Name. This is the first part in quotes: "1920x1080_60.00", including quotes.


Step 2

Next, we need to know the name of our display device. To retrieve this, enter xrandr into the terminal. This should output something similar to the following:

Screen 0: minimum 320 x 240, current 1920 x 1080, maximum 1920 x 1080
default connected 1020x1080+0+0 0mm x 0mm

What we’re looking for here is the name of the device. This should be whatever appears before the word “connected”. In my case the device name is “default”.


Step 3

Now it’s time to write the configuration file. As I mentioned earlier, we are going to create a 10-monitor.conf file. To do so sudo an editor of your choosing such as pico or leafpad. If you don’t like the terminal try the command sudo leafpad /usr/share/X11/xorg.conf.d/10-monitor.conf. Personally, I enjoy myself a little pico and will be entering sudo pico /usr/share/X11/xorg.conf.d/10-monitor.conf. Either will do.

Type up your config file to look like the following, where <MODELINE> and <MODENAME> are replaced with the modeline and modename you found in the Step 1 and <DEVICENAME> with the device name found in Step 2.

Section "Monitor"
Identifier "Monitor0"
<MODELINE>
EndSection
Section "Screen"
Identifier "Screen0"
Device "<DEVICENAME>"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes <MODENAME>
EndSubSection
EndSection

In my case, the final file looks like this:

Section "Monitor"
Identifier "Monitor0"
Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
EndSection
Section "Screen"
Identifier "Screen0"
Device "default"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x1080_60.00"
EndSubSection
EndSection

IMPORTANT! READ THE FULL NEXT PARAGRAPH
For the changes to take you’ll need to save the file and restart your computer. If everything was done correctly, your resolution should be set at 1920×1080 (or whatever resolution you’re using) and you shouldn’t need to touch this stuff again. HOWEVER, if you have a typo or anything wrong with the config file you’ve just created, it is possible for you to lose your display entirely. If this happens, wait for the computer to fully boot and press Ctrl+Alt+F1. This should bring up a terminal and allow you to remove the config file you’ve just created. Do so by running the following:

sudo rm /usr/share/X11/xorg.conf.d/10-monitor.conf

Once you’ve removed the file, restart the computer (this can also be done in the terminal by running sudo reboot). You can also edit the file the same as we did before, although leafpad won’t be an option any more, and attempt to decipher what is causing the problem. It is entirely possible that this solution simply won’t work for your configuration and monitor.

Good luck. And thanks to Samuel Martin for the original post on this.

12th January
2011
written by dzimney

First a quick review:
Quite a while ago I purchased the Logitech DiNovo Mac Edition wireless keyboard. And I have to say, I really love this keyboard. Especially compared to the Apple’s wireless keyboard. First off, it’s a full keyboard with a number pad, compared to Apple’s. Apple does make a full keyboard, but not a wireless version (at least as of this post date they don’t). Next up is battery life. The DiNovo runs extremely efficiently. I’ve had mine for months now and the battery still reads as full. Whereas when I was using the Apple wireless keyboard, my batteries would be drained after a few months of use. Granted the DiNovo takes four AAA batteries vs Apple’s three AA (or two AA with the newer keyboards). But still. I’d rather not have to worry about it, and from my experience the DiNovo lasts at least twice as long with extra batteries. Finally connectivity. The DiNovo uses a wireless USB adapter which works flawlessly. For me, I use an extra monitor with USB ports, so there’s no issue of having to constantly plugin and unplug the USB adapter from my laptop. I have a few usb devices I use in my workstation and only use one plug when hooking into my laptop. Apple’s keyboard on the other hand uses bluetooth to connect. I have had several problems with connectivity on these. My wife also has used one of these and having two in the house makes everything more difficult. In short, when they work, great. When the don’t, they’re a huge hassle and not worth the trouble shooting time.

So, although I’m annoyed with the functionality of the Dashboard Key and Brightness Keys on the DiNovo, I still would, will, and do choose the Logitech DiNovo wireless keyboard over Apple’s Wireless Keyboard hands down. It’s simply better in every respect for what I’m looking for and need.

Now for the issue at hand…
So the issue here is really quite simple. On the keyboard, as is standard on all Mac keyboards, a number of the F* keys (F1, F2, etc.) have dual functionality, mainly media control (play, pause, etc.), volume levels and brightness. For the most part everything on the keyboard works as expected. The media controls and volume controls work without a hitch. The rest however do require you to download and install the Logitech Control Center for Mac. This installs an preference pane that allows you to configure those special function keys. However, for me at least, even after installing the Logitech Control Center, my brightness (F1 and F2) and dashboard (F4) keys still didn’t work. To this date, I still don’t know why.

Hackintosh…
However, I have figured out a quick fix for the dashboard key. This hack opens the dashboard, but unfortunately does not close it the way the key works on a native Apple keyboard. To accomplish this, open the Logitech Control Center from the System Preferences on your Mac. If your keyboard is connected, you should see it listed. Click on the keyboard you wish to configure and press the Configure… button. A new window will open. Select the Keys tab in the upper left if it has not been selected already. Now you should see a list of all the special function keys and their assigned actions. If you select F4, you should see that it is set to Exposé, Dashboard & Spaces. Again, I don’t know why this doesn’t work, but it just doesn’t. As a fix, change this to Open Application. From here on the bottom of the window under Details you should be able to set which Application opens. Select Other… and find the Dashboard Application in your Applications directory. This should now cause the F4/Dashboard key to launch the Dashboard Application. Again though, pressing the key again, unfortunately, does not close the Dashboard as a native keyboard will.

EDIT:

A better fix…
So I just figured out a better fix for the Dashboard key. Essentially, what you want to do is set up a hotkey control for the Dashboard under System Preferences -> Keyboard and then set the action of the Dashboard key to Keystroke and enter the given hot-key-stroke. Ya dig?

So go to System Preferences -> Keyboard (under Hardware). Select the Keyboard Shortcuts tab. Now, select Dashboard & Dock under the left column. In the right column you should see Dashboard listed. If you double click the right side where it shows the shortcut, you should be able to enter whatever keystroke you want.

Now, go back into the Logitech Control Center and configure your keyboard (as described above). Select the dashboard button and select Keystroke as the Assigned action. Now at the bottom under Details you should be able to enter the keystroke you just entered in the Keyboard Shortcuts. Ta-Da!! Should work instantly.

With this solution, the Dashboard key will now both open and close the Dashboard.

Short Rant
It’s upsetting that things don’t just work the way they should. In addition to this issue, I use Songbird as my media player. Unfortunately, the media keys don’t work with Songbird and there’s not easy way to reset them so they do. I think these issues are all more related to Apple’s “closed box” system rather than poorly designed/implemented technologies on Logitech and Songbirds part. Of course that could just be my anti-trust conspiracy theories at work.

EDIT:

I actually just read that this is a known issue for Logitech. From what I read it appears to be something that Apple just does. Basically, media controls and brightness controls will only work on a non-Apple external keyboard if there is not an Apple keyboard connected to the computer. So if you’re on a desktop, and for some reason have two keyboards and one is a Logitech and one is an Apple, the controls will work on the Apple, but not the Logitech. Disconnect the Apple keyboard and the Logitech media controls should work. However, if you’re on a laptop, you’re pretty much just screwed as you can’t “disconnect” the laptop’s keyboard. I really fucking hate Apple’s proprietary bullshit. I’ll leave it at that.

A wise man once told me, “You have to be smarter than the machine you’re working with.” I hope this post helps someone solve an issue that I put up with for far too long.

5th August
2009
written by dzimney

I’m starting to think I should change the title of my blog from “the Life of Zim” to “the Rant of Zim”.
It’s amazing how disconcerting Corporate America really is. Actually, I take that back, I’m not
amazed by it at all. It’s simply disturbing.

So, next up on my shit list is Adobe Systems Incorporated.

If you haven’t been following along on the blog, we were recently robbed. Someone came into our house and took our shit. It sucks. We’re still dealing with it a week later, and I’m sure we’ll still be dealing with it a month from now. Once again, it sucks. With that, I should point out that I do not blame Adobe for the burglary or think that it is their responsibility to compensate us for said burglary. My frustration with Adobe is rooted in their Customer Service, or rather lack there of. I’m am deeply disappointed by every aspect of their customer service that we have received up to this point.

A note for those of you that are unfamiliar with Adobe products and specifically CS4 or Creative Suite 4: You should know that the version of the Creative Suite that Laura had was Adobe Creative Suite 4: Design Premium, which costs $1,799. There is no comparable alternative to Adobe. For the line of work we are in, you use Adobe; it’s that simple. Now, it’s not Adobe’s fault for being the best at what they do, but I think it is important to note that they have a loose monopoly on the market. That said, between the high cost of their product and their dominance over the market, I believe, Adobe is in a greater echelon that ought to be held to a higher standard for the level of service they provide to their customers.

After the burglary, Laura bought a new computer. Upon attempting to install her copy of CS4 the software told her that the maximum number of machines (2) had been activated for her copy of CS4. The first activation was lost when the video card went out on her computer, which Apple replaced with a new MacBook Pro. The second when that replacement MacBook Pro was stolen a week ago.

CS4 comes with a License FAQ html file regarding possible issues you might run into. If you are on a Mac and have CS4 installed in the default location, you should be able to find the FAQ here. I was unable to find the FAQ on the Adobe website. The FAQ reads:

What happens if my computer is stolen or damaged and cannot be repaired?

If your computer is stolen, damaged beyond repair or the hard drive is completely re-imaged, the activation will be lost. In either case you can install and start using the Adobe product on your new computer, which will automatically detect the problem if you already had two computers activated. The activation process will guide you through the new activation, even if the prior computer is no longer available.

Both activation instances should totally be covered here. I’m sure that Apple re-imaged the laptop that was sent back, and the other installation was stolen with the computer. So naturally, after reading this, we thought, “Oh, great! Looks like there shouldn’t be any problem at all.” Wrong. Opening any program of CS4 prompts for activation. Upon activation a message displays saying that the maximum number of activations has been reached and that you have 30 days — the trail period length — to resolve the issue. There is no direction on how to solve the issue other than deactivating the other installations — which you must have the computer that the software is installed on to do — and in our case is impossible, but apparently covered according to the FAQ?

Next step: let’s call customer service. Hopefully you’ve never had the need to contact Adobe. Navigating their website and specifically their contact information is fairly difficult. Links are difficult to find, and over all it’s a counter-intuitive site architecture. Once you finally find the list of phone numbers, there’s the question of which number to call — in our case a tossup between Customer Service and Technical Support. I have yet to find any email address to contact, which is very surprising to me. I suppose with an email they can’t just put you on hold until you give up.

Preface to calls to customer service:
All of the service representatives we spoke to were in India. I don’t have any problem with Adobe’s customer service department being based in India. I don’t particularly like that Adobe is outsourcing as I would prefer they kept jobs in the United States, but fundamentally I can’t blame them for it. Outsourcing is a cheaper way of doing things and I can understand how a company that grossed $3.58 billion in 2008 would need to save money where it can. However, speaking to someone with an Indian accent — as well as someone from India speaking to someone with an American accent — can cause some serious communication barriers. Additionally, for the level of service we received, I want to say that Adobe’s India employees are so far removed from the company that the quality of service has suffered. Of course that assumes that this isn’t all intentional on Adobe’s part.

First Call
Laura calls customer service and explains the issue she’s having. The woman says, “Open CS4, click on the ‘Help’ menu and select ‘Deactivate…’.” Laura says, “No, the computer was stolen, I can’t do that.” The woman replies, “Open CS4, click on the ‘Help’ menu and select ‘Deactivate…’.” — “No. Do you understand that the computer was stolen!?” — “Open CS4, click on the ‘Help’ menu and select ‘Deactivate…’.” — “F***!!!”

Second Call
Laura calls customer service and explains the issue she’s having, hoping that this customer service representative will be a bit more competent, sure she just got a bad apple. After explaining the issue, she is told that the CS4 has been deactivated on the other computer and everything is gravy. Great. Laura asks for the woman’s name so that she can have some record of her conversation. “Nancy.” — “Okay… do you have an employee id number? Or is there a confirmation number for this call? Anything?” Nothing. She hangs up. Opens up CS4 on her laptop, and the issue still exists. — “F***!!!” — to our knowledge the woman flat out lied to us and in fact did absolutely nothing but put Laura on hold.

We wait a day.

Third Call
Laura calls customer service and talks to the first person that appeared to be of any use. She explains the issue, again. The customer service agent, Enrique, takes down much of her information to confirm her account and in the end says she’ll have to call back tomorrow because their “Activation Queue” is down he is unable to deactivate the installation of the other computer(s). At this point Laura insists on speaking to Enrique’s manager, which he resists. Finally she is placed on hold for a considerable amount of time until she gets the manager. The manger explains that the “Activation Queue” is down and she needs to call back tomorrow. Laura asks again for names or call numbers and is told that the customer service representatives are not allowed to give out their information for their own protection. Keep in mind they are in India. If they need to protect themselves from people getting upset enough to fly across the globe, they’ve got some serious problems. She gets no customer ids, no call numbers. Nothing. She asks to speak to the manager’s manger. No such thing. The line stops there.

Meanwhile…
…at Analog Interactive, my boss Shawn Sheely has been dealing with my installations of CS3 and CS4. Luckily, my CS4 had only been installed on one other computer (the one that was stolen) and so it activated fine. However, my CS3 had been on two machines previously — same story as Laura except I had a pixel out on my monitor instead of having the graphics card fail — Go Apple! Either way, Shawn had to call and deal with Adobe to sort out both copies, first so we could get CS3 working, and second to avoid future trouble with our copy of CS4. Shawn decided to call Technical Support instead of Customer Support. He called, talked to someone in India, and had the issue resolved almost immediately. Note, he made this call within two hours of Laura being told the “Activation Queue” was down and to call the next day.

Fourth Call
Laura now calls Technical Support. They add another activation to the account. CS4 runs fine. They give her a case number for the call. She also gets an email regarding the call with the case number. Everything is dandy.

WTF!?!?!
Adobe is a not a fortune 500 company, it only ranks 601. Even with such a low standing in the realm of the largest corporations in the world, I expected more form Adobe. I have been so utterly disappointed at this point that there is no possible way I will be able to look at Adobe the same. I thought they were one of the “good” corporate giants. Turns out I was wrong. Their customer service department purposefully gave us the run around three out of three times. If they actually knew how to do their job they simply could have told us to call Tech Support. How f***ing hard is that!? Why couldn’t we get a case number or an employee number for the customer service calls? Either Adobe has no idea how shitty their customer service is or they are promoting the behavior. It’s just bullshit.

Continued Ranting…
I hate that we, as a society, keep falling to the lowest common denominator like this. I would think, that a company in Adobe’s shoes, with such a huge dominance over a market, with such a high end product, would take that profit and continue to develop the best product possible with the best customer service available. You would think after spending $1799 on a software suite you would be treated like f***ing gold. Instead you have these huge corporate giants like Adobe or Microsoft or Apple, just to name a few, that seem to have a breaking point for integrity. Microsoft started out as amazingly innovative company that was the best at what they did; and slowly but ever surely they ended up taking nearly a decade to develop a worthless piece of shit like Windows Vista. As for Apple, I generally believe they have a superior product with, relatively, superior customer service. However, with their growing success I truly feel that Apple is starting to slip down the same path — specifically the bullshit that has come with the success of the iPhone and their affiliation with AT&T.

The best customer service I have ever received was from the Zippo Manufacturing Company. Zippo has made a vastly superior product with the most outstanding customer service I have ever come across in the course of my life. Their lighters are great. So great in fact that Zippo stands by the quality of a Zippo and will replace any Zippo if it breaks or fails for any reason, ever. I used to have a Zippo; I lost it to an airport post 9/11 — don’t get me started on the bullshit of Airport Security. At one point the hinge of the Zippo broke. There’s a pin that holds the top of the Zippo on, and that pin broke. I could have sent the Zippo in and had them repair it, but since it had some sentimental value, I didn’t want to send it through the mail. Instead, I emailed Zippo, telling them I just needed the pin and could probably fix it myself. Immediately, no questions asked, Zippo mailed me a package with two replacement pins, a few extra flints, some info on Zippo, and a prepaid envelope that I could use if I wished to send in the Zippo to be repaired. They also sent a keychain what was an encased penny, and the casing was engraved. It said: “The penny you’ll never spend to replace a Zippo.” They didn’t ask for any proof that I owned the Zippo, they didn’t care. To them I was a customer that needed service and they provided the absolute best service possible, going above and beyond my requests, and it didn’t cost me a thing. I bought the Zippo for $20 and it got me the best customer service in the world. Why should I expect any less from anything else I buy, especially if it costs nearly 100 times as much? I do wonder though, what would Zippo be like if 90% of all people who owned lighters only bought Zippo’s. Would Zippo still have the same level of integrity? One would hope so, but based on experience, I wouldn’t bet on it.