Migrating a Windows Home Server guest machine from VMWare Virtual Server 2.x to Hyper-V

I was running a Windows Home Server under VMWare Virtual Server as a guest machine. It had a dedicated 750GB hard disk to host a fixed size virtual disk spanning entire hard disk.

These days I am migrating this and other virtual machine to the Hyper-V 2008 R2 free server and here is how I did migrate it.

  1. Uninstall Virtual Server Tools from guest machine (this is important at this point in time because later it can’t be done easily through add/remove programs).
  2. Shut down guest.
  3. Copy all VMDK files to a spare (new) 1.5 TB Seagate disk. This step isn’t strictly necessary but it was for me because the source disk had troubles reading some sectors – if I wanted to proceed I had to have all the files on a good disk. This step took something like 4 hours over 1Gb LAN.
  4. Download and run VMDK to VHD Converter.
  5. Convert VMDK files (as input select the one without numbers if your virtual disk is partitioned across many files, i.e. SomeDisk.vmdk). I converted to the same hard disk (it barely fits) and it took something like 7 hours.
  6. Copy the resulting VHD to the Hyper-V server (I could pick the server as target location in step 5. but I felt more comfortable doing conversion locally). This step again took something like 4 hours.
  7. Create a new Virtual Machine on Hyper-V server, attach the resulting VHD file as its disk.
  8. Run the machine, activate OS (it will detect “huge” hardware change and it will require activation).
  9. Install Integration Services (Action/Insert Integration Services Setup Disk on connection window) and that’s it.

Lessons learned:

  • Hard disks are growing fast in size but network speed doesn’t. Thus such transfers will be slower and slower due to the sheer amount of data to transfer between disks.
  • Such operation might take whole day
  • If you use an external disk like I am then you should really stick with e-Sata instead of USB 2 or firmware (it is up to 4x faster)
  • Have enough free space on hard disks

A good use of an old Windows Mobile phone

Before owning an Android phone (Samsung Galaxy S) I had a HTC TyTN II which is a Windows Mobile 6.1 device. Until recently it was lying in a drawer because I didn’t know what to do with it. I didn’t want to give it away because I was afraid to turn the new owner into an enemy due the the poor quality of the phone. Anyway I am a so-so happy Android user now.

But recently I had to travel to Italy here and there and I was really lost without an internet connection to my laptop. Sure, I could use roaming, but I am not that rich. I figured out that the cheapest way to get connected in Italy is to buy an Italian prepaid SIM card, from TIM in my case. During the buying process I encountered two peculiarities.

1. The vendor asked me for ID. ID? For prepaid SIM card? I learned that they have this fabulous anti terrorism law in Italy that forbids vending SIM cards to anonymous users. Never heard of it in Slovenia. They even forbid vending more than 4 cards to a single person if I recall correctly. Go figure.

2. The guy asked me whether I want to use internet on my phone or on my laptop. Phone of course, why would I pay a premium price? After all Galaxy S comes with a mobile access point and I though it would be fine. It worked in Croatia just fine. Surprise, surprise, it doesn’t work. It works if I access the internet from my phone but not through an access point. After speaking with a fellow MVP network guru Miha Pihler he figured out that they probably inspect TCP/IP packets for traces of NAT and in such cases block the traffic.

One solution to this problem was to switch my Slovene SIM card in Galaxy S with the Italian one each time I travelled to Italy. There are two shortcoming to this solution. It is annoying to switch them again and again and I still couldn’t access internet from my laptop. Hey, I could buy a cheap GPRS modem. Hm, those aren’t that cheap after all, specially because I don’t need it that often.

At this point I remembered my old crappy TyTN II lying in the drawer. I also remembered that there is a really nice internet tethering application out there called WMWiFiRouter. Combining the two and using Bluetooth PAN feature it was a matter of minutes for connecting my laptop through bluetooth to TyTN II to the Italian internet. It is just that easy - a matter of starting the application and clicking a button. Besides Bluetooth PAN WMWiFiRouter can share cellular internet connection through USB and WiFi and much much more, see the features list.

The bottom line is that I finally found a good use for TyTN II and found a good internet tethering application as well which I’d definitely recommended.

Vtisi o HTC Desire Android napravi (Slovene)

Že nekaj časa spremljam Android telefone na spletu vendar zares nisem imel opravka še z nobenim. Največ kar je, sem si ogledal na hitro kakšen prijateljev telefon. No, zadnje čase malo resneje premišljujem da bi si nabavil enega zase – se mi zdi, da je Android že kar uporaben. Pa sem dokaj nepričakovano dobil priložnost testirat enega izmed njih. Jure iz Mobitela mi je prijazno poslal telefon HTC Desire za testiranje za obdobje dva tedna. HTC Desire je dvojček Googlovega Nexus One – referenčnega telefona Android, ki ga prav tako izdeluje HTC. Za razliko od Nexusa One, Desire nima odpravljanja šuma mikrofona med telefoniranjem, ima pa ščepec več pomnilnika RAM (567MB vs 512MB) – kar pri Androidu, ki vse programe tlači kar v pomnilnik, ni tako zanemarljivo (Froyo naj bi odpravil to omejitev) pa še sledilno kroglico so zamenjali z, zame neuporabnim sledilnikom prsta in gumbe na zaslonu s pravimi fizičnimi gumbi. Pa še kakšna razlika bi se našla.

Za začetek naj povem, da nisem pretiran oboževalec HTCja. Prej nasprotno. Moja najslabša iskušnja z njimi sega nazaj v čas Windows Mobile 6.x in HTC TyTN II telefona. Sicer spodobna stvar (strojna oprema) na papirju, celo grafični pospeševalec je dosegal kakšne 3/4 ravni iPhona. In potem razočaranje. HTC je “pozabil” priložiti grafični gonilnik, brez katerega je bil grafični pospeševalnik manj uporaben kot superračunalnik brez elektrike. Uraden odgovor HTCja na jezo tisočih uporabnikov: “Ah, dejte no, sej nismo nikoli eksplicitno obljubili grafičnega pospeševanja, če ga hočete, si kupite naš nov XY aparat, kjer je to obljubljeno”. Kar me privede do druge zamere HTCju. Non stop proizvajajo nove modele, na stare pa hitro pozabijo. Hja, vse za čim večji dobiček, saj vzdrževanje starih modelov ne prinaša direktnega dobička. To je še posebej veljalo v času Windows Mobile, zdaj je morda malo, ampak res malo, bolje. Ta pristop me še najbolj spominja na tisti vic o neskončnem številu opic, ki jih postaviš pred tipkovnico in ena prej ali slej napiše Hamleta – tako HTC proizvaja morje novih in novih modelov v upanju, da bo kakšen le uporaben. Za kontrast si poglejte Apple, ki skrbi za svoje 3(!) različne iPhone še zdaj, edino prvega ne bo več podpiral s prihajajočim iPhone 4 OS.

Moja merila za Android telefon:

  • ne sme imeti lasten uporabniški vmesnik. Zakaj? Preprosto, ker potem se bo podjetje izgovarjalo, da ne more posodobiti operacijskega sistema, ker je posodobitev lastnega uporabniškega vmesnika zahtevno opravilo.
  • nalagalnik (bootloader) mora biti odklenjen. Zakaj? Zato, da lahko naložimo drugo verzijo OS in nam ni potrebno čakati na proizvajalca (glej zgoraj). Na svetu je kar nekaj ljudi, ki sestavlja verzije po meri in te so večinoma ljudem dostopne in boljše kot proizvajalčeve. Ko se proizvajalec naveliča posodabljati telefon, je to edina možnost za nadgradnjo.
  • spodobna baterija, ki omogoča vsaj dan nezahtevnega dela.
  • vsaj 480x800 zaslon, čim večji, tem bolje.
  • že se le da brez fizične tipkovnice, ker ta naredi telefon večji in težji.
  • WiFi, Bluetooth in 3G.
  • fotoaparat, ki zna narediti spodobno sliko (za nujne primere, ko ni pravega pri roki).

Kar sledi ne bo nek strokoven opis, ampak zgolj moje dvotedenske uporabniške izkušnje, s poudarkom na stvareh, ki mi niso všeč. Konec koncev nam nadležne in neuporabne stvari veliko povedo o uporabnosti telefona, mar ne? Telefon je lahko še tako dober, toda če ima napako, ki ga naredi neuporabnega, vse njegove dobre strani niso vredne nič.

In kaj sem ugotovil po dveh tednih uporabe?

No, za začetek bi si želel malo več časa, dva tedna nista ravno dovolj za kakšen poglobljen vtis. Prvi vtisi so pozitivni, ohišje je spodobno in lepo ga lahko spravim v stranski hlačni žep, zaslon lepo sije v živi barvi in stvar je spodobno hitra. Konec koncev ima 1Ghz procesor Snapdragon. Za namestitev SIM kartice je potrebno odpreti zadnji del ohišja in odstraniti baterijo. Mimogrede, zraven je še (tovarniško priložena) Micro SD kartica velikosti 4GB. Klik klik - in če je baterija polna, je telefon pripravljen na uporabo.

Operacijski sistem je aktualni Android 2.1 Eclair in je “onesnažen” s HTC Sense uporabniškim vmesnikom, kar bo zelo verjetno dober izgovor, da bomo na Froyo-ta (Android 2.2, ki na trg prihaja te dni) čakali dosti časa. HTC je sicer izjavil, da lahko pričakujem Froyo-ta za letošnje njihove modele nekje proti koncu leta. Za starejše modele pa se ne ve, kar zelo verjetno pomeni sredinec roke uporabnikom. Ste pomislili, da bo Desire naslednje leto lanski model? In – da ne bo pomote - Froyo ni bistveno (če sploh je) zahtevnejši kot Eclair. Da so to zgolj pohlepni marketinški nameni nam pove dejstvo, da so ljudje celo uspeli G1 (letnik 2008) posodobiti na Eclair. No, na srečo se menda da dobiti dostop do superuser pravic (root) in tako zaobiti neumne omejitve – na lastno odgovornost in izgubo garancije seveda. Kakorkoli, HTC Sense mi deluje precej nepotrebno, mogoče ima nekaj koristnih delov – npr. Flash, deljenje internet povezave preko USB kabla (USB tethering), pa še to ne bo več potrebno s prihodom Froyo-ta. Vremenski del je ravno tako neuporaben, ker v Sloveniji podpira le Ljubljano. Zastonj Weatherbug je precej spodobnejši. Skratka, HTC Sense uporabniški vmesnik je bolj nonsense.

Zaslon je 480x800 3,7 palčni AMOLED, kar pomeni, da naj bi imel boljše barve kot klasičen LCD. In res je lepo gledat vse te žive barve, le na soncu je skoraj neuporaben zaradi odseva. Ima pa tudi eno grdo skrivnost, ki jo neradi oglašujejo, oziroma je sploh ne. Za razliko od navadnih zaslonov, pri katerih ima vsaka pika na zaslonu vse tri barvne komponent (RGB – rdeča, modra, zelena) jih ima Desirejev samo dve, kar je odkril Luke Hutchison na ars technica  (vezano je na Nexus One, ampak Desire je dvojček z istim zaslonom). Ja, vsaka pika ima zeleno komponento, medtem ko se rdeča in modra izmenjujeta.

imageDesire, bela podlaga in črn tekst: lepo se vidi izmenično rdečo in modro, zelena pa je konstantna

image

TyTN II, bela podlaga in črn tekst: vsaka pika ima RGB komponente

Za natančnejši opis te packarije si poglej hiperpovezavo. Razultat? Bolj spackan in slabše čitljiv tekst ter slab občutek v želodcu, ker nas HTC vsaj zavaja, če že ne laže. In pazite - to pri napravi, ki je v prosti prodaji vredna okoli 600€. Obstaja tudi tretja razlaga, da HTC svoje zaslone pač meri v HTC pikah, ne pa kot vsi drugi, v RGB pikah. Očitno HTC kar ne more iz svoje kože in na račun kvalitete malce prireja specifikacije. Vse za dobiček, mar ne.

Drugi problem povezan z zaslonom je večdotičnost (multitouch). Večdotičnost na Desireju je spet en poceni klump, ki deluje samo do neke mere, to je, dokler nista prsta blizu ali na isti osi. Večinoma te hibe med vsakdanjim delom človek niti ne opazi (večinoma uporabljamo samo en prst). Ampak če igramo igrice ali vrtimo kakšne slike, itd., pa zna biti prav moteče. Več si oglejte na tej povezavi, program s katerim omenjeno pomanjkljivost lahko sami testirate pa zastonj dobite na Android tržnici pod imenom Multitouch Visible Test. Spet poceni HTC bližnjica.

1400mAh baterija je prešibka za takole strojno opremo in ne zdrži niti cel dan. Da se popravim, ne zdrži niti cel dan ob relativno nezahtevnem delu, kot je občasno prebiranje e-pošte, Twitterja in Facebooka, kar smatram kot minimum opravil. Ves čas sem imel vklopljen tako bluetooth kot WiFi. Če človek zraven zaigra še kako igro tu in tam in kaj potelefonira, vam telefon crkne prej kot v pol dneva. Mogoče se da baterijo varčevati s kakimi dodatnimi programi, ki izklapljajo bluetooth, ko ni telefonskega klica ali kaj podobnega, ne vem.

1GHz Qualcomm Snapdragon procesor je dovolj hiter, stranski produkt te hitrosti je občasno znatno segrevanje aparata. Froyo pa naj bi delovanje še dodatno bistveno pospešil s programskimi optimizacijami.

Bluetooth sem uporabljal v kombinaciji s Jabra BT530 slušalko in delalo je v redu. Z WiFi-jem prav tako nisem imel problemov, mogoče edinole nima ravno nekega dobrega dometa. Telefonski del deluje brez problema, kompas še kar, merilec pospeška tudi.

Sem pa imel probleme s priloženim odjemalcem za e-pošto (del HTC Sense). Za e-pošto uporabljam exchange strežnik. Največji problem na katerega sem naletel je bil ta, da mi občasno pošte ni in ni hotel poslati in to brez opisa vzroka napake – enostavno jamra, da je težava pri pošiljanju. Večinoma je v roku enega dneva pošto vseeno odpremil. Neugodno, če ti gori hiša in po e-pošti kliceš gasilce na pomoč. Poleg tega me odjemalec ne obvesti, če pride pošta v mapo, ki ni Inbox. Klasičen nedodelan HTCjev program. Bi vsaj pustili Googlov e-mail, ki zgleda bolj uporaben, vsaj meni – je pa res, da ga nisem testiral.

Najhuje kar se mi je tekom testiranja zgodilo, je bila avtodestrukcija SD kartice. Si predstavljate film Mission Impossible: “Tole sporočilo se bo uničilo v roku 5 sekund”? Začelo se je tako, da sem nekega dne spet imel problem s pošiljanjem e-pošte in sem se odločil, da ga poskušam reštartat (reštart je večinoma magična rešitev za večino problemov, če ne deluje, ga pač večkrat ponoviš). Power Off in že po 53ih sekundah je pravilno mrknil. Klik in kakšnih 55 sekund kasneje mi je ponosno javil: “Blank SD card, SD card blank or has unsupported filesystem”. Hua. Kar tako. Še dobro, da nisem imel kaj vrednega gor. Sem poskušal formatirat, pa se ni nič zgodilo. Čudno. Sem dal kartico ven iz telefona in v moj čitalec SD kartic in tudi nič, kot da kartica ni prisotna. Huh? In očitno nisem edini, ki je naletel na to samodestrukcijo. Android Forums in XDA forums imajo podobne in enake probleme (pa še na drugih forumih imajo podobna sporočila). Glede na to, da ljudje javljajo probleme na različnih SD karticah, bi se dalo sklepat, da je nekaj narobe s telefonom. Auč. Si predstavljate tajvansko ruleto: “Daš v Desire SD kartico in če preživi vklop telefona, greš v naslednji krog”?

Povzetek

Kaj pa vem. Meni se tale Desire še vedno zdi, kot pravi HTC izdelek, kjer namečejo noter en kup tehnologije, uberejo bljižnjice in stvar čimprej izstrelijo na tržišče, prodajo čim več in potem pozabijo na reševanje težav. Zraven pa jih še srbijo prsti in si ne morejo kaj, da ne bi napisali svojega vmesnika, uporabnik pa nima možnosti izbire. Je pač tako, da se ljudje delimo na tiste, katerim je HTC Sense všeč in tiste, ki se nam zdi bolj brezveze, pa še nove verzije OS pridejo z ogromnim zamikom zaradi teh dodatnih uporabniških vmesnikov, če sploh pridejo. Desire ima vsaj to prednost, da je dvojček Nexusa One, Googlovega otroka. To pomeni, da bo Google nove verzije najprej priredil za Nexus One in HTC ne bo imel veliko dela. Samo HTC Sense bo potrebno prenesti in že bo kako leto naokoli. Tako npr. uporabniki HTC Hero-ta čakajo na nadgraditve predpotopnega Androida 1.5 že več kot sedem mesecev. Bomo videli, če bodo pri Froyo-vemu Desiru kaj hitrejši (konec leta obeta spet čakanje in čakanje).

Če lahko živite z omenjenimi problemi ter ste se sprijaznili, da vas HTC zavaja, potem vam je telefon lahko celo všeč. Zase vem, da ga ne bom kupil. So mi naštete pomanjkljivosti prehude, da bi žrtvoval kup denarja. Si bom raje še ogledal Motorolinega Milestona ali pa počakal na kaj bolj meni prijaznega.

Multitouch development on Windows 7

I’ll be developing a multitouch application in WPF 4.0 running on Windows 7 and using Windows 7 native multitouch (supported in WPF 4.0) running in portrait mode. Dual finger touch should be enough. I have all the tools handy except for one: a multitouch input device aka multitouch monitor. So I am looking around for it and have found these options so far:

Bamboo Fun tablet

Last year I’ve bought a Bamboo Fun pen & touch tablet from Wacom. It supports both stylus and two finger touch input. I’ve assumed it will work natively with Windows 7. But it doesn’t. The core problem is that Bamboo has a relative touch positioning while Windows 7 requires absolute positioning – in other words Bamboo doesn’t know where your fingers are until you touch its surface. Furthermore Wacom decided to provide support through a generic driver to other OS beside Windows 7 and thus no Windows 7 native support is provided at this point in time. Disappointing.

Multitouch monitor

The most logical choice would be a multitouch enabled monitor. Heck, Windows 7 has been around for a while now (including beta and RC period) and there should be plenty of such monitors. At least that’s why I thought. Wrong again. There are some choices though. All of these supports Windows 7 native multitouch.

Acer T230H

A 23” 1920x1080 widescreen monitor from Acer. It supports dual touch through a some sort of simple mechanism using cameras. Has problems when you cross fingers or something like that. Not a huge problem in my case. But it has no pivot feature. I guess I’ll just put in horizontal portrait position on my desk or somewhere near. Despite these shortcomings this is my first choice at this point. The price tag is around 300€.

Dell SX2210T

A 21.5” 1920x1080 widescreen monitor from Dell. Smaller, slightly more expensive, dual-touch and no pivot as well.

Compaq L2105tm

The most hidden of the three. Similar to Dell’s one: 21.5” 1920x1080, no pivot. Couldn’t find it in EU so I am not sure about the price but in US is probably cheaper compared to Dell’s.

3M Multitouch developer kit

This one is interesting. A 19” 1440x900 monitor with support for up to 10 finger multi touch input. Looks like a perfect choice if it wasn’t for its price which is listed as $1.499 in US. I assume this is translated to >1.499€ for the EU. Ouch. Yet, this is the only multi-touch display that supports more than two fingers input.

Tablet PC

As an alternative to a proper monitor I might consider a tabled PC such as Dell Latitude XT2 or Acer AS5738PG-6306. First one is expensive and not exactly a development-grade fast machine, yet is a good quality product. The later is much cheaper and perhaps faster but has one fatal flaw in my case: the screen doesn’t rotate to “tablet” position and as such it won’t work in portrait mode. Furthermore touching the screen looks kind of problematic since you can easily flip it (imagine touching a standard laptop). Both laptops feature an integrated graphic card which isn’t good either.

A tablet PC is not the best option for my project anyway so I didn’t investigate much in this direction. The same goes for All-in-one multitouch PCs.

DIY alternative

Heh, I might even built a table like MS Surface by myself. Impossible? Not at all nor it is expensive. Actually it is very cheap. On the negative side it is quite time consuming, even more if you aren’t used to build such things.

Software simulation with multiple mice(MultitouchVista project)

There is way to simulate multitouch with multiple mice on normal monitor as well. Unfortunately it is not a feature of the OS but rather through a project hosted at CodePlex. Note that project has a Vista name in it, yet it runs under Windows 7 only – both x64 and x86. The idea is to trick OS to believe that mouse pointers are in reality fingers. This is done through a custom driver and a couple of services. I’ve tried to make it work with a single mouse to simulate panning and it worked on IE but not in my WPF 4.0 application for some reason. It was really a quick test and I should investigate why it isn’t working for my application further. But if I make it work this will be my way of doing multi touch until I get a proper multi touch monitor, possibly Acer T230H.

Conclusion

Obviously multitouch development requires either a very expensive full featured or a cheaper, but simplified and feature lacking hardware. If you don’t want to spend any money at all then you have to check the MultitouchVista project. If you are looking for a cheap dual touch monitor then Acer T230H sounds like a good choice.

Note that the hardware characteristics in this post aren’t based on real experience but rather on the data collected from internet.

If you have a different, or a better solution, or some real experience, please let me know.

My blacklisted companies

Here is my current short list of two companies involved with hardware and/or software sale that I won’t buy from again due to the various reasons.

First is HTC, yes, the one that produces all sort of phones. In fact it massively produces new versions monthly. Does this suggest that they are smart and productive? I’d rather say that they a) don’t know what to produce and thus they throw a lot of different versions on the market and b) they count on customers buying newer and newer versions of their hardware instead of keeping existing ones. The latter is strictly linked to the fact that HTC is very reluctant to fix existing bugs and you pretty much can’t count on upgrading to newer OS even though your device could easily run it. Did I mention that they sometime forget to include drivers, like graphics acceleration? Of course, they kindly suggest to buy a new device if you want hw accelerated graphics because they just won’t provide it for your model for some reason. I am specifically talking about HTC TyTN II aka Kaiser, not a cheap device by any means. A device that is in fact in 75% range of iPhone v1 hardware performances including graphics, if there was a proper driver. Yet due to the missing graphics hardware acceleration and very much outdated WM6.x this device is nowhere near iPhone. People might think that the situation would improve with HTC Android devices but it certainly doesn’t look so. True, HTC is creating attractive models from hardware perspective but the little things like bugs, hardware issues and mostly the company’s arrogant and greedy attitude put them to my blacklist of companies I' won’t buy again from. Warning, I am talking about my experience with HTC and I am not implying that other companies are better or worse.

So, what will be my next phone? I’ve decided to try Android. I like the fact that it is open source and modern. What about the device? Currently I am considering Motorola Milestone because it a) has good hardware (a bit faster CPU wouldn’t hurt though) and b) is a Google reference device meaning no custom Motorola UI put on top of it. Why is this good? Because upgrading to newer Android versions shouldn’t take long and certainly they won’t depend on anybody else but Google (hopefully, the future will tell). I certainly don’t want to depend on companies such as HTC anymore. Pity though Milestone isn’t yet being sold nearby (I am not that keen to pay 50€ (>10% of the device) for postage from Germany to Slovenia) in Europe.

The other one is Kettler, a German fitness equipment manufacturer. What it has to do with hardware or software? Oh, it does. Among other fitness machines they have a rowing machine featuring an onboard “computer” and USB port. The older version of this rower featured a PC application (for a healthy price) that linked to the machine through the USB port and could control and/or register various data – it got total control of the rowing machine. Imagine the possibilities. The slightly newer version of the same rowing machine isn’t compatible anymore with this PC software (which I found only after I’ve bought the machine) but they assured a newer version is on the way. This was years ago. I’ve asked them several times whether it is possible to get at least communication protocol specs so I could create the software I wanted myself. All answer were like: “our policy is not to disclose anything, we won’t give you anything” – you get the idea. But will you ever release an updated PC application? “We might be working on it”. Years after nothing to see. I can only deduce that they don’t care about their customers. They never disclosed this version incompatibility. Again, their hardware is fine, it’s their software and mostly attitude that put them on my blacklist. BTW, is anybody out there willing to reverse engineer the 256KB ROM (Freescale HCS12 CPU) to understand the protocol? I’d try but having no experience it would take me a long time (I imagine a skilled person might understand it quickly). The time I currently don’t have unfortunately.

If I were to buy a rowing machine again I’d buy a Concept2 rower which comes with all sort of free PC applications and even a free SDK – heck, the company even encourages you to write applications. In fact I might switch to it after I sell my Kettler on eBay.

Why am I writing all this? Well, sharing bad experience helps others from falling in the same hole. After all we mostly judge companies by bad experience don’t we? Furthermore exposing such bad practices might make them think twice. So take my writing as you wish but consider yourself warned :-). Also I am not saying that I won’t buy from those companies ever: I might but not before the company policy changes considerably.

That said I am interested in your blacklists as I am sure everybody keeps one. Perhaps we can create a blacklist page.

Modern bicycle equipment

I have been bicycling for almost two decades now. I started with a Cannondale M700 cross country not-suspended mountain bike which I still own and use for non demanding terrain such as roads.

Every (mountain) bicycle should have a bicycle computer and looking back I still remember my first bicycle “computer”, a cheap wired one, I can’t remember the manufacturer. Bicycle computers evolved since then and so did other technologies. Looking at my current bicycle equipment yields this picture, originally drawn by Tevž, my six year son and modified by me (added equipment and descriptions):

me and bike p

The blue arrows shows wireless communication while the orange boxes describes the equipment which consists of two groups:

1. Bicycle computer: Garmin Edge 305 device which is a GPS receiver combined with heart rate and cadence (pedal rotations) monitoring and barometric sensor for altitude reading as well. The communication with monitors is through proprietary ANT+ wireless protocol so no wires are involved (barometric sensor is built in). The base unit shows all kind of data based on those four inputs and it has quite enough of memory as well – so I can store routes to my PC. It doesn’t feature navigation though – you’d need to buy a newer and more expensive 705 model, for that.

2. Pocket PC which serves three purposes: it plays music or podcasts to the Motorola Rokr S9 bluetooth headset (depends on my mood), it allows me to use headset in hands free mode to make or receive phone calls and finally, it transmits all sort of data (i.e. position obtained by GPS sensor – not Garmin’s but its own) back to my server. Or better, it could transmit since I haven’t found time yet to implement it. Sure, I could use one of the applications available out there but then I’d have to send the data to their server which I don’t want to.

So, once I finish a daily exercise I transfer the data stored in Edge 305 to my PC through USB cable using Sport Tracks application. Sport tracks is an excellent application that keeps track of your exercises and it is not bound to bicycling in any way. It is a topic of a post on its own but if you want to keep a logbook of your exercises you should really take a look – it is free. Anyway, here is a screenshot of my last exercise as shown by Sport Tracks:

 

 

sporttracks

Is there anything I am missing in my equipment? Sure, there are some things I’d like to happen or to have.

  1. Garmin’s monitoring equipment should use bluetooth protocol so I could read them from any computer. This is unlikely going to happen but at least it is using standardized protocol ANT+. There is at least one standalone receiver with software made for iPhone out there.
  2. Edge unit should implement bluetooth protocol so I could read data directly from it to my Pocket PC. Either this or #1 which is better.
  3. One day I’d like to mount a power meter as well but there are two economical obstacles: those are very expensive ($1500+) and I’d have to buy Edge 705 unit as well to read its data.

Building an Intel Core i7 based computer – Chassis

The last ingredient is the chassis. Likewise PSU it looks like you don’t need to be careful when picking one. Wrong. Chassis are very different and details are important. Let’s go by features in no significant order.

Weight

Cheaper chassis are mostly build from steel (at best the front cover is made by aluminum but they are mostly from steel) while the more expensive are built from aluminum. Which means lower price and more weight. I am not sure how much the material affects cooling – aluminum chassis should perform better. Since my chassis will sit under my desk and I will (hopefully) rarely move it I am not concerned with weight. The cooling difference should be minimal. Thus steel for me, aluminum is an option.

Classic or tool-less

Tool-less design means that you won’t have to toy with screws to mount drives and add-in cards. Instead you’ll easily use custom made plastic gizmos to fix them. Otherwise you’ll have to use a screwdriver (not that fixing a motherboard is still a screwing experience nevertheless). Not a big deal but this is a good feature. I’ll go for this, not at all costs though (I’ll install hardware only once).

Drives mounting direction

Some chassis support drive mounting from side. This makes mounting and even more important, changing, drives much easier. In classic way you have to push the drive towards wire-filled motherboard to get it in or out. But if you have a side mounting option the drive replacement and mounting is much easier. A must.

Size

Mid-tower for me. No need for big tower.

Front side connectors and their placement

I like to have them on the top of the chassis and I am looking for: 2 (at least) x USB and Firewire. e-Sata is a welcome option.

Front side buttons placement

Having power on and reset buttons located at front side is not a very good idea. They are easily involuntarily kicked when the chassis is positioned under the desk (on the floor) and when the access to them is too easy. Which is something you want try to avoid, otherwise you (or your kids) might reset your computer in middle of the work and data will be lost. Pay attention to buttons accessibility to avoid such unpleasant surprises.

Internal ventilation

Once more the keywords here are 12cm fan and a slow rotation to avoid making too much noise. I like to have two of them, one on the front side and the other on the back side. Front side fan should be an intake while the back side one should be an outtake. So the air moves through and cools entire chassis content. Furthermore the front side one should be placed right in the front of hard driver to provide an adequate air flow. If the chassis doesn’t come with built-in fans it should have at least adequate holes.

Design

I don’t care. It will sit under my desk and I won’t look at it often.

PSU location

PSU is usually located at the top of the back side of the chassis. However the recent trend seems to favor putting it on the bottom to improve the temperature reduction inside the PSU itself. I thought this is a nice idea and why not – cooler PSU means lower noise. But later, when I was building the computer I’ve found that it isn’t such a good idea after all for various reasons (details in next post).

That’s it more or less. There are plenty of different chassis out there from many different manufacturers and picking a good one might take quite some time. Usually I buy chassis made by Cooler Master and this time is no different. At my price range they are good enough.

I’ve bought a Cooler Master RC-690-KKN1-GP from AGT.si for 83 Euros. Note: this chassis has PSU located on the bottom of the chassis. The delivery process from AGT took more than a month because the chassis wasn’t in stock and distributer took quite a long time to deliver.

See other relevant posts:

Introduction
CPU cooler
The goal
Power Supply Unit
Memory
Storage
CPU
Graphics card
Motherboard

Building an Intel Core i7 based computer – Motherboard

First step in picking a proper motherboard is a chipset choice. But not with the Intel Core i7 as the only available chipset is Intel X58, like it or not.

My next step is to pick a manufacturer I like. As for graphics card my choice goes to Gigabyte. Never had issues with their motherboards and they are well built with quality components.

Next, I define what I expect from my motherboard. Here is the list:

  • passive cooling (heat pipes rules)
  • it should have a built-in Intel Matrix RAID controller (it goes by name ICH10R)
  • it should support at least 4 SATA2 drives (have at least 4 adequate ports)
  • it should have two PCI-E 2.0 16x ports (one goes to graphic card, the other might go to an additional graphic card (perhaps for running CUDA or for running more than two screens at once) or some other card requiring high bandwidth). Note, I don’t care about nVidia SLI or ATI Crossfire.
  • it should support three memory channels (the number of memory slots should be 3 or 6  - 6 is preferred) as Core i7 works with three channels natively (read my CPU article)
  • it should support QPI up to 6.4 GT/s (bus speed)
  • it should support at least 6GB DDR3 1600GHz (or faster) RAM
  • it should have as many USB 2 ports as possible (they are never enough, trust me)
  • it should have at least one Gb LAN adapter (two is better but not obligatory)
  • it should have dual BIOS (this feature is useful if something goes wrong when BIOS is flashed to a newer version. If the motherboard doesn’t have dual BIOS or some similar solution then the only solution is to send it in for a repair)
  • it should support 5.1 sound output
  • it should have at least one PCI slot
  • it should support IEEE 1394 aka Firewire (useful for transferring videos from video camera)
  • it should have PS/2 ports for both keyboard and mouse (more USB ports are left for other devices)
  • built with quality components is a bonus
  • eSata support is a bonus
  • misc features that I take for granted

I don’t care about motherboard performance since it doesn’t vary a lot between similar motherboards. After looking Gigabyte’s line of X58 motherboards I’ve finally picked a Gigabyte EX58-UD4 model. It has more or less everything I listed except for eSata connector (which is really useful only for connecting external hard disks). It also features a single LAN adapter but I don’t care since I have a spare PCI network card hanging around.

The most interesting aspect of this motherboard is perhaps Intel Matrix ICH10R built-in RAID controller. It is some sort of a hybrid because it doesn’t have a dedicated CPU – instead it steals a bunch of CPU cycles from the main CPU. As long as one uses RAID 0, 1 or 0+1 it doesn’t matter much because the utilization is really marginal. RAID 5 is a different story – don’t use RAID 5, specially with built-in controllers if you care about performance – I won’t use it on this workstation thus I don’t care. The controller doesn’t have its own cache as well. Again, this isn’t much of an issue unless you are in the RAID 5 or higher. The backup electricity is provided by an UPS for me (there is no option for a backup battery).
On the positive side Intel Matrix is fast enough (again, for RAID 0, 1 and 0+1) and has a clear advantage on compatibility field. Imagine the situation your non-Intel RAID controller card fails. You have to buy a new one. Here is a big problem: you have to buy the same model unless you are searching for troubles. The thing is that RAID controllers, even from the same company aren’t very much compatible as they write data to disk a bit differently – IOW you might loose all the data if you don’t find an adequate one because it won’t be able to read the data. Ouch. If the original controller is an old one then double ouch. Here Intel Matrix shines, at least judging from tests performed by online web sites (can’t remember where I’ve read them) – most chances are that if you change your motherboard for another one that has an ICH10R RAID controller it will just work. Furthermore it is probably compatible with older RAID controller models as well (ICH9R, ICH8R, etc.) – on the negative side you have to change your motherboard if built-in controller fails which might be even cheaper than changing a separate controller.

I’ve bought a Gigabyte EX58-UD4 motherboard from mimovrste.com for 215 Euros.

See other relevant posts:

Introduction
CPU cooler
The goal
Power Supply Unit
Memory
Storage
CPU
Graphics card

 

Building an Intel Core i7 based computer – Graphics card

This one is a relatively easy choice.

The main criteria for me is the silence. Fortunately there are passively cooled mid-range graphics cards out there based on the GPUs from both nVidia and ATI. They are not amazingly fast, but hey, one needs amazing speed only when playing games or for some really specialized tasks. There is really no need for top performances for me.

The other important feature I am looking for is a double DVI output because I am currently using two LCD screens.

Next, I’ll have to choose between nVidia and ATI. This is a difficult choice because the two companies are more or less equally good. The deciding factor for me is CUDA (which is only supported by nVidia and I might play with it) and the fact that nVidia passively cooled cards are more powerful than ATI ones.

The last criteria is performance. I’ve picked the fastest passively cooled graphics card from nVidia on the market: card based on a 9600GT GPU. The bus supported is PCI-E 2.0 which is a mainstream bus (AGP and PCI are legacy buses and should be avoided). The card is manufactured by Gigabyte, a company I consider a good one and I never had problems with.

That’s it. I’m not interested in other features. Perhaps having a HDMI converter (which my card has) might be important in future if/when I decide to buy a new LCD screen. I don’t think that it will happen anytime soon though.

Note: The graphics card I’ve bought occupies two slots (see the pictures below) on the chassis due to the massive heat-pipe cooler.

I’ve bought a GIGABYTE GV-NX96T512HP 9600GT 512MB PCIe (rev 3.0) from Mlacom for 111 Euros.

See other relevant posts:

Introduction
CPU cooler
The goal
Power Supply Unit
Memory
Storage
CPU

Building an Intel Core i7 based computer - CPU

What to look for in a CPU? For me, I look for a good performance before anything else, yet it shouldn’t be too expensive. You have always watch for a performance bottleneck in a computer – it doesn’t help to have a fastest CPU on the world if other components are slower. In other words, I am looking for a sweet spot. I look for a technology that will last for few years.  I’d like to see a solution with a passive heat sink but those don’t exist anymore even for a relatively slow CPUs.

First step is to pick a manufacturer. It is either Intel or AMD. I’ve been a fan of AMD (before Intel come out with Core 2 line of processors) as AMD Athlons at the time were more advanced, faster and they run much cooler (passive heat sinks were an option then) than Intel’s Pentiums. Unfortunately for AMD, due to problem in their manufacturing of newer CPUs,  this is no more true. Intel wiped out the competition first with Core 2 and now with Core i7. So, Intel is my choice.

I will chose between two Intel’s models: Core 2 and Core i7.

Core 2

  • is cheaper
  • uses cheaper DDR2 or more expensive DDR3 RAM
  • motherboards are cheaper
  • plenty of different motherboard chipsets
  • 2 or 4 cores
  • might consume less power (TDP), depends on a model (ranges from 65W to 150W)
  • 65nm (older) to 45nm (newer)

Core i7

  • more expensive
  • it uses more expensive DDR3 RAM only
  • motherboards are more expensive
  • there is only one chipset – X58
  • 4 cores only
  • consumes more power than slower Core 2  but less than the top Core 2 (130W)
  • faster than Core 2
  • 45nm technology

If I want a system that will last for some time then I should stick with a faster and newer Core i7 platform and DDR3 memory. Furthermore the slowest Core i7 920 is more or less faster than the fastest Core 2 model even though it runs on a slower frequency (at least judging from the online reviews) and it comes at lower price. There are various technology improvements for Core i7 line as well.

One can’t pick between 2 or 4 cores when it comes to Core i7. It might surprise you but having less cores at same performance rating is better. The reason: multi core CPUs exist only because manufacturers can’t raise the CPU frequency easily and it is more convenient (cheaper) for them to stuff more cores at lower frequencies into the CPU. IOW a single core CPU operating at 3GHz is a better choice than a dual core operating at 1.5GHz performance wise. The multi core technology has other side effects such as forcing developers to program for multi core CPUs which means somewhat more demanding development. Due to manufactures and physics laws the CPUs are heading into more and more cores stuffed on the same chip instead of the higher frequencies (as before, at the time of single cores) and we have to adapt to the situation.

The power consumption for Core i7 920 is rated at 130W max but I think it should consume less power because all three Core i7 models (920, 940 and the faster 965) have the same max. rating. So, the slower model should consume less. I am not happy with such high power consumption but this isn’t a decisive factor for me at this time, because I don’t have choice once I’ve decided for Core i7 (or better, at this performance one don’t have a choice anyway). Note, that more power consumption means more heat and more heat means more cooling which means more noise. I hope that my Sycthe Mugen 2will still run quiet nevertheless (that’s why I’ve chosen a good CPU cooler). The best way to keep down power consumption at same performance is to enhance the building process to use “smaller” technology which is 45nm for Core i7 but that’s something I can’t change.

Upgrades, such as adding more memory or changing the CPU, will be easier in the future because the Core i7 line will be mainstream (and faster) while Core 2 line will be slowly abandoned. The same goes for DDR3 vs DDR2 RAM. Just look at your DDR memory (I won’t even mention SDRAM) if you still have it – it is pretty useless except if you have very old computers.

I’ll pick the slowest of the Core i7 line: 920. The faster 940 is almost twice as expensive yet it won’t give me significant increase of speed (nor any other advantage – but it will me higher power consumption) for my daily work.

There are two SKUs on the market: a boxed version and a non-boxed version. The first comes with bundled stock CPU cooler while the other is a bit cheaper and it comes without the cooler. I’d buy the non-boxed because I don’t need the stock CPU cooler but it is almost impossible to find it (and the price difference is really a minimal one).

Here is couple of photos of the 920 and its stock CPU cooler compared to Sycthe Mugen 2(CD case is there for size comparison):

I bought an Intel Core i7 920 (boxed) at mimovrste.com for 280 Euros .

See other relevant posts:

Introduction
CPU cooler
The goal
Power Supply Unit
Memory
Storage