Ice BlockICE

ICE stands for Information Communication Entertainment and pretty-much covers all those functions in my life (and some other minor functions like low-voltage power routing and security-system). It is based around a fairly standard server-class computer core, running a Debian GNU/Linux Operating System, but is then quite heavily modified in both software and hardware. Physically, it is rather large - it can't actually be safely moved without dis-assembly (and the requisite knowledge of how to safely dis-assemble it). The individual parts don't count for anything particularly special on their own (in fact a lot of them are less-than-new and a bit junky -- I tend to re-purpose old technology, rather than discard it), but I am quite personally satisfied with the combined result.

I am often exploring ways to integrate more of my life into the ICE unit, generally by digitally storing it in the systems (even physical possessions often can be -- and have been -- re-created in the ICE's virtual reality engine).

Part of the bulk of my ICE is also sculptural -- those junk machine parts I collect tend to get welded/bolted/glued to it over time for a more sci-fi look.



I am in the process of rebuilding my ICE unit into a small, silent block of processing. My intention is to use a stack of solid metal disks with cavities machined out for components, enabling heat to be transferred out without noisy whirring fans. A low-ish TDP chip (currently looking at a next-gen AMD-APU) will also be required to facilitate this. The current design, while small, is certainly not intended to be portable, weighing in at an estimated 40kg+! It is intended to sit silently in the corner doing its thing 24/7.

This design is about the dozenth iteration, if I count some of my early converted-domestic-gas-cylinder designs which I started as long as 15 years ago, so my liking for cylindrical cases pre-dates the MacPro 'Ash-tray' by a good 12 years and any resemblance is purely coincidental. The technology keeps getting smaller, so my designs keep having to shrink! From a materials-cost and -handling perspective this is good, though it has caused some aesthetic issues that had to be worked through. I am also hitting the limit for passive-thermal-management as surface area has shrunk to the limits of what can support heat-disapation into air, even with lower TDP chips.

Rough concept render
Above is the current planed form for the next generation of the ICE processing core. Scale-wise, it is a little larger than the size of a 4 litre paint tin. Actual implementation won't begin until at least late this year (November-ish). At present I am specifying and pricing various components and making mock-ups from scrap chipboard to be sure I am happy with the scale and ratios.

The metal plates have beveled edges to give some interest to the sides as well as to hide the joins between each metal plate. The slight increase in surface area will help heat disapation also. Two of these 13mm plates are bolted together internally for each functional part, with the components sandwitched between in form-cut cavities. A bus-bar carries power and data up the stack of plates as needed.

The black tubes are supercapacitors to provide enough juice to carry through a breif power loss, or hybernate state to storage and shut down cleanly in the event of a full power failure.

Power and network connections are under the base and USB3 and DisplayPort connections on the top (where the black circle is in the above render).


Logically, the ICE-system will look something like below:
(the present system mostly resembles this model too, though it isn't as neatly integrated)
Logical diagram
I am running the public-facing network (red) and the firewalled area (green) on the same hardware stack, which in a critical system is not good practice, but for a personal-use server running a reasonably secure OS, is acceptable and more convenient. No VMs either - keeping processes separated and within their resource allocations is what a properly constructed OS is supposed to do! (VMs certainly have their uses, but this isn't one of them).

The Processing Block is where the bulk of the work happens. It supports both Client Functions of human-interface services (including 3D rendering) for local interaction with the server functions, which are responsible for processing and serving data to both the Local UI and the wider internet.

Appropriate Client functions can also be provided over an encrypted link to an authorised remote terminal (VNC).

Additionally, there is an interface socket for a "Helper A.I." module which is something I am experimenting with, presently on some really old junk PCs. Primarily intended for watch-dog functions (checking various server components haven't crashed and general automated system monitoring and maintenance) and a Personal Digital Assistant (think Apple's Siri or MicroSoft's Cortana. Hopefully not Clippy!)

Human Interface

The actual human interface (beyond the diagram) is more fluid as devices can change radically with time. For now it is a pretty generic Keyboard-Monitor-Trackball arrangement, with the addition of a 6-axis-controller for 3D control in immersive virtual environments.


upBack to Glenn's Project page.