Archive for ‘Linux’ Category

Fix Ctrl-Alt-Backspace problem with Ubuntu 9.10+

datePosted on 13:58, October 31st, 2009 by Many Ayromlou

Downloaded and installed 9.10 yesterday and what do you know, someone decided to take away Ctrl-Alt-Backspace — or what I call “Three Finger Salute for Linux”. Whhhaaattt!!!!

How the heck are you supposed to kill and restart X without that…..A coworker suggested Alt-PrintScreen-K, but that just restarts GDM, not really useful when X decides to go south. Damit!!
The reason given on Ubuntu wiki is that “This is due to the fact that DontZap is no longer an option in the X server and has become an option in XKB instead.”
Well, fear not, whoever disabled it also created a easy way to reenable it again. Here is what you do:
  • In Gnome (Ubuntu):

    * Get to the System->Preferences->Keyboard menu.
    * Select the "Layouts" tab and click on the "Layout Options" button.
    * Then select "Key sequence to kill the X server" and enable "Control + Alt + Backspace".
  • In KDE (Kubuntu):
    * Launch "systemsettings"
    * Select "Regional & Language".
    * Select "Keyboard Layout".
    * Click on "Enable keyboard layouts" (in the Layout tab).
    * Select the "Advanced" tab. Then select "Key sequence to kill the X server" and enable "Control + Alt + Backspace".
  • Using Command-Line:
    You can type the following command to enable Zapping immediately.

    setxkbmap -option terminate:ctrl_alt_bksp

    If you're happy with the new behaviour you can add that command to your ~/.xinitrc in order to make the change permanent.
  • Using HAL:
    You can add the following line in /usr/share/hal/fdi/policy/10osvendor/10-x11-input.fdi (inside the <match key="info.capabilities" contains="input.keys"> section):

    <merge key="input.xkb.options" type="string">terminate:ctrl_alt_bksp</merge>

gksudo: Or how this old dog learned new tricks :-)

datePosted on 12:19, September 28th, 2009 by Many Ayromlou

Okay if you know about gksudo, fine. I just found out about it a little while back when I was trying to run ethereal. You see under Ubuntu (and a lot of other Linux distros) the concept of root user has been removed. There is no root (well there is, but you can’t access it), unless you specifically modify your system to activate it. That’s fine (most of the time), since you can use sudo to accomplish almost anything as the administrator. One thing that doesn’t work properly are the graphical applications that need root access. So here is where gksudo comes to rescue. In the case of ethereal I would issue the following command to get it to prompt me for sudo and run as root user:
gksudo ethereal
So next time you get tempted to open up that root account on your Ubuntu install, don’t, use gksudo and get those gui apps running as root.

How to change the default command line text editor in Ubuntu….

datePosted on 12:10, September 28th, 2009 by Many Ayromlou

I love Ubuntu, but there is one thing that really bugs the hell out of me. The default configured editor in Ubuntu is nano, a Pico clone. I hate Pico, therefor I hate nano :-). So how would you go about fixing this and changing the default editor to vi (or vim):

  1. Issue the following command: sudo update-alternatives --config editor
  2. Enter the superuser password when prompted.
  3. At the following screen choose the number beside the editor you want as default or alternatively just press Enter to keep the default the same.
    There are 3 alternatives which provide `editor'.

    Selection Alternative
    1 /usr/bin/vim.tiny
    2 /bin/ed
    *+ 3 /bin/nano

    Press enter to keep the default[*], or type selection number: 1
    Using '/usr/bin/vim.tiny' to provide 'editor'.

That’s it…..Have fun.

Title says it all…..head over to TechPosters (kinda slow right now) and snag your favourite cheat sheet/reference card. There are also more of this kinda stuff over at as well.

Apertus: Open Source DCinema……

datePosted on 16:22, August 7th, 2009 by Many Ayromlou

Yep, those crazy open source hackers over at have done it again. You thought the RED camera brought about a revolution in dcinema, well, you ain’t seen nothing yet. Apertus is using the Elphel 353, free software and open hardware camera. The Elphel Camera which this entire project is based on is basically an excellent security camera that can do some real magic. The camera uses an Aptina CMOS bayer-pattern sensor with an optical format of 1/2.5″ (5.70mm x 4.28mm) and a native resolution of 2592×1944 (5 Megapixels). It features a 12 bit ADC and supports: region of interest, on-chip binning and decimation. Aptina claims that the chip has 70db of dynamic range at full resolution and 76db when using 2×2 binning. The camera has a standard C-mount but ships with an adapter ring that allows to mount CS-lenses as well.

The recording resolution can be freely adjusted to anything starting from 16×16 to 2592×1944 in 16 pixel steps. This includes Apertus AMAX (2224×1251), Apertus CIMAX (2592×1120), 2K (2048 × 1536), Full HD (1920×1080), HD (1280×720) and of course all lower resolution SD formats like DV PAL, DV NTSC, etc.

Standard Resolution Record Mode max. FPS
Apertus AMAX 16:9 2224×1251 JP4 RAW 24
Apertus CIMAX 2.35:1 2592×1120 JP4 RAW 24.2
Full HD (1080p) 1920×1088 color 25.2
Full HD (1080p) 1920×1088 JP4 RAW 30.9
2K 2048×1088 color 23.9
2K 2048×1088 JP4 RAW 29.5
HD (720p) 1280×720 (2×2 binning) color 46.2
HD (720p) 1280×720 (2×2 binning) JP4 RAW 46.2
HD (720p) 1280×720 color 57.9
HD (720p) 1280×720 JP4 RAW 60
NTSC DV 640×480 color / JP4 RAW 126
NTSC DV 640×480 (3×3 binning) color / JP4 RAW 82
NTSC 16:9 854×480 color / JP4 RAW 110
PAL DV 720×576 color / JP4 RAW 100
PAL DV 720×576 (3×3 binning) color / JP4 RAW 66
PAL DV 16:9 1024×576 color / JP4 RAW 84

The lower the resolution the higher the maximal possible framerate. At the full sensor size (5 million pixels or 5 Megapixels) the maximal frame rate is 10 fps in normal color mode and 15 fps in JP4 RAW mode. JP4 achieves higher framerates in general as some camera internal calculations are skipped and need to be applied later in postproduction (like debayering/demosaicing).

The RAW recording mode in Apertus is called JP4 RAW. Because certain in-camera compression steps can be skipped JP4 RAW allows higher recording speed resulting in more fps. JP4 RAW requires postprocessing (DNG Converter) but in return offers the highest possible image quality.

The following connectors are available on the camera body:

  • SATA: Can be used to connect any external SATA device that is supported under Linux (external harddrives, raids, etc.)
  • Ethernet: 100MBit Network with POE (48V)
  • USB: USB 1.1 with 5V power supply
  • IDE: Used to connect internal HDD
  • RS232: Access to Console and debug output

The camera also supports the following recording media:

  • Optional internal IDE 1.8″ HDD
  • 2 internal CF Card Slots
  • external SATA connector to connect any SATA device (Linux support required)

And if that’s not enough for you there is a extra bonus that comes from the ability of the camera to shoot Full HD in portrait (upright) mode. Upright screens are basically 1080p screens mounted sideways (portrait mode). This type of mounting is becoming increasingly more popular for events, exhibitions and advertising. If you want to spare yourself the hassle of building a right to mount the camera 90 degrees rotated you can whip out your Apertus rig and just start recording. This will give you a 1088×1020 image that’s ready for portrait playback.

So after yesterdays rant, I went back and figured out how to install the Cacti monitoring software (OSS, Free) onto a Ubuntu 9.04 “Jaunty Jackalope” Desktop installation. This guide uses packages only, no compiling, no Makefiles or anything like that…..You should be able to just follow this and get a fully functioning Cacti installation in about 30 minutes. Here are the steps:

  1. install ubuntu 9.04 (“Jaunty Jackalope“) Desktop Edition on your machine
  2. Login, open a Shell window and install ubuntu LAMP (Linux/Apache/MySQL/PHP) server stack on your machine
    “sudo tasksel install lamp-server”.
    Note: Make sure you remember the password for “root” user in mysql Database, write it down somewhere, we will need it later on.
  3. Get a superuser shell started since it will make for less typing.
    “sudo -i”
    followed by your password. Be carefull from now on, you’re ROOT and can literally destroy your system if you issue the wrong command. Follow along by typing the commands in the rest of this document and answering the prompts where appropriate.
  4. Issue:
    “apt-get install rrdtool snmp php5-snmp php5 php5-gd”
    This will get all of the prereqs installed on your system. Answer “yes” when prompted for additional packages. 
  5. Issue:
    “apt-get install cacti-cactid”
    This will get cacti and cacti server installed. Again answer “yes” when prompted for additional packages.
  6. You’ll be presented with a bunch of ANSI screens that ask for information or give you choices to configure “libphp-adodb” package. Follow as per below:
    • Click “Okay” on php.ini update path (screen 1).
    • Choose “Apache 2” from the pull down on next screen (screen 2).
    • Click “Okay” on cacti and spine configuration screen (screen 3).
    • At this point some config scripts will run and you’ll see a bunch on jiberish on the screen. Let it go, don’t touch nothing.
    • Click “yes” on the dbconfig-common screen and provide the password from step 2. (above) for the mysql “root” user (screen 4).
    • Now you’re prompted to choose a password for a new mysql user known as “cacti”. I used the same password as “root” user since my system is single user only. You will need to confirm the password on the next screen (screen 5,6).
    • Almost there……..
  7. Now the hard part is over. Start your browser and point it at http://localhost/cacti — assuming you’re running the browser on the cacti machine — or the appropriate IP address instead of localhost.
  8. Click “Next” on the first screen (might want to read it too).
  9. Select “New Install” on screen 2 and Click “Next”
  10. On the next screen (Path Check screen) make sure everything is found and make 100% sure to select “RRDTool 1.2.x” from the RRDTool utility version pull down. Click “Finish” when you’re done.
  11. You’ll see the login screen. Use Username “admin” and Password “admin” to login. On the next screen you’re forced to change the password for user admin. This is a good thing. Change the password to something complicated and easy to remember (does that exist?). Click “Save”.
  12. Make sure under Configuration Settings/Paths that “Spine Poller file path” is correctly set to “/usr/sbin/spine”, and its found.
  13. Make sure under Configuration Settings/Poller you select “Poller type” and set it to “spine” and Click “Save”. You’re done……Please RTFM for more Cacti info (or come back here and you might potentially find another episode of my ramblings). Have Fun!!

I was looking for a fast small (read: mini-ITX) mobo that had enough power to drive 1080P monitor/panel and I came across Zotac IonITX-A-U board. According to manufacturer’s website:

The mini-ITX form factor ZOTAC® ION combines a high-performance NVIDIA® ION graphics processor with a power-efficient Intel® Atom processor for the ultimate eco-friendly platform that has no troubles handling regular web browsing, e-mail, & productivity and HD video playback tasks.

NVIDIA® PureVideo HD technology harnesses the power of the ION’s 16 high-speed stream processors for high-definition Blu-ray playback capabilities. PureVideo HD technology decodes HD video formats and enhances standard-definition videos with the ION GPU for flawless HD and superior SD video playback.

Sounds and looks very nice and capable. I guess I’d have to pick one up and give it a whirl. Here are the quick tech specs:

  • Onboard Video: GeForce 9400M
  • Onboard Audio: 5.1
  • Model: IONITX-A
  • CPU Socket: 441-ball
  • FSB: 533 MHz
  • Dimensions: 6.7″ x 6.7″
  • Chipset: MCP7A-ION
  • Memory Type: DDR2 667/800
  • Package Contents: 3 SATA cable 1 SATA power cable 1 WiFi antenna 1 WiFi bracket
  • Memory Slots: 2×240pin
  • SATA: 3 + 1 eSATA
  • PCI Express x1: 1 (mini)
  • Form Factor: Mini ITX
  • Video Ports: D-Sub + DVI + HDMI
  • USB: 10 (6 on back panel, 4 via pin header)
  • Power Connector: 24 Pin – 90 Watt PSU included
  • PS/2: 1
  • RAID: 0/1/0+1 has a nice review and sells the board aswell.

Beagleboard is your friend…..

datePosted on 16:52, May 24th, 2009 by Many Ayromlou

The USB-powered Beagle Board is a low-cost, fan-less single board computer utilizing Texas Instruments’ OMAP3530 application processor that unleashes laptop-like performance and expansion without the bulk, expense, or noise of typical desktop machines.

Beagle Board is based on an OMAP3530 application processor featuring an ARM® Cortex™-A8 running at up to 600MHz and delivering over 1,200 Dhrystone MIPS of performance via superscalar operation with highly accurate branch prediction and 256KB of L2 cache. Focal to Beagle Board experience is the high-speed USB 2.0 on-the-go (OTG) port that can be utilized to provide power to the board or to deliver highly flexible expansion. Standard PC peripherals can be connected to Beagle Board using the USB with a mini-A to standard-A cable adapter, DVI-D using an HDMI to DVI-D adapter, or through the MMC/SD/SDIO connector enabling a complete desktop experience. The picture below should give you a good idea of it’s size beside the tiny Pico Projector.

Hardware Specifications are as follows:

  • OMAP3530 applications processor featuring the ARM® Cortex™-A8
  • 128MB low-power DDR RAM
  • 256MB NAND flash
  • USB 2.0 high-speed on-the-go port
  • DVI-D output
  • NTSC/PAL TV via S-Video output
  • 6-in-one 8-bit MMC+/SD/SDIO connection
  • Stereo audio in/output
  • JTAG header
  • I2S, I2S, SPI, MMC/SD expansion header
  • Power via USB or alternate jack

Looks very nice and complete, a good alternative to Gumstix Avero stuff we covered earlier . And did I mention it’s only $149. Perfect for your next project.

Could this be the Google Tablet…..

datePosted on 16:25, May 24th, 2009 by Many Ayromlou

Not too sure, but the Zoom OMAP34x-II Mobile Development Platform looks too “finished/flashy” to be a Mobile Development Platform (MDP). I guess time will tell……For now we can all drool over the pics….and btw, if you have $1150, you can beat the crowd and own one today.

Out of the box features of the Zoom OMAP34x-II MDP :

  • 4.1″ WVGA multi-touch display with a QWERTY keypad in a landscape, handheld form factor
  • High performance OMAP3430 applications processor that supports up to 720p HD video encode/decode
  • Support for popular leading mobile operating systems, including Android Mobile Platform, Linux, LiMo, Symbian OS and Microsoft(r) Windows(r) Mobile
  • Wireless connectivity technology from TI, including WiLinkTM 6.0 (WL1271), a single chip with Wi-Fi(r), Bluetooth(r) and FM functionality; and NaviLinkTM GPS functionality
  • 8-megapixel camera sensor
  • Optional 3G modem solution, as well as flexibility to support any third party modem through an extension card
  • An optional DLP Pico projection module will be available, taking mobile content from “tiny screen” viewing to a shareable “big screen” format
The DLP Pico projector is a interesting critter. It is literally tiny. The above picture gives you an idea of it’s size compared to the power adapter. You can pick one up for about $350 at ‘s online store. The tech specs for this little guy are:

  • Resolution: 0.17-inch HVGA (320×480 device creating a 640×480 projection)
  • Brightness: 7 lumens
  • Contrast ratio: 1000:1
  • Throw ratio: 1.89
  • Processor: MSP430 microcontroller with download port
  • Light source: Solid-state 3 LED
  • Video input: DVI-D 888RGB, VGA 60 Hz
  • Dimensions: 44.8 x 67.4 x 14.2 mm3

Surveyor SRV-1 Blackfin Robot

datePosted on 15:51, May 24th, 2009 by Many Ayromlou

Wow, this little guy is cool. Check out Surveyor Corporation’s Open Source Wireless Mobile Robot . Very neat little package for just $475. While there, you might also want to check out YARB 1.0 (Yet Another Robotic Blimp) robot, also pretty neat. Here is a bit of a description according to their site:

Designed for research, education, and exploration, Surveyor’s SRV-1 internet-controlled robot integrates a 1000MIPS 500MHz Analog Devices Blackfin BF537 processor, a digital video camera with resolution from 160×128 to 1280×1024 pixels, laser pointer ranging, and WLAN 802.11b/g networking on a quad-motor tracked mobile robotic base.

Operating as a remotely-controlled webcam or a self-navigating autonomous robot, the SRV-1 can run onboard interpreted C programs or user-modified firmware, or be remotely managed from a Windows, Mac OS/X or Linux base station with Python or Java-based console software. The Java-based console software includes a built-in web server to monitor and control the SRV-1 via a web browser from anywhere in the world, as well as archive video feeds on demand or on a scheduled basis. Additional software support for the SRV-1 is also available by way of Microsoft Robotics Studio, Cyberbotic’s Webots, and RoboRealm machine vision software.


  • Open Source design with full access to source code (GPL) and schematics
  • Robot is fully programmable for autonomous operation
  • Extensive software support through 3rd party applications
  • Teleoperate mode to drive robot around via console software or remotely via web browser
  • Host software has built-in web server and video archiving
  • Robot can run programs written in interpreted C and stored in onboard Flash
  • Wireless remote control or viewing up to 100m indoors and 1000m outdoors (line of sight)
  • Robot can be controlled from a terminal/console for easy testing
  • Linux 2.6 support as well as “bare metal” programming with GNU bfin-elf-gcc


  • Processor: 1000mips 500MHz Analog Devices Blackfin BF537, 32MB SDRAM, 4MB Flash, JTAG
  • Camera: Omnivision OV9655 1.3 megapixel 160×128 to 1280×1024 resolution
  • Robot Radio: Lantronix Matchport 802.11b/g WiFi
  • Range: 100m indoors, 1000m line-of-site
  • Sensors: 2 laser pointers for ranging
  • Drive: Tank-style treads with differential drive via four precision DC gearmotors (100:1 gear reduction)
  • Speed: 20cm – 40cm per second (approx 1 foot/sec or .5 mile/hour)
  • Chassis: Machined Aluminum
  • Dimensions: 120mm long x 100mm wide x 80mm tall (5″ x 4″ x 3″)
  • Weight: 360gm (12oz)
  • Power: 7.4V 2000mAH Li-poly battery pack – 4+ hours per charge
  • Charger: 100-240VAC 50/60Hz (US plug)


  • Robot Firmware: easily updated, written in C language under GPL Open Source, compiled with GNU bfin-elf-gcc and bfin-uclinux-gcc toolchains
  • Onboard User Programming: interpreter for C language with special robot-specific commands are provided for running user programs from onboard Flash memory
  • Development Tools: GNU toolchains via
  • Console Software: Java based application, runs on Windows, MAC, Linux. WebcamSat web server module built into console software, allows multiple simultaneous remote viewers via Internet
  • Robot Control Protocol: Published here. Easily used from other applications
  • Third-party Software Support:
    • RoboRealm – – The SRV-1 can now be directly controlled from RoboRealm, a very popular Windows-based machine vision software package for robots. The RoboRealm extensions for SRV-1 allow creation of scripts that combine image processing on live video feeds from the robot, e.g. color filtering, blob detection/tracking, edge detection/outlining and feature extraction, with decision processing and robot motion control, making it easy to create behaviors such as object location and tracking, obstacle avoidance, motion detection, notification, etc, with a web interface, and control can be scripted from C/C++, Python, Java, C#, Lisp, Visual Basic, WScript and COM through the RoboRealm API.
    • Microsoft Robotics Studio – – Drivers for the SRV-1 in Microsoft Robotics Studio are now available. MSRS is a Windows-based environment for academic, hobbyist and commercial developers to create robotics applications across a wide variety of hardware. Key features and benefits include: end-to-end robotics development platform, lightweight services-oriented runtime, and a scalable / extensible platform.
Yeah, now I know what I’ll be doing with my next 500 bucks :-).