My Axiomtek PICO820 Motherboard BIOS is overriding my Xorg!

Using applications, configuring, problems
Message
Author
starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

My Axiomtek PICO820 Motherboard BIOS is overriding my Xorg!

#1 Post by starhawk »

OK. I have an Axiomtek (brand) PICO820 Pico-ITX motherboard.

Well, OK, it's a rebrand by iGoLogic. They call it an i2820. All they did (literally) was put a sticker over Axiomtek's markings. I'm not even kidding. (It's pretty sad IMO when your idea of upstaging the competition is to sell their product with your logo on it.)

I'm running Upup Precise with kernel 3.8.2 on this board right now -- I really wanted to use Slacko 55, but there's a known bug in the modesetting driver for that version of Puppy that means no video for me. (Why modesetting? Well, this board has the GMA500 graphics solution in it from Wintel.)

It took me awhile but I figured out why HardInfo was reporting my video resolution as 1024x768 when I'd quite clearly gone into xorgwizard and set it at 1440x900, as (actually somewhat politely) requested by the attached monitor.

It's being set by the BIOS.

Turns out there's an option buried deep in the BIOS Setup screen that basically gives you three options with this board, unless you go out and buy a branded LCD panel (not the monitor, the panel inside of it!) and hook it up right. Those three options are: 640x480, 800x600, 1024x768.

They actually override whatever Xorg wants to do >.< Of course there's exactly one BIOS binary in existence and it's the one that the board has because it's the original. Axiomtek has never released an updated BIOS for this board -- and the date of the "current" BIOS binary is sometime in 2009!

Worth noting, which I will mention to Axiomtek when I call them tomorrow to complain, is that I have a Commell "miniboard" the size of a floppy drive, and it has a 600MHz Ultra-Low-Voltage Celeron M CPU on it. It's at least five years older than this board. Why does that matter? Because the Commell board's built in graphics go a LOT higher than 1024x768. (The fact that I could never get those graphics to /work/ for me, is beside the point and I really don't think Axiomtek needs to know about it.)

I'm actually not posting this just to rant. I'd like to know something:

Is there ANY Boot: prompt option that I could invoke to tell the BIOS that "quite frankly I don't give a damn" what it wants to do, so that I can have my LCD displaying at 1440x900 without further interference? Something to the effect of "vga=nobios"? That would be *incredibly* helpful...

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#2 Post by starhawk »

Thought this'd be a simple yes/no question, not a thread to ignore.

Advice would be helpful.

jafadmin
Posts: 1249
Joined: Thu 19 Mar 2009, 15:10

#3 Post by jafadmin »

oops. according to this it should work ..

1 x VGA Port, supports up to 2048 x 1536

http://www.e-itx.com/pico820vga-z510.html

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#4 Post by starhawk »

They left out "...with Windows and the correct driver". :(

A phone call to Axiomtek netted me a BIOS version 1.04 which had not been pushed to the website.

Now it's up to 1366x768. Not /quite/ good enough.

Does anyone here know if the modesetting or fbdev drivers could be tweaked to support higher resolutions than the BIOS would like to permit? fbdev works but is limited here to 640x480 (yuk!), while modesetting is the driver I've been using.

scsijon
Posts: 1596
Joined: Thu 24 May 2007, 03:59
Location: the australian mallee
Contact:

#5 Post by scsijon »

There are packages that can overide the bios for video IN MOST CASES, I sugest you ask again for help in the precise bugs thread as I am not using it so can't help you.

Only thing I worry about with an overbranded motherboard is that they can be either the ones that have not passed testing in manufacture and have been sold on, can be just an old motherboard design>manufacture version, or are the end-of-production-line boards. The first are a worry, the later are cheap if they pass all their tests.

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#6 Post by starhawk »

I'll post a summary and link in the Upup Precise thread.

Axiomtek is still producing this board -- they don't deal with end-users so much as full retail plus shipping, but I was told that, for the price I paid, I made out like a bandit.

What I was told was that the board alone was worth (to them) upwards of us$400, being a Pico-ITX board and an industrial-spec (more durable, higher temp ratings on the components, etc.) model at that.

I purchased this thing on eBay for us$85. A friend paypal'd me the money as an early birthday present. I was told in no uncertain terms that Axiomtek would have never ever ever authorized a sale for the package I got, at the price I got, in a hundred million years.

The box I received contained the motherboard itself, power supply, USB dongle cable (4 ports), and the SATA power and data cables. Of note, the only non-proprietary item in that bunch was the SATA data cable -- everything else was odd. The power supply is a 4pin DIN model, but it's 5v only. The SATA power cable uses a board-side connector that one would expect to see on the battery for a cordless office telephone!

Far more annoyingly -- standard pitch (spacing, center-of-pin to center-of-pin) for pin headers, as used for the lights and switches and ports and such, is 2.54mm / 0.1". That's fine. The annoying part is that Axiomtek completely ignored that standard. On this board there is not a single pin header that isn't 2mm pitch. ARGH. (I've since developed a fix for the header issue, although it took some figuring -- I'll be hooking up my own lights and switches so leaded connectors with wire ends actually works fine for me -- thank you DigiKey for stocking female 2mm headers when nobody else does!)

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#7 Post by LateAdopter »

Hello Starhawk

The answer is yes: xrandr

I assume it's the gpu bios that is telling xorg what modelines it can use. If you tell xorg to use a mode that is not defined, I expect it will ignore the instruction.

With xrandr you define the modeline, then which output it is for, then set the output to the mode you have defined.

You can do this via the command prompt as an experiment. If you get it to work you can make it persistent various ways.

This is one that I made earlier, for example:

Code: Select all

#!/bin/sh

xrandr --newmode "1600x1200_625" 135.85 1600 1648 1680 1760 1200 1203 1207 1235 +HSync +VSync
xrandr --addmode DVI-0 1600x1200_625
xrandr --output DVI-0 --mode 1600x1200_625
This was used to create a mode that would run the monitor at 62.5Hz, which is non-standard but within my monitors tolerance.

You could find the parameters that your display uses and make a similar script to try it.

If you tell xorg what to do using this method it will do it even if the result a black screen or smoke from your monitor.

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#8 Post by starhawk »

OK, this is very helpful.

Although... the GPU is part of the motherboard chipset, so the GPU BIOS and the motherboard BIOS are one and the same.

I'll try this xrandr thing in a few minutes. Just gotta look up the manpage so I know (at least some of) what I'm doing.

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#9 Post by LateAdopter »

There are useful guides to setting resolution in the Ubuntu and Arch wikis.
Also the mythtv site has a database of modelines.

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#10 Post by starhawk »

Hmmm... I don't think I'm doing this right.

Screenshot (with camera, not software) --> http://i.imgur.com/gJzb9bK.jpg

Yeah, that's an oops.

Help?!

Oh, LateAdopter: can you link me to that modeline database? That might just be a little helpful here... ;)

EDIT: found the database. Tried the one modeline given. Didn't help. (Also link is now clickable.)

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#11 Post by LateAdopter »

I guess you are connected via VGA and not DVI/HDMI.

It looks as though the scaler chip in your monitor doesn't like the timings you are giving it.

When using the analogue input, monitors provide various tweaks for stabilising the image, but I haven't used the VGA connection in 15 years, so I can't advise.

What is the modeline you have used?

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#12 Post by starhawk »

The mythtv one --

ModeLine "1440x900" 108.84 1440 1472 1880 1912 900 918 927 946 +HSync +VSync

One from a website, here --> http://www.arunviswanathan.com/node/53

Modeline "1440x900_59.90" 106.29 1440 1520 1672 1904 900 901 904 932 -HSync +Vsync

...and a third one, similar to the 2nd, which I don't have because I overwrote it with the first, after generating it as suggested by the site at the link in this post -- I put in 1440 900 60.00 to gtf and it spat out a modeline for me.

They all did the same thing. Maybe I need to go for a 70Hz or 75Hz refresh rate?

One thing worth mentioning -- I don't think the BIOS is doing its task right, either -- anything larger than 1024x768 is displaying a screen area larger than the monitor, as if it were using the timings for 1024x768 and just making the screen bigger. So the bottom and right sides of the screen are off the screen. Very odd.

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#13 Post by LateAdopter »

60Hz works with everything, so its a safer option. Some questions:

- You said your new BIOS had a 1366x768 mode, did that work properly?

- If you enter xrandr on the command line, what does it say on the first line for Screen 0? On my PC the maximum size varies with the drivers. Screen 0 is not the monitor, it's like the canvas size which can be spread across several monitors.

With the Xorg Radeon driver mine says 8192x8192
With the AMD Catalyst driver it says 1600x1600

So with the AMD driver it would probably be necessary to increase the size first, if I wanted to specify a higher resolution. It depends on your driver.

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#14 Post by starhawk »

"AMD driver"...? Driver I'm using is "modesetting" -- I've got an Intel GMA500 "solution".

The 1366x768 screen does not work properly. As described, the bottom and right sides of the screen are outside the visible edge of the monitor and therefore do not display.

I'll check what xrandr has to say about Screen 0 in a few.

Here's the website page for the monitor I'm using. The "Specs" tab has frequency ranges that you might find useful. Linky --> http://www1.viewsonic.com/products/va1721wmb.htm

EDIT: linky clicky now. Also, here's xrandr output after the shell script does its thing --

Code: Select all

Screen 0: minimum 320x200, current 1440x900, maximum 2048x2048
LVDS-0 connected 1024x768+0+0 0mm x 0mm
  1024x768     60.0*+
VGA-0 connected 1440x900+0+0 0mm x 0mm
  1024x768        60.0
  800x600          60.3          56.2
  848x480          60.0
  640x480          59.9
1440x900_60.00   60.2*
#
Hope that helps.

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#15 Post by LateAdopter »

The output or xrandr says it has a LVDS display connected and its the default.

So it thinks it's primarily a laptop with a built-in display. I assume it doesn't actually have this.

There are plenty of posts in the forum about the problem of getting a laptop to display a different resolution on an external monitor but I don't have a laptop so I don't know what the normal solution is.

Two possibilities: can you disable the LVDS display in the BIOS or you could set the LVDS to 1440x900, the same as the VGA.

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#16 Post by starhawk »

LVDS is an option with this board, but it's a little smarter than that.

Current active display is actually VGA-0.

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#17 Post by LateAdopter »

The xrandr output says that the LVDS device is connected and it has *+ next to it, so I think it is in use.

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#18 Post by starhawk »

That's odd, because:

xrandr --output VGA-0 --mode [whatever]

...changes the monitor. I don't think the same will be true of LVDS-0.

LateAdopter
Posts: 361
Joined: Fri 27 May 2011, 17:21
Location: Reading UK

#19 Post by LateAdopter »

That's right Xorg has both the LVDS and the VGA active, it's like a laptop with the built in screen active and an external monitor connected.

They are both displaying screen-0 starting in the top left corner (0,0)

Xorg only offered VGA resolutions less than or equal to the LVDS resolution. This may be a limitation of the hardware.

Screen-0 is 2048x2048 so it should be possible to use --addmode to give the same 1440x900 resolution to both outputs and then set both outputs to that mode.

I'm only speculating since I don't know the capabilities of the hardware.

npierce
Posts: 858
Joined: Tue 29 Dec 2009, 01:40

#20 Post by npierce »

If you are unable to add a 1440x900 mode for LVDS-0, as LateAdopter just suggested, I would recommend LateAdopter's earlier suggestion:
LateAdopter wrote:. . . disable the LVDS display in the BIOS . . .
If neither work, this might be worth a try:

Code: Select all

xrandr --output LVDS-0 --off

Post Reply