- Automatically adjust the color space of distorted map tiles.
- Makes assumptions about logical color assignment using data from different zoom levels.
Status: Was fun - abandoned
|Java||Java Advanced Imaging API|
- Modeled, simulated and built a hybrid rocket motor with nitrous oxide and salami as propellant.
- Successfully ground tested.
Status: Requires investment and better weather
The CNC mill was initially operated using WinPCNC which turned out to be limited, error-prone and confusing.
- Researched alternatives and decided EMC2 to be the best candidate (open source, feature-rich and stable).
- Extracted physical parameters from the CNC and configured EMC2.
- Created a custom Ubuntu live CD for evaluation.
- Created several maps
- Wrote an AI for survival maps using formularAI
|Wesnoth Markup Language||FormulaAI|
Cross Platform/Open Source - Laser Cutter Driver
The Metalab Laser Cutter (Epilog Legend 36Ext) is shipped with a windows-only driver which needs to be operated from Corel Draw. In addition job optimization is insufficently implemented and might even lead to undesired results.
- Reverse engineered the PCL based job format
- Implemented cups backend
- Wrote a postscript printer description
- Implemented optimization algorithms avoiding problematic cutting order and reducing job duration.
|Laser Cutter||C++||STL||Boost C++ Libraries||CUPS||Postscript||PPD||PCL||HPGL|
In the course of Metalab's participation in the Nokia App Forum i explored the N900 device. The recommended development environment, a VM image provided by the Maemo project turned out to be unready and undocumented.
- identified problems and figured intentions
- upgraded, cleaned up and fixed it
Status: In progress/stalled - basically working though qemu's limited support for ARMel still prevents productiv use
|Virtual Machine||Linux||Gnu Compiler Collection||Scratchbox|
Media stream tinkering.
Status: Never ending
JNBD - A transparent compressed network block device daemon
JNBD is a NBD daemon implementation in java. But instead of serving an actual block device it transparently compresses blocks into files. Its primary use is to serve a read/write compressed storage device in a platform independent manner (on the server side!) over a network. Any filesystem can be setup on a jnbd instance without the need for the actual filesystem to support RW compression. by Amir Hassan Status: Beta
- How to CNC using Open Source Software
- How to create your own Custom Live CD
- Ruby for Beginners
- Shell/Scripting for Beginners
- Maemo/N900 Development - Getting started