- Keepass2, KeeFox and Firefox in Debian
- Debian Developer
- Migration Debian from i386 to amd64 without reinstall (Cross Grading)
- N2M: pbuilder for i386 and amd64 on same host
- N2M: parallel build dpkg-buildpackage and pdebuild
- Windows CE: Assertion failed in wincore.cpp line 1034
- CakePHP: Baking a Application in Minutes
Currently I work on a small private home-automation project. The purpose to "control" the heating system at home (heat-pump system) via the Internet.
Okay, "control" is a too big word for the heat-pump as it has only 3 controlable modes, at least without reverse-engineering effort: "normal", "off" and "night reduction" by an external analog input. The goal is to shift energy consumption to the lower priced off-peak times.
I am still looking after an not-too-expensive but "good" NAS for my home network. There are quite a lot of differnet models out there, that will meet my expectations. Unfortuantly, I could not find a comperasion that shows all the features I want.
In this article, I try to assemble such a comperasion. But be warned: Its matched to the needs and features I want, sorted to the importance:
- Supports at least Samba. FTP, rsync and other non-proprietary protocols a plus
- MUST NOT use NDAS
- Unit must use a "common" file system (I case of hardware-failure, I want my data back)
- Enclosure must have place for all hardrives
- RAID support. That is you need at least two physical hardrives.
- Power efficient (otherwise I could recycle an old computer)
- Should be able to run custom software. So this usually narrows down to a linux driven box with any access to it (to enable ssh for example)
- Max. 350 € for 1 Terra Byte of gross storage.
- Not-too short on RAM
Models over 350 are not reviewed at all. This is simply over my budget I planing to spend. (Of course, if the manufacturer would send me a unit for review... ;-) )
I took a closer look at these candidates: Maxtor Shared Storage II, Western Digital My Book World Edition II, and finally the Thecus N2100.
[Updated Dec 10 2007]
BTW: I uploaded updated versions of my avr-gcc builds as debian packages: The files linked inlcude my patch to support the AT90PWM316*. The patch is already upstrea, and according Jörg Wünsche, it will be applied to the upcoming release of the official toolchain.
As the PWM316 chip is just a great device for lightning. I used the patched gcc already for a commercial project.
The story why I needed to create the patch reads as a WTF, and is therefore noteworthy: The hardware-team accidentially soldered the PWM316 into the circuit, instead of the PWM3B. As time was tough and new hardware not feasible in the projects timeline, I had to get the gcc running...
Well, thats off-topic: Here are the files:
Last week, at a local groceries discounter, they has an NAS on sale, but were already out of stock at the time I was there.
As I was not familiar with N(D)AS, I did some research, and found, that NDAS has some properties which I don't think they are appropiate for a NAS. Others would call this "just cost-optimized".
In this article, I described how to update the avr-gcc for debian to support some extra devices.
Now, the debian archives has been updated and now the original debian files have most of the patches applied, and also updated to more recent upstream versions.
Sometimes, programm size is everthing. This is especially true, if you are coding for a very constraint system like the AVR or you are going to write a bootloader, which should be as small as possible.
Well, I actually hit both of the categories, as I program a bootloader for a customer's project for a 8k-flash Atmel.
As I frequently need that information, also frequently I forget it again. (Usually, the C-Compiler has to care about it, but if you have to take over e.g a serial line, you have to know it.
Atmel AVR Endianess Cheat Sheet:
Example Value: 0x0A0B
All 8-bt AVRs: Little Endian in Memory 0x0B 0x0A (*adr: 0x0B, *(adr+1): 0x0A)
AVR32: Big Endian in Memory 0x0A 0x0B
LittleEndian is popular at Intel CPUs,
Big Endianess e.g at Motorola.