20091204

DNS forgery by UPC

I made a typo when connecting a fresly installed Filezilla client to my domain at staesit.nl

This is what the Filezilla log said:
Status: Resolving domain staesit.nll
Status: Connecting with 67.63.50.51:21...
The TLD nll doesn't even exist! Oh crap whats this?

How then does filezilla end up with to this IP? Hostname of said IP resolves as:
upcnlassist-c.infospace.com
Aha! My (one week lived) provider UPC.nl is in on it.

My provider is doing something i don't want it to. Seems like it assumes identity of staesit.nll. Stuff like this just makes me mad and sad at the same time. :( DNS forgery should be banned.

I won´t even start on the searchpage that now pops up on misspelled domains.. wait. Actually i will exactly that as it seems like this is actually causing said behavior.

> ping zoek.upc.nl
Pinging assist.infospace.com [67.63.50.57] with 32 bytes of data:
Reply from 67.63.50.57: bytes=32 time=98ms TTL=243

20091124

Archive backup periodicly

I'm not into typing much about such simple subjects, but i just had to share this old batch code. Turns out there is no quick and neat solution available for moving your daily backups to separate folders. So in short and without further adieu;

Backups are important. All Staes IT web servers submit backups on a regular basis to secure offsite locations. These should run automated and reliable, without much human intervention.

Problem
These backup server receives backups via FTP each day. I don't want the next day's backup to overwrite the current ones, so have to archive them in a daily manner. It also looks nice when browsing the backups folder. Keeps everything nice and organized.

I should run a script every morning to archive those nightly backups to do the job for me.

Solution
This scripts puts all files a folder named "bu_YYYYMMDD_auto". Run this daily when the ftp backups are finished.

Since i've realized this script over 7 years ago people keep asking me how to do such a thing with batch files. So i figured i should just put it on the internet for all to see. Sorry for the delay, i only recently started this blog thing.

Back then i created two batch files to suit my needs at the time. One named "bu_shift.bat" checks if files exist with the correct extention, then creates a folder using the date, and moves all files in here. It outputs the results to the console. The other file named "bu_shift_keeplog.bat" just calls the above and puts the results in a daily logfile. Files are listed below.

It assumes the incomming files are at ./bu_ftp_up/*.gz and you could easily change that yourself.

Also keep in mind better solutions exist. This one will work out of the box and simply does its job - thats the only reason i present it here.

bu_shift.bat
@echo off

REM Run this file as a cronjob, some time after the FTP has delivered a backup.
REM All folders are appended with _auto to easily distinguish them from manual backups.

echo.
echo ****************************************************
echo * Start backup shift:
echo.
if not exist ".\bu_ftp_up\*.gz" GOTO NoFiles


for /F "tokens=2-4 delims=/- " %%A in ('date/T') do set var=%%C%%B%%A

echo * Creating folder bu_%var%_auto:
md "bu_%var%_auto"
echo.
echo * Moving files to folder:
move ".\bu_ftp_up\*.*" ".\bu_%var%_auto\"
echo.
GOTO End


:NoFiles
echo * Stopped: found no files in "bu_ftp_up".
echo.


:End
echo * End of batch
echo ****************************************************
echo.
Above neatly outputs results in the console.
When running this as a cronjob use below file to log this to aptly named files.

bu_shift_keeplog.bat
@echo off
for /F "tokens=2-4 delims=/- " %%A in ('date/T') do set logd=%%C%%B

set logfile=bu_shift_log_%logd%.txt

echo. >> %logfile%
echo bu_shift_keeplog.bat op %date%, om %time% >> %logfile%
.\bu_shift.bat >> %logfile%
echo. >> %logfile%
In Windows you can add this file as a cronjob via "Task Scheduler". This code has been in use for over five years on various Windows Server 2003 and 2008 environments, and continues to serve a purpose. Happy sharing!

PS - boy this Blogger editor is worth shit. Awfull code markup.

20091121

Human origin; robots!

I love science fiction, and one thing has stumbled me. Actually the lack of something. Not on one occasion have i seen what i´m about to elaborate on. And i´ll explain why i believe it is likely.

The closest i've ever seen this being used, is in Battlestar Galactica:
[SPOILER ALERT]
If you plan to watch Battlestar Galactica (BSG) stop reading now. What i aim at here is the vicous circle. The aliens are made by humans. These aliens retaliate and eradicate civilization, realize humans have something they don´t, emulate this, and in effect become the `new´ humans. Vicious circle ensues, the end. Oh and the story was interplanitary. This too relates to my point.

Now combine this with the Borg from Star Trek or the Replicators from Stargate:
  • The borg wants to gain perfection, and one way they do this is by assimilating everything there is to know. This often means destroying civilizations and using slaves for their greater good.
  • The replicators intended to defend their creator and in extent themselves, mostly by means of violence.

Both fictional species show similar behavior, but the Borg looks human, and the Replicators look like LEGO bricks.

My point
If you take all this, you get an entity (say some civilization, like humanity) that generates an entity (say some robots) in the quest for perfection. If this evolves enough, it wil most likely end up in a loop. Artifical humans basicly. Knowledge and evidence about this eventually gets lost (it might be still out there, don't get me wrong)

How we humans fit in
Be warned: i talk in generics, as there are a lot of variables here. Most of them don´t even matter in this context. We could stand on either side of the subject on this case. Actually, i beleive both.

In more detail
Now for some reason, assume some civilization gets to the point they figure out how to automate something. O wait, we've done that. The end result is a robot. In line of how we got so far, we (as humans) want to perfect this even more.

Assume we end up with or as (for all intents and purposes the same here) a artificial entity (or call it civilization). They will continue this trend, and seed out to the universe in the meanwhile. Some won't survive a catastrophe and crash on some meteor or planet. Dead.

Don´t get me wrong, i am fond of Darwin.
But one of the things we've seen so far is that nature has rather advanced designs. If you aren't inspired try to understand how every cell in your body has a copymachine and protein assembly line. Enough youtube video's on that subject. Also don´t forget that some cellular automation appears irreducible complex, meaning it we don´t have a model yet for how it may have evolved. There exist a ton of papers on this broad subject, but the video do a better job on explaining this.

I believe that a artificial entity ends up with what we call now bacteria, viruses and evolution all tied up with attaining the goals of said entity. Forget empathy, if it has to kill 90% of a population it will. It is a machine, it just does its job. Empathy is just some layer we humans made up in our brain chemistry to aid even better survival. All in line with the goals the machine is based on, and the rules of life itself ofcourse.

Full Circle
Imagine bacteria from the artificial entity got stranded on earth. Resume their goal. Eventually you end up with a smart entity, they make artificial perfection, this artificial perfection ends up much like we know nature today, and it is full circle.

There's much more to speculate with on this subject, but i'd rather leave you with the thought at hand. That and there´s the stuff that might put people off, its weird enough in this short form.

This train of thought should have a name. I suggest we call it Circolution, Loopolution, or something i've yet to come up with. Don't beleive evolution fits the subject at all, so suggestions are welcome.

What if? nothing... Consensus would be nice though.
If this was obvious concept long before you read this article, let me know. This will not lend itself for philosophy without diverging from the issue, nor bar talk. I feel rather alone on this subject.

Nature stems from robots?
It all seems so logical. Pun intended.

20091116

Last.FM app for Android

It really bugs me that the Last.FM app for Android is not available in the Netherlands. They should know better. There is a fix however:

So just download the apk file (fm.last.android.1.3.0.apk) at:
http://www.csmarshal.com/android/

Via:
http://www.last.fm/group/Last.fm+Android/shoutbox

Out.

20091104

Visual Studio and Resource.resx missing

To be more specific i had trouble building the Sample and Library Sources in C# from Forest Moon Productions. It concerns an API that i wanted to try out.

Errors
When opening the ArmSample project in Visual Studio 2008 Pro i was met with the following errors:
Warning 1 The custom tool 'ResXFileCodeGenerator' failed while processing the file 'Properties\Resources.resx'.
When then building in an attempt to run it anyhow it trows two errors:

Error 1 Metadata file 'C:\Documents and Settings\Staes\Desktop\InternetFiles\ForrestMoonProductions\AX12 sample and library sources in C#\AX12ArmSources\Projects\Joystick\Joystick\bin\Debug\Joystick.dll' could not be found AX12ArmSample
Error 2 Resource file "Properties\Resources.resx" cannot be found. Joystick
Warning 3 The custom tool 'ResXFileCodeGenerator' failed while processing the file 'Properties\Resources.resx'.
These files are not in the archive i downloaded. I reckoned the files got repacked and some are missing now or i use a unsuited IDE version, or i might have some misconfiguration on the Windows XP computer bursting anyway with all the installations of DirectX, DotNetFramework, runtimes, drivers, and whatnot.

Solution
Most google searches led me to irrelevant sites, and some suggested altering the .csproj files with Notepad. When i did that just more errors popped up, pulled out anything i got (even Bing.com) and was willing to  giveup, figured that a reboot might help and decided to emailed the author weither he saw the problem before.

Minutes later i tried this obvious and simple solution: removing the /Resource.resx files from the project. To be more specific those in AX12ArmSample and JoyStick sub projects. All other errors dissapeared.

Priming myself
Turns out i overlooked those files in the projectbrowser, and went searching for some deep rooted cause that didn´t exist. Its been to long since using Visual Studio, in the old days easy stuff like this didn't cost me 2 cups of caffeine to figure out. I wish i never stopped using it and should have used an easyer project to play catchup with on the IDE. (I'm trying to graph AX12 actuator outputs)

Its late. Time for a nap i guess. Oh crap .. damn caffeine!
Perhaps i´ll watch Primer again. On Android! Use the download link at Google Video while it lasts.

UPDATE 20091108:
I mailed Scott Ferguson about the missing files in his library, he fixed the download;
I added the missing files Resources.resx and Resources.Designer.cs to the Projects\Joystick\Joystick\Properties\ path in the AX12ArmSources.zip file:
http://www.forestmoon.com/Software/AX12ArmSample/AX12ArmSources.zip
Thanks for reporting the issue! Do let me know if you encounter further problems.

20091103

Daisy, Daisy

You either love or hate the movie 2001: A Space Odyssey. I recon that lovers love the `Daisy´ song by HAL, and haters couldn´t stand the low pace of the movie. Despite all differences, most might agree its more art than movie.

Even i can´t stand its low pace and am unable to watch it for more than 20 minutes. Ok to be fair; except that one time that i had to stay up at midnight, nothing else was on TV, saw it for the first time, and missed the first half hour. Good times, anyone feels like a philosopher at these hours. Either way i enjoyed watching it in 20 minute chunks whenever i felt like it.

Inspired by IBM
today i saw this article floating past (reffering to this Youtube video) where you hear a computervoice sing a song. All this IBM did in 1961. Some 6 years later it inspired its use in Stanley Kubricks' movie, and it is only now that i recognize how excelent it suits the movie plot.
"Daisy Daisy .. Give me your answer do .. I'm half crazy, all for the love of you .. "
HAL actually is communicating a message. It wants them to answer a question, and remarks that he is overprotecting (half crazy by love!) Dave. I feel stupid by only finding out now, seems i haven´t watched it thoroughly enough. Point is the computer-sung song is an excellent addition to the plot of 2001: A Space Odyssey in multiple ways.

FYI the description companying above video:
"Daisy Bell" was composed by Harry Dacre in 1892. In 1961, the IBM 7094 became the first computer to sing, singing the song Daisy Bell. Vocals were programmed by John Kelly and Carol Lockbaum and the accompaniment was programmed by Max Mathews. This performance was the inspiration for a similar scene in 2001: A Space Odyssey.
I should watch 2001 and 2010 again, and come to speak of it: Primer (2004) is a good science fiction movie. Its plot is mind boggling and intriguing. Avoid any spoilers (asides from the synopsis) if you plan to watch and enjoy it .

20091015

SATA2 backwards compatibility

I expected to have my SATA1 HDD's working properly on my SATA2 motherboard, but they didn't. For anyone of interest, here is the answer given by Shuttle support. The (two) problems i experienced are below, and seem directly related to the lack of legacy support. Not that it should support it, i just expected it to.  IMHO innovation shouldn´t be hold back by (over the top) legacy support.
Dear Shuttle customer,

As you wrote your HDDs have the old SATA-150 specification. Many old HDD
have trouble with new SATA-300 controller. Do you have any SATA-300 HDD
for test? First the BIOS have to recognize the HDD correctly.

After RAID config (that you did not do because your HDDs do not work)
the Windows installation asks for RAID driver. Later you can install
the Matrix Manager in Windows. Necessary for all RAID related driver
and software is the BIOS. The ICH10R has to switched to "RAID" or "AHCI"
mode. If the controller is set to IDE, the driver refuses the install.

The driver is an original Intel driver. Bugs are not known at present.

Please don't hesitate to contact us, if you have any other questions.

---
Best Regards
Shuttle Support

----------------------------------------------------------------------


barry***@****.nl schrieb:

Contact Information

Name: Barry Staes
Email: barry***@*******.nl
Location: Netherlands


Product Information

Model Name: SX58H7
System ID: sx58h700-B00-13 Serial Number: sx58h700******00044
BIOS: default
Purchased from: alternate.nl Purchased date: 2009/10/08


Configuration Information

Item Model Note
CPU model: Intel Core i7 920
Memory model: 6GB
HDD model: Kingston SSDNow V Series 64GB
Display Card model: ASUS
CD ROM model: Atapi IDE
Network Card model: -
OS model: Windows 7
Others: I want to use two Samsung 200GB (SATA150) drives in raid. These get recognized & work fine in any other system.


Problems Encountered or Other Notes
Two problems. For starters the system works fine with only SSD in various OS's, and i wanted to attach two HDD's in RAID0 (both Samsung 200GB SATA150) to get more storage.

Problem #1
I connected these but the bios doesn't mention them, windows doesn't see them.

So i tried changing the bios setting for the controller from IDE to RAID. After applying the system powers down abruptly and powers up with the new configuration. The first bootscreen takes 10 minutes while trying (failing) to detect AHCI 0 and up. Eventually instead of windows it just resets, and when i pressed DEL in the meanwile the BIOS menu will b presented. Still with the RAID setting though.
If i change it to AHCI, same thing. This is an issue, i'm not able to boot (at all) with these drives working! Disconnecting the SSD doesn't change anything.

I tried resolving this problem by installing the drives for Windows 7, and visited the support site. The bundled CD had two programs that refused to work. More below.

Problem #2
I can't install the drivers from the CD, so i tried the website. I select Windows 7 on support page
http://global.shuttle.com/download03.jsp?PI=1219&OS=7
and tried the RAID related installations. One throws a "system doesn't meet requirements" error right after launching, the other doesn't have anything Windows 7 recognizes as installable.

Please address these problems, as i want to run RAID in my SX58H7. Its why i bought this system.

I am really looking forward to your response as i've hit this wall after owning the Shuttle system for only a few days.

Any suggestions are welcome. I beleive this might be a bug in the driver installation software.

Thank you,
Barry Staes
I might make a habit of putting support information on my blog, if its relevant to most and useful to one soul i´m happy.

20091014

Kingston SSDNow V Series 64GB

I'm very happy with my SSD, but decided to backcheck on some stuff with Kingston. We all know SSD´s degrade performance when pages inside the device are full so it won´t stay 100% always, though it always outperform any HDD.

The Kingston website form required a part number which i didn´t have at hand (its inside the case, afterall) so i got a nice email from Kingston support asking if i had questions. Here was the questions i asked with the answers i received:
Hello Barry,

I consulted engineering regarding your questions on our V series SSD drive.  Their answers are below.




Q1) Does Kingston offer a utility to restore my drive to its newstate?
It is known formating a SSD, or deleting its files or partitions won't restore advertised / new-state performance.


Answer: No, Kingston at this time does not offer a SSD cleaning tool. However, you can use diskpart from command line (cmd) in Vista or Windows 7 to clean the disk. This will wipe the entire disk and all data. 




Q2) Because Q1 is only Will there be a firmware update to support TRIM command found in Windows 7 and later in Linux?


Answer: There will not be a firmware update available for the V series SSD's to support TRIM.




Q3) What firmware updates are in the pipeline?


Answer: For the current V series, none.




Q4) What exactly is it that makes this disk better than any other without the Toshiba chip?


Answer: The controller used on the drive. The controller on any SSD is the key to how well it performs.



If you have any other questions or concerns, please feel free to reply to this e-mail with full email history. Thank you for using Kingston on-line technical support.

Regards,

Matthew Eaton
Kingston Technology
Technical Support



If they don't offer TRIM support in the future, this SSD is doomed. Well ok not that bad really, but its not what i expected. So i'd say don't buy this Kingston SSD, for answer #1 alone. The fact that they don't clarify "what" makes the drive better as its their primary sales argument doesn't make things better.

I want to check out the Intel utility though, so if anyone could pass me the HDDErase tool they bundle with their solid state disks its much appreciated!

Update 20091101: Intel released a firmware update for its SSD line, now suppors TRIM and improved random access speed. Due to it bricking some SSDs' they've withdrawn, but that'll be a matter of time.

Coppermine duplicate records

If you´ve got duplicate records in Coppermine, but no duplicate files this article is for you. This query will find all duplicate records, and its easy to do a DELETE on the bad id's. On the least hits duplicate ofcourse, you wouldn't want to lose sweet historical data!

I use Coppermine to host a photogallery on veldtoertochtulicoten.nl and after uploading some 400 photos i found out that some where duplicate. Bugger, but easy to rectify i thought. Not! After removing one via the webinterface, i found out that the sourcefile gets deleted as well. No problem, except when your other duplicate is using the that same file!

There exist other tools, like this commandline PHP script by remdex found at the Coppermine forum. Nonetheless this was to much of a hassle so i´ve created a simple mysql query to find all duplicates:

Requirements
I wanted to know the id of the least visited duplicates, thus preserving the most popular/visited one each time. Its all done in one mysql query, but i left out the delete line. I've got Coppermine Photo Gallery 1.4.14 (stable).

The mysql query
SELECT * FROM (

SELECT a.pid, a.aid, a.filename, a.hits, a.filepath
FROM cpg14x_pictures AS a
RIGHT JOIN (

SELECT aid, filepath, filename, COUNT( filename ) AS cnt
FROM cpg14x_pictures AS b
GROUP BY filename
HAVING cnt >1
ORDER BY cnt

) AS c ON c.filename = a.filename AND c.aid = a.aid
ORDER BY a.aid, a.filename, a.hits DESC

) AS d
GROUP BY filename

If you don't understand the DELETE command (yet) you shouldn't run code this radical. I give no garanties on other databases, or coppermine installations, so validate its output before you insert the delete command and always make a backup first.

Every pass it only deletes one duplicate, so if you've got triplets or more duplicates you should run it twice or more.

PS i used phpMyAdmin, if only blogspot.com was so effective! There is no code button here, nor ident. :(

Update 20091103: Decided to put my comment inside this post to avoid blog migration issues;
How to add delete functionality:

Replace the (first) line "select * from (" with
"DELETE from cpg14x_pictures where pid IN (
select d.pid from ("

and add a ")" at the end of this query.

Remember to backup and test first without deleting!

20091013

Bootloaders: Windows 7 and GRUB

My recently bought SSD is only 64GB, and i've been toying with all OS's i might like. Sometimes, a bootpartition gets damaged. Here's how to fix it.

Restoring the Windows 7 bootloader:
Since my computer contains only Windows 7 i no longer need GRUB. Its defect anyway since extending the Windows 7 partition, and i like a fast boot so i don't like the countdown menu.

How to:
  • Boot from Windows 7 DVD
  • Select language
  • Choose Repair
  • Choose Windows 7
  • Choose Command line
  • Type this in without the quotes ("): "bootrec /fixmbr" and press enter.
  • Type "bootrec /FixBoot" and press enter.
  • Restart
Ofcourse its also possible to just restore GRUB: check out Supergrubdisk.

My new i7 workstation

If you're just interested in what the configuration of my i7 workstation is, see below. Still reading? Now for some history and introduction.


Recently i've gotten sick of my old computer getting sick, so i gathered my options. I decided to get myself a new system, the old setup served well for over 5 years. That's a lot for any geek. I liked my system, it was good.

Now that i've ordered a new system - carefully picked each component by hand - i decided to share the configuration with anyone who cares. I normally wouldn't care at all what kind of system some other person has, that is until i would have to go shopping.

So this article is for those currently looking for a sexy workstation.

Recycling my old workstation
This setup (Intel Pentium 4 3.2Ghz, 4GB DDR2) would be ideal to join my fileserver (Intel Pentium 4 3.06Ghz, 1GB DDR2) in a yet to be created GlusterFS setup. Its videocard issues won't bother me there, and i have some spare 478 socket motherboards to boot. (pun intended) More on that subject in the following weeks.

The i7 workstation configuration
For those interested - i ordered all parts unassembled at Alternate. The following column lists order#, piece name, price, and months of guarantee.

Or in human readable format:
  • Shuttle Barebone SX58H7
  • Intel Core i7 920 @ 2.67Ghz
  • Kingston SSDNow V Series 64GB
  • 3x 2GB SDRAM DDR31333
  • Asus EN9400GT 1GB 
  • a Samsung DVD rewriter, a terrific Brother printer, and a powercable i ended up not needing.
I will motivate each part in a future post using references and experience, but for now its fair to say each has its perks - except for the videocard. I just got a cheap one that doesn't occupy two PCI-E slots which the shuttle case only has two of.

This system will be a fine home server when retires. Server perks:
  • i7 has 8 cores (of which 4 actual cores and 4 virtual by means of hyperthreading)
  • 6 SATA (of which 3 ESATA) devices in RAID,
  • two Gigabit pots,
  • 2 PCI-E x16 slots (to facilitate RAID controllers)
  • easily allows for homemade air filtration (= tape + some hospital-ish paper cloth on inside of case), 
  • effective cooling,
  • tried and tested components.
But until then my workstation sits on my desk, so add:
  • Small, portable, fast, quiet,
  • and (very important to me) plenty of multimonitor possibilities.
If you are looking for a workstations with fitting demands, i suggest this configuration. You might want to add a big HDD for storage capacity.

20090928

Paper scan unscrewing and straightening

If you (like me) like taking quick pictures (writing stuff down is not my hobby) with your cellphone for later reference you might also regret the bad quality that one most often meets when taking a quick snapshot or memo of a memo, letter or a whole document.

Some times you simply need a proper scanned document, yet have no flatbed scanner at hand. Or later realize this quick memo has to be redistributed or touched up and look good. Can you do it without a flatbed scanner?

Yes, your mobile camera will do! There are tools that unscrew and straighten your document photo or scan. These tools where built for digitizing books and the necessary restoring of paper scans;
  • Scan Tailor
    Scan Tailor has a rather rudementary GUI and may suit most needs. Especially when working with attended restorations: you can see and tweak the scanned pages.

  • Unpaper
    Unpaper as an Linux commandline application this might not be very userfriendly, but it saves the day ..every day.
Also, if once feels inclined these are easily integrated or ported to Android application. Did i mention i love Android?

20090925

Installing VLC 1.0 on Ubuntu 9.04 (Jaunty)

By default the jaunty repository maintained by Canonical doesn't include the latest VLC release. Bummer! Yet very easy to overcome.

UPDATE 20091010: Found a better method:
http://ubuntumanual.org/posts/195/install-all-new-vlc-1-0-in-ubuntu-jaunty-intrepid-hardy
Never mind the rambling below.

To install VLC and other affected applications enable the "Third Party Software" repositories:
  • start Synaptec Package Manager, find it at System > Administration
  • open Repository Settings, via Settings > Repository
  • open the tab "Third-Party Software" and check the two default items;
http://archive.canonical.com/ubuntu jaunty partner
http://archive.canonical.com/ubuntu jaunty partner (Source Code)
  • Apply your settings, and choose Reload. Done!

You may now search for the latest version of your favorite non-Canonical-maintained application, and it should still show up.

Thats all folks, easy as pumpkin pie. And i don't even like pumpkin pie.

20090923

Multi/Dual monitor setup with Synergy

Today my workplace was below par: my dual monitor workstation was defect and i even forgot my Acer notebook. What should i do?

All i had to work with was this pile of retired rackservers that i tend to accumulate. These wheren't up to speed, so i decided to strap them together and make the most out of it. I wanted to use these as a more powerfull (multimonitor) workstation. So i installed the latest Ubuntu on two of them.

Then i remembered learning about Synergy years ago.
Synergy lets you easily share a single mouse and keyboard between multiple computers with different operating systems, each with its own display, without special hardware. It's intended for users with multiple computers on their desk since each system uses its own monitor(s). - Synergy sourceforge website

Hearing lots of people had trouble setting getting it to work, here is a short (Ubuntu) howto. 
  1. Install QuickSynergy on all systems
    Synaptec Packet Manager should work, otherwise try this method: Applications > Add/Remove, now choose "Show: All available applications", and search for QuickSynergy, check it in the list, and click Apply.
  2. Run QuickSynergy on host
    This is the workstation that has the mouse and keyboard connected. Pick the most powerfull machine.
    Enter the IP hostname of the client in the directional box of your choice. (Moving through this edge makes your mouse spawn on said computer.)
    Click the Execute button.
  3. Run QuickSynergy on client(s)
    Enter the IP address of the host in the Use tab.
    Click the Execute button.
  4. Done
    Move the mouse to the edge of the host screen - it should now appear on the client screen!
I still prefer Compiz on Ubuntu, but this is the next best thing. Especially if you can trow hardware at the problem. Now i MacGyvered myself a decent workplace.

Expect a howto on permanent Synergy setup, so you wont have to reconnect after each reboot. Oh and Synergy works across all mayor platforms. Its terrific! Check their site.

Also, i've given up on my workstations hardware problems. The AGP card used to work fine after kicking the machine once or twice... the last fourty didn't make a difference. Except for the satisfaction.

Update 20091005: Adjusted article; i discovered that entering the clients' hostname (instead of IP) on the host (see 2nd step) is more successful.

20090921

Use the CM5 as USB2Dynamixel

Without a €60 USB2Dynamixel you'd have to control the AX12 via the CM5. Luckely it has a "TossMode" that makes it behave much like a USB2Dynamixel. This saved my day while my USB2Dynamixel is on order.

How to enable TossMode:
  • Connect the CM5 to power and serial PC cable.
  • Launch "Robot Terminal". (part of the Bioloid software supplied by Robotis)
  • On the CM5, select mode "Manage" and press start.
  • The robot terminal should display some text the CM5 send, and you might want to type "help". But we won't.
    In the terminal, pres "t" and hit enter. The CM5 responds with "tossmode", and you're good to go.
  • Free the serial port on your PC by closing the "Robot Terminal".
You may now use the CM5 as if it is a USB2Dynamixel. For example start "Dynamixel Commander" and connect on the same COM port and BAUD. (default is COM1 and 57600kbps)

Please share your experiences!

Note that some USB2Dynamixel software (including those using the supplied API and libraries) won't work due its builtin FTDI (the USB>serial chip) driver thats pretty useless here. Only stuff that directly adresses the AX12 on a serial port will. See the AX12 manual on how to construct these raw-byte packages.

Introduction to Bioloid and the AX12

The Bioloid kit (by Robotis) exists mostly of brackets, AX12 actuators and a CM5 containing a microprocessor. For years i wanted to dab with it - yet hold it off - i was afraid the distraction might hurt my study or income.

The "comprehensive" Bioloid kit costs roughly €800 and is a bargeon considering you get 18 AX12's usually going for €50 each. Recently i got donated two AX12 with mechanical problems, and borrowed another AX12 + a CM5 to complete an assignment.

Eventually i just want a decent robotics hardware platform to program for. The feedback the AX12 has (temperature, load, torque) combined with the intelligent control it offers (variable compliance, calibration, angle limitations, accelleration and speed) give it some serious punch over the next best thing: regular servo's.

Best thing here is that the AX12 has a family (Dynamixel) so if my software works on the AX12, i can easily scale up to more powerfull actuators by Robotis. I'm waiting for the day my desktop spider transforms to a road-legal contraption or autonomous "Disney" experience.

For more on the AX12 see the crustcrawler.com website, they've have all specs listed conveniently with a nice resources overview.