Received the spare parts a few days ago (2009-08-17). Total cost was €106, including shipping. The battery holder was out of stock, so I bended a thin (1.5mm) aluminium sheet into the right shape. It’s far from perfect, but it should do the job. However, some new problems popped up: The heli won’t spool up on its own.
This is probably something everybody knows, but I’ve been Googling for this answer for over an hour:
- BASEDIR=/whatever
- cp $DEBs $BASEDIR/.
- mkdir -p $BASEDIR/dists/$DIST/$COMPONENT/binary-amd64
- cd $BASEDIR
- apt-ftparchive packages . > dists/$DIST/$COMPONENT/binary-amd64/Packages
- echo “deb file:$BASEDIR $DIST $COMPONENT” >> /etc/apt/sources.list
- apt-get update
$BASEDIR is whatever directory you have space in (preferably an empty directory); $DIST and $COMPONENT are “jaunty-backports” and “main” in my setup, but you can vary.
You also might need to add the following line to /etc/apt/apt.conf to get rid of the “untrusted source” warning:
APT::Get::AllowUnauthenticated “true”;
I needed to convert a raw YUV image to something viewable on my computer. There are a few tools to do so, including the wonderful ImageMagick toolset. However, running my image through this did not work as is.
The source image is a frame from an HD-SDI stream, which has a color-depth of 10 bits instead of the usual 8. The sample packing seems to be UYVY, but using 16bit per component (with the lower 6 bits always 0).
Since I only wanted to have a quick view of the frame, I just discarded the lower 2bits (i.e. byte) and converted that instead. This perl-script discards the least significant byte:
while( read STDIN, my $block, 2 ) { my @value = split //, $block; print $value[0]; }
The output can be fed into ImageMagick’s convert tool:
convert -size 1280×720 -interlace none -sampling-factor 4:2:2 8bit.uyvy out.bmp
Place: Halle
Raptor
Tanks flown: 1
Time flown: 0h18 (cumulative model timer: 32h07)
Rx battery recharged with: 428+197 mAh
Tx battery recharged with: 548 mAh
Glow heater battery recharged with: 1246 mAh
Starter battery recharged with: 450-ish mAh (forgot to note down)
miniTitan
Flights: 0.5
Time flown: 0h06 (cumulative model timer: 3h23)
Heli battery recharged with: (2) balanced 2181 mAh;
Tx battery recharged with: see above
Comments:
Went flying after dinner, the wind had calmed down and the rain had stopped.
I had some trouble starting my Raptor (glow heater indicated only 1A instead of the usual 5A). Since it’s been a while since I charged it, the battery was dead. A few minutes at the charger solved the problem.
In the mean time, I took my miniTitan out. Did some flying back and forth and a few stall turns to regain confidence. Next I did some back-flips. This is where it went wrong. On my 3rd back-flip, I intended to keep the heli inverted for a second and continue the back-flip, but the ground intervened…
ssh-to-puttyssh-to-puttyIn Windows you can register “url handlers”. These are programs that are run when you try to open a URL (via Start->Run for example). “http://” for example is registered to Internet Explorer by default. “telnet://” also works. This is especially useful in combination with the URL-field of KeePass. Double-clicking on this field tries to “open” the specified URL.
However, “ssh://” is not a standard registered protocol. I’d like Putty to handle this. Also, “telnet://” gets you the standard windows telnet client instead of putty. Putty can be called with command line arguments. Supplying the “telnet://” url as a parameter works, but “ssh://” does not.
Hence, I wrote a very small wrapper program to accept “ssh://” URL’s and convert them to Putty command line arguments:
- Source code in C: ssh-to-putty.c
- Compiled Windows executable:
ssh-to-putty.exe(some virus-scanners seem to think this is a virus, exe is no longer available, please compile it yourself) - Registry commands to set putty as telnet-handler: putty telnet url handler.reg
- Registry commands to set the wrapper as ssh-handler: putty ssh url handler.reg
Some notes:
- The registry commands assume Putty and the wrapper are installed in C:\Progs\SSH. If this is not the case, you need to change the .reg-files accordingly
- The wrapper-program assumes putty.exe to be in the same directory as itself
I was looking for an easy way to parse a binary file. I know what the file contains (it’s an MPEG2 transport stream) and know the bit-field layout. It’s just a pain to figure the bits out manually in a hex editor.
Google pointed me to 010 Editor which supports binary templates, which is pretty much what I was looking for. However, this tool only runs on Windows and is commercial. Enough reason to look further.
That’s when I came across the Data::ParseBinary perl module, which is a true relief to use. It supports pretty much every thing you need to parse a binary file:
- Signed and unsigned integers
- Big and little endian
- 8, 16, 32 and 64 bit integers
- Bitfields
- Enum-types to specify your own names for values
- If-constructs: Fields are present or not depending on the value of another field
In short, an incredible tool!
rsync is a very nice tool to synchronize two directories, especially if they are on different machines. If you require confidentiality of the transferred data, rsync works great over ssh.
Besides the standard password authentication, ssh also supports public key authentication. This key-based authentication has the added bonus of having per-key options:
- you can restrict the source IP from which this key may be used
- you can force a command to be executed instead of allowing the connecting side to specify one
Since I like to follow up on my RSS-feeds from multiple locations and computers, a regular desktop-based aggregator does not fit my needs. I played around in Google’s Reader, which is a very nice tool. Personally I don’t like my data to be in someone’s cloud. Although unlikely, Google can decide to sell your RSS-ing habits to the highest bidder or vaporize your hard-gathered collection of feeds.
That’s why I wanted to host a Reader-like interface on my own server. Some Googling around – yes, they do have a very good search engine – I found this wonderful, open source, PHP application: feed on feeds. Some highlights:
- Keyboard shortcuts: read your feeds with only the keyboard, no clicking around
- Shared items: Create an RSS-feed of interesting posts you read
- Tagging: tag items with custom tags (manually or automatically)
In 10BASE-T, the Manchester-encoding guaranteed that the line would stay “active” with transitions. 100BASE-TX uses a different approach. This is done by translating every nibble (4bit) block into a 5bit block (4B5B coding). These 5bit blocks are specially designed to have the necessary transitions build in, while only adding 20% overhead, compared to 100% in the Manchester case. The official code-table can be found on page 144 of section 2 of the 802.3 standard [local copy].
100BASE-TX requires UTP cables of Cat5 or higher and utilizes 1 pair for Tx and 1 pair for Rx.