Saturday, February 27, 2010

My Tiny Caseless ION HTPC


So here's the deal. It's a tiny 7 by 7 inches (18 by 18 cm) caseless HTPC (Home Theater PC). I've assembled it this week and since it's so great I decided to share my experience with the rest of the world.

The HTPC is connected over HDMI to a 46 inches Full HD screen. I'm using it for Internet browsing, filez downloading and, of course, media streaming: HQ Audio & Full HD Video.

Considering these objectives, the main requirements from such a PC are:
1. it must be absolutely Noiseless. It should make no sound.
2. minimal electricity consumption.
3. smallest possible dimensions.
4. HDMI support and sufficient processing power
5. low cost

Noise in PCs is coming from the cooling fans, so noiseless PC means no fans. In other words cooling must be totally passive. This requires both a very low power processor and a large and effective heatsink.

The CPU -
Intel Atom 330
The processor should run on
very low power and yet must be sufficiently powerful. A rather quick search on google led me to the conclusion that as of today (Feb. 2010) the obvious candidate is Intel Atom 330.
Atom is Intel's brand name for a line of ultra-low-voltage x86 and x86-64 CPUs, designed in 45 nm CMOS and used mainly in netbooks, nettops, and Mobile Internet devices. Intel declares that ATOM is built with the world's smallest transistors for low power and designed specifically for a new wave of Mobile Internet Devices and simple, low-cost PC's. ATOM 330 (unofficially code-named Dual Diamondville) is a dual-core processor running at a 1.6 GHz clock speed.

Intel ATOM 330 + Nvidia GeForce 9300/9400M = ION
While Intel's Atom 330 is fast enough for many tasks, it doesn't have the horsepower to handle HD decoding on its own, not even with a second core. The CPU is simply not fast enough to decode high bitrate video (much less H.264) and the chipset doesn’t support HD video decode acceleration.
NVIDIA saw an opportunity with Atom. Intel had a very popular CPU, that could be used in many more environments if it could only be paired with a more powerful chipset. Enter the GeForce 9400M. This is the very same GeForce 9400M that’s in the new MacBook, MacBook Pro and MacBook Air...and NVIDIA was pairing it up with Intel’s Atom processor. ION was born - A GeForce for Atom. ION is capable of decoding and playing full 1080p HD video content with true-fidelity 7.1 audio, thanks to GeForce 9400's PureVideo HD decode engine that offloads large portions of the decode process for H.264, MPEG2, and VC-1 content. More technicalities here.

The Mini-Itx Motherboard of Choice - Zotac IONITX A-U
Mini-ITX is a 17 x 17 cm (or 6.7 x 6.7 inches) low-power motherboard form factor. These boards can often be passively cooled due to their low power consumption architecture, which makes them useful for home theater systems.
Several mini-itx motherboards support the ION platform, including ASUS AT3N7A-I and others. However, after another quick google search, I realized that the right choice here must be Zotac IONITX A-U, not only because they were the first to build the mini-itx ION, but mainly because they have a superior product, with the following advantages over the ASUS:

1. External DC power supply. One of Zotac's mini-itx ION models comes with a unique DC power supply. The board has no ATX power supply connector on it, instead it relies on an external 90W power brick similar to what you’d get with a notebook. This was very important for my purposes as I intended to use no case for the HTPC and hence no ATX power supply.

2. Integrated WiFi. The Zotac board has on-board WiFi, while ASUS’ board has on-board Bluetooth. For my purposes, the WiFi is by far more important.

3. Passive cooling. The Zotac board has a huge heatsink and passive cooling is fully supported. The ASUS board, on the other hand, does not support passive cooling and instead has a cooling fan that spins at nearly 6000RPM. This is noisy.

Why Caseless?
At first I thought I'll use one of the
Mini-ITX cases available on the market. It's a small and quite neat black box which most living rooms can probably live with. A no-brand case with a PSU (200W) costs around $65. Then I thought, why bother? A case with a PSU comes with a noisy fan, and it adds costs really for nothing. On the other hand, a tiny caseless HTPC can be a cool object in the living room, much more than another black box.

Putting it all together
Finally, i built it up. I used some pieces of transparent
perspex to cover the board, except for the giant heatsink which was left to happily live in the open air.
I placed a 2.5 inches SATA 160GB hard drive on top of the perspex (Western Digital Scorpio). Windows 7 was installed on the hard drive prior to connecting it to the board.
A 2GB DDR2 Kingston ValueRAM module was placed.
Cables were plugged: DC power supply, HDMI and even SPDIF optical fiber cable was connected to the Home Theater receiver (just because it's possible...).

Now I needed a switch to turn the HTPC On and Off, a functionality normally provided by the case. For this purpose I used a switch with some leds I took from an old PC case.

I also spent some time wondering what would be the best way to control this tiny creature, and I tested some IPhone apps developed for this purpose. Eventually I gave it up and purchased a real keyboard: X-Gene 2.4GHz Wireless Mini Keyboard with 800 DPI optical trackball and 15 meters effective working range. This is more than enough.

That's it. The ION is now placed in the living room on top of an XBOX360 unit. The pictures demonstrate.




Tuesday, July 21, 2009

מנוע של מכונת כביסה ישנה

מצאתם מכונת כביסה ישנה ועלה לכם רעיון למחזר את המנוע למטרה כלשהי? הגעתם (אולי) למקום הנכון!
הפירוק של המנוע הוא פשוט: יש לנתק בזהירות את מחבר הפלסטיק שמאגד את החוטים, ולפתוח את הבורג/אום שמחזיקים את גוף המנוע לשלדת המכונה. המנוע בידינו.
מנוע של מכונת כביסה הוא לא פרייאר. הוא צריך לדעת להסתובב במהירויות שונות (כיבוס, סחיטה וכו') ובכיוונים שונים. בד"כ תמצאו מנוע של עד שלושת-רבעי כח סוס (כ-450 וואט) שפועל על זרם חילופין. ממה שקראתי, יש שני סוגים עיקריים של מנועים: מנוע פחמים ומנוע בלי פחמים. מנוע בלי פחמים ("רוטור כלוב") מופעל ע"י קבל, ושם יש שני ליפופי מנוע (שני סלילים): לכביסה - מהירות נמוכה ולסחיטה - מהירות גבוהה. זו מעין החלאה חשמלית של שני מנועים.
במנוע עם פחמים ("רוטור מלופף"), ויסות המהירות נעשה דרך מתח המוזרם ל"פחמים". הפחמים בהם מדובר הם שני מקלות שחורים שיושבים על הרוטור שהוא החלק המסתובב במנוע. במנוע כזה יש גם "טכו-מטר" שבודק את המהירות. הוא יושב על ציר המנוע בצד האחורי, ומשם זה הולך ל"בקר" (כרטיס אלקטרוני) שלפי המהירות הוא משנה את המתח בפחמים ואלו כאמור גורמים לשינוי המהירות.

המנוע שאני פירקתי היה שייך למכונת כביסה פיליפס-ווירלפול והיה מנוע פחמים. אם יש לכם מנוע בלי פחמים, אין לי מושג איך להפעיל אותו.
או קיי, אז יש לנו מנוע פחמים אבל ניתקנו אותו מהבקר האלקטרוני של מכונת הכביסה ששולט על מהירות המנוע. מסתבר אבל שיש אפשרות להפעיל את המנוע ללא בקר בחיבור ישיר לחשמל רגיל של 220 וולט, ואז לקבל פעולת מנוע במהירות מלאה.
איזה חוטים צריך לחבר לאן? זו כבר לא שאלה פשוטה וחיפוש די מתמשך בגוגל לא היה לי לעזר רב. למחבר היו מחוברים 7 חוטים. מה שהצלחתי להבין זה שחוט אחד (הקיצוני) הוא הארקה, זוג חוטים אחד הולך לטכו-מטר מה שלא רלבנטי במקרה שלנו ושני הזוגות הנותרים הם עבור שני סלילים שקיימים במנוע. לא יודע למה שניים. בקיצור, מה שצריך לעשות זה לחבר זוג חוטים של אחד הסלילים לחשמל. אצלי הזוגות של הסלילים היו חום + חום/לבן, וירוק + ירוק/חום. את שני הזוגות הנוספים צריך לחבר ביניהם כדי לסגור מעגלים.
1. חום (הארקה)
2. ירוק/חום
3. חום
4. ירוק
5. חום/לבן
6. שחור (טכו-מטר)
7. אדום (טכו-מטר)
וביתר פירוט: 1 להארקה, 2 ו-4 לחשמל, 3 מחובר ל-5, 6 מחובר ל-7.
שיהיה בהצלחה.
אין לי כמובן אחריות על כלום וברור שרק טכנאי מדופלם רשאי לנסות בבית

Tuesday, June 2, 2009

גימטריה #1

מסתבר שלפי חכמת הגימטריה המילה אל שווה למילה לא

Thursday, May 7, 2009

Actionscript 3 - Adding a Text Label with Hand cursor on mouse over

So you have an Actionscript 3.0 project and you want to add a simple text label that behaves like a standard HTML link with hand cursor on mouse over, underline, click events, etc.?
This should have been a fairly simple task, but it turns out to be a tricky one. To make a long story short, here's the bottom line:

private var lbl:TextField;

/* add the following to the constructor or some other function */

var btn:Sprite=new Sprite();
btn.buttonMode=true;
lbl = new TextField();
lbl.width = 120;
lbl.height = 20;
lbl.text = "My Label";
var newFormat:TextFormat = new TextFormat();
newFormat.color = 0x00FFFF;
newFormat.size = 14;
newFormat.bold = true;
newFormat.font = "Arial";
newFormat.underline = true;
lbl.setTextFormat(newFormat);
lbl.selectable = true;
lbl.mouseEnabled = false; btn.addEventListener(MouseEvent.MOUSE_OUT,onBrowseLblMouseOut); btn.addEventListener(MouseEvent.MOUSE_OVER,onBrowseLblMouseOver);
btn.addEventListener(MouseEvent.CLICK,onBrowseLbl);
btn.useHandCursor = true;
btn.addChild(lbl);
this.addChild(btn);

Then add the event handlers, for example:

private function onBrowseLblMouseOver(event:MouseEvent) : void
{
var newFormat:TextFormat = new TextFormat();
newFormat.color = 0x454545;
newFormat.size = 14;
newFormat.bold = true;
newFormat.font = "Arial";
newFormat.underline = false;
lbl.setTextFormat(newFormat);
}

Sunday, April 12, 2009

Keepaboo LifeBook Widget

Another fine release from the Keepaboo Corporation...
Check it out.

Keepaboo baby book

Tuesday, March 3, 2009

Experiment in Technical Analysis Theory

If you search the Web for an investment strategy to improve your trading results, you will soon be advised that "the trend is your friend". This seems to be a good start, for all you need is identify the trend and you are all set. This insight, roughly speaking, is 50% of Technical Analysis theory which aims to be capable of nothing less than predicting the future prices of securities, currency, commodities and whatever.

The rest of Technical Analysis theory is all about price patterns. Technicians search for archetypal patterns, such as the head and shoulders or double top reversal patterns, study indicators such as moving averages, and look for forms such as lines of support, resistance, channels, and more obscure formations such as flags, pennants or balance days [see Technical Analysis @ Wikipedia]. And why should we assume that price patterns are expected to re-occur in the future? because, we are told, history tends to repeat itself.

So how do technicians identify trends and price patterns? well, they use charts. Lots of them. Colorful, eye-catching charts. This is why Technical Analysis is also called charting.

Criticism of technical analysis theory is very wide. I'm bringing no news here when I claim that Technical Analysis fails to prove its case, that is to predict future prices. Indeed, the very basic assumptions of Technical Analysis are dubious, to say the least. Is the trend really a friend? which trend are we talking about here? of this hour? day? week? month? year? At any time circle, price movement is at some point reversed. How can we tell if this is the end of the trend or only a short break before the trend continues? A more truthful statement would probably be "the trend is your friend (until it isn't)". The same goes for the other core-assumption of Technical Analysis: "History tends to repeat itself (but sometimes it isn't)".

My claim is that Technical Analysis is basically a bluff based on a trick of the eye, like a cheap magic performed by the neighborhood clown in a children birthday party, hiding the pigeon in his pants. This statement deserves some elaboration I guess, so here it is.

I must admit: when I look at the colorful technical charts I'm usually convinced. The lines seem to clearly indicate what could be good entry and exit points. Take the very basic indicator - the simple Moving Average ("MA") - as an example. Whenever the price line crosses above the MA line I should go long, and close the position when the price line crosses below. How simple! Let's get rich!

However, as always the case with moi, doubts are crawling and knocking on my head. With all these colorfull charts everything seems to be too simple. Can it be the case that my eyes are fooling me? That what seems to be buying & selling triggers on the charts are actually more a result of random movements than of patterns & trends? I decided to check this out, by making a small experiment. Let's try to run these nice charts on random numbers rather on real prices and see how the technical indicators would look like. My experiment is available for the reader review in a form of small widget that generates random-based price line (in blue) with a simple 7-day MA indicator on top of it (in red). Play with it, but beware! if you have an itch to put your money on my random stock remember - it's just a Bluff...

As a reference to our random chart, let's start with some real charts. Click the well-known symbols below to load their charts.

MSFT
GOOG
AAPL
YHOO



Now, let's turn to our random chart. Click to Reload the radnom chart.


`