Copying a file increasing in size

This is a quick hack, for when I used udpxrec (part of udpxy) to record an IPTV stream to an mpeg file, but instead of saving it to a network share (to watch it with some delay on my OpenElec box), i saved it to a local drive (by mistake). So here was a file, gradually increasing in size, which i wanted on my network drive (to start watching before the actual show/recording is finished). cp of course wont work, since it stops when it detects the end of file (does not detect new data being added, and wait for it), so you need to use something else.

When you think of a file with data being appended at the end, the first thought is “tail -f” (-f = follow and print the data being appended). Since tail only prints the last few lines (or bytes), you need to set it to output from the beginning with the “-c +0” (output bytes starting at the zero-th byte). I also pipe it through pv to follow the progress and copy rate.

So the command is:

tail -f -c +0 /path/source.mpg | pv > /destinationpath/destination.mpg

 

Playing with a cheap ($10) logic analyzer

A long time ago I ordered (eBay) and recieved a very cheap logic analyzer (it came out to be a Saleae clone). I havent really played with it enough, but I decided to test it.

It connects to PC via mini(!)-USB cable, and has 8 (+2 gnd) pins on the opposite end. The label marks it as a 24MHz 8 channel analyzer. I’ve connected it to a USB->RS232 adapter (from an old mini/nano Arduino kit).

Logic connection

I expected it needed some weird Chinese software, but it worked with original software from Saleae (which is nice).

Logic1
Screenshot with data already captured

Capturing data is also very easy – the only two options are sample rate and data capture duration.

Data capture options
Data capture options

After the capture timer is over, the program shows logical levels on a time graph (first screenshot) – it does not seem to autodetect the protocol used. After selecting the protocol and protocol options (mainly the correct pin/s) it also decodes the actual data (“test123” in this case).

Supported protocol decoders
Supported protocol decoders
Async serial options
Async serial options

As it can be seen on the first screenshot, it correctly decoded the data sent via the RS232 adapter.

For $10, it’s a great toy. It probably has some timing/sync issues, and the casing isn’t that great, but for that little money, who cares!