Sunday, January 31, 2010

NASA Release Aeronautics eBooks

NASA have started to release the history of their aeronautical research as free eBooks. The Kindle, Kindle DX and Sony Readers are the only platforms listed, but the Sony Reader files are simple PDFs which can be comfortably read on virtually any machine. They are working on nook support.

The first book to be released is "X-15: Extending the Frontiers of Flight". The North American X-15 eventually reached 4,500 mph and an altitude of 67 miles (which qualifies as space flight) and this book packs a lot of techie detail, diagrams and photos about how this was achieved into its 644 pages. For example there is a detailed description of the pioneering work in computer-controlled simulators that supported the flight control development and pilot training. Digital computers were not fast enough at that time and so three EAI PACE 231R analog computers were used.

There is also a lot of fascinating information on the development of the engines, how problems with longevity and vibration were overcome to eventually reach 250,000 Newtons of thrust. It's an excellent read and I look forward to future releases from NASA.

Sunday, November 30, 2008

Java without the Caffeine

I'm writing this sitting by a river in darkest Essex, mid-way through a winter's afternoon. The river is running slow, brown and deep; further down it has overflowed the banks and submerged the footpath.

To my right the water runs through a weir, adding a pleasant background chatter to the silence otherwise only broken by the odd crow and a group of Explorer scouts mucking about in kayaks further upstream. On the opposite bank a lone fisherman freezes over his rod - he doesn't appear to be having a very successful afternoon.



It's about five degrees above freezing and I've been sitting here on a bench for nearly two hours writing some Java to traverse and manipulate an XML DOM tree. There's no Wi-fi or cellular connectivity here, no e-mail, IM or Twitter - the only tweets are coming from a blackbird in the hedge behind me and a Jay in a tree across the way.

Fingers and toes are beginning to feel a bit cold now, but it feels good to coding productively without the constant need for caffeine!

Monday, November 24, 2008

How to Migrate to Thunderbird Portable

I've been keeping my life on Flash storage since around 2004. I started off using an old SD card in a cheap USB reader as a lightweight method of carrying my daybook and notes between work and home. Over the years 600 web pages of technical notes, my personal journal, plans and action lists migrated to a series of ever larger replacement thumb drives. Today nearly everything I work on lives on a single 8 GByte Sandisk drive.

As the drives have got larger I've slowly migrated to a portable software environment running off the same thumb drive, so that whether at a work PC, with a notebook on the train, or one of the bigger laptops at home I have consistent access to applications and data. Most of the thirty applications I regularly use come from PortableApps.com with a smattering of others configured with the help of PortableFreeware.com.

PortableApps.com recently released a new version of Thunderbird Portable and given my son's assertion that playing The Sims is rather more mission critical than my e-mail it seemed clear that now was a good time to move that last application off of the family laptop and onto the thumb drive. However with an archive of more that 16,000 e-mails I was somewhat concerned at how straightforward that would be.

Like all downloads from PortableApps.com installing Thunderbird Portable 2.0.0.18 was easy, just double click, point it at the correct drive and stand well back. Once installed, I started Thunderbird from the PortableApps menu (well the geek.menu fork, truth be told) and went through its initial set up, supplying dummy data when prompted. Delving around on the thumb drive then revealed that Thunderbird had created a folder of profile information at:

E:\PortableApps\Thunderbird Portable\Data\profile\

This folder is easily identified as it contains 'Mail' and 'extensions' sub-folders and a variety of ini, dat, rdf, js and db files.

Going back to my original Thunderbird installation the profile data was in the default:

C:\Documents and Settings\frog\Application Data\Thunderbird\Profiles\xxxxxxxx.default

folder (where xxxxxxxx is a random string of characters that, no doubt, hashes my password, inside leg measurement and all my credit card numbers.) Deleting the contents of the profile folder on the thumb drive, I copied the contents of the old

C:\Documents and Settings\frog\Application Data\Thunderbird\Profiles\xxxxxxxx.default

into the now empty

E:\PortableApps\Thunderbird Portable\Data\profile\

ignoring the fact that the two pathnames are structured rather differently.

Starting Thunderbird Portable appeared to work correctly, with all the old messages and folders appearing. However the status line seemed to indicate it was struggling to open a particular message. Exiting Thunderbird, which probably caused it to rewrite its config data, and restarting it solved the problem.

In total it took about ten minutes to move 16,000 archived messages, folder structures, and account settings to the thumb drive. Despite the difference in folder path structure it worked first time and I was impressed by how smoothly Thunderbird handled the change in profile.

Wednesday, November 5, 2008

Initial impressions of the Korg DS-10 for the Nintendo DS

The Korg MS-10 was an entry-level monophonic synthesizer from the 70's. It had a 32-note keyboard and a control wheel driving a single VCO, VCF and VCA.

Perhaps a little background may help here. The keyboard and control wheel each generated a voltage that could be fed as input to the various modules. The Voltage Controlled Oscillator (VCO) generated a number of different waveforms with a frequency dependent on the input voltage. So given the voltage from a particular key on the keyboard it would generate the relevant frequency.

The Voltage Controlled Filter (VCF) worked in a similar way. The voltage, from the Control Wheel for example, would effect the frequencies passed by the filter.

The Voltage Controlled Amplifier (VCA) could vary the amplitude of its input signal depending on a control voltage.

Finally the Envelope Generator shaped the amplitude of a note through time. Imagine hitting a piano key. The amplitude of the note increases from zero to its peak very quickly as the string is struck. It then drops down to a level at which the note is sustained before finally decaying back to silence. The Envelope Generator is responsible for generating a control signal that models such an envelope. This can be fed into the VCA to simulate the sound of a conventional instrument.

Now the thing that really fascinates me about analogue synthesizers is that all the parameters of these modules are fully adjustable (there are lots of knobs to twiddle). The various modules can also be connected together in different ways via a patch panel. For example feeding the output of one VCO into the input of another will generate vibrato effects.

That was 1978. Fast forward to thirty years later and the introduction of the Korg DS-10 on the Nintendo DS. This is not a 100% perfect emulation of the Korg MS-10. But in many ways it is so much more. It emulates two mono synthesizers loosely based on the MS-10. In addition each has a 16-step sequencer, roughly equivalent to a Korg SQ-10. Finally there is a four pad drum machine with its own sequencer, a six channel mixer and an FX unit (delay, flanger and chorus).

Each synthesizer has a 24-note keyboard and a Kaoss Pad. This is a X-Y touch pad where the coordinates of a finger touching the pad generate an X and a Y voltage that can be mapped to parameters such as note, volume, pan etc. Sweeping a finger tip in patterns around the pad can produce control signals simply not possible from the keyboard.

So how well does the Korg DS-10 work in practice? Is is a toy or a serious musical instrument? Initial impressions are very favourable. Emulating two MS-10's gives the possibility of richer, deeper sounds and for stereo effects. Add in the drum machine and reasonably complex compositions can be attempted. Incidentally the original MS-10 manual recommends combining two synthesizers for a richer sound.

Sound quality seems pretty good, though limitations of the DS hardware means that bass notes are perhaps not as good as they could be. With very complicated patches and absolutely everything running there were occasional hints that the processor was struggling to keep up. But this would not be a problem in normal usage.

What is a slight problem in normal usage is the size of the font used for the menus. The graphics are gorgeous but with my 48 year old eyes the menu text is quite hard to read in places.

Creating a song from a series of sequencer patterns is not particular intuitive for someone not used to sequencer programming. Here, the manual could have done with more examples and tutorials, including a walkthrough of a typical workflow. However once you have a mental model of how a song is built up the system is powerful, flexible and easy to edit.

In summary this is a fantastic software package. However it has a steep ramp-up and is one Nintendo DS program where it really pays to read the manual in detail. You'll need to do a lot of experimenting to get something really musical out of the DS-10, but the end result can be absolutely fantastic.

Monday, November 3, 2008

Korg DS-10 Synthesizer

Stumbling on the Korg DS-10 emulator for the Nintendo DS on Amazon sent me spiraling back to the early seventies. As a thirteen-year old brought up on late 60's synth-pop I was fascinated by the thirteen part series in Practical Electronics magazine to build your own analogue Sound Synthesizer.

The series began in the February 1973 issue and each month a new module was added; voltage controlled oscillators, ring modulators, noise generators etc. I remember pouring over the circuit diagrams and dreaming of vast arrays of pots to twiddle and spaghetti like patch leads. Unfortunately my schoolboy pocket money didn't stretch to that many 741 op amps and by the time a DIY keyboard and one VCO had been built I was out of funds. Another youthful dream horribly dashed on the rocks of reality.

Sound on Sound have an interesting article on DIY synthesizer projects that describes the PE Sound Synthesizer and its descendents. One phrase, describing the original article's audience:
"aimed at the anal-retentive schoolboy with no interest in girls or sports. The schoolboy would have had to have some kind of qualification in either physics or maths to complete such a task, and few did!"

gave my wife much amusement for some reason.

And now there's an emulator for the classic Korg MS-10 running on the Nintendo handheld. According to the spec sheet it is not an 100% emulation and adds enhancements such as a sequencer. It's unlikely that the DS will get close to reproducing the famous MS-10 fat bass sounds but in a few days time I'll be able to live my boyhood dreams and find out.

Monday, April 7, 2008

How to unbrick a Navman S30

As you may recall my Navman S30 had decided not to boot anymore. It would get to the start up screen (picture of woman hanging out of car) shows it for a few seconds, display its software version number and then reset. That cycle was then repeated for ever, never getting to the main menu.

I found that it was trying to read some missing .INI and .XML files. Eventually I managed to restore the missing files by doing a reinstall of the Navman software. However the boot up still failed, reporting other files could not be read. Those files existed and their contents looked reasonable. Copying the problem files and renaming the copies to the original names allowed the boot to get slightly further and then fail on yet another file.

I also found that some directories had more than one file with exactly the same name and identical contents. They appear to be one file with multiple directory entries, so I suspected the Windows CE Core 5.0 file system was corrupt.

With some trepidation I decided to reformat the internal flash drive holding the SatNav software. I found that the following worked for me. But do not try this unless you know what you are doing and your Navman S30 is already bricked:

  • Plug the Navman S30 into an XP machine via USB. It will appear as two drives, in my case E: holding the SmartST SatNav software and F: being the S30's SD slot.

  • Use NavDesk 2008 to backup the user data in the usual way.

  • In Windows XP "My Computer" right click the drive holding the SmartST software (E: on my machine) and select "Format...". Select FAT for the file system and leave the volume label blank. Do not tick the "Quick Format" checkbox. Click on [Start] and cross your finger.

  • When the drive has been formatted go to NavDesk 2008 and run Tools > Reinstall software on your Navman.

  • Then ran Tools > Recover keys.

  • Put the Navman DVD in the drive, click on "My Maps" in NavDesk 2008 and reload the maps you need.

  • Check that the Navman S30 now boots up and works properly.

  • Finally use NavDesk 2008 to restore the backup of the user data. If it then fails to boot, the backed up data was corrupt and you will need to repeat the above steps but not restore the backup, losing your preferences, favourites etc.


The whole process took about 20 minutes.

All seems to be working fine now. Just need to remember to take a laptop,
installation DVD, USB cable and Internet connection every time I take the S30 out
in the car...

Tuesday, March 25, 2008

Navman S30 Reboot problem - quick update

I downloaded the latest system software for the S-series and installed it. The program updates Navdesk 2008 and then offers to install the latest software on the S30. This appeared to work until it asked me to disconnect the SatNav from the PC and wait for it to reboot. There were dire warnings about switching it off before it got to the user agreement screen. Unfortunately although the image update appeared to work fine it then went straight back into its reboot cycle - but displaying the new software version number.

I switched the S30 off and plugged it back into the PC. The installation software went ahead and installed a new version of SmartST 2008, but it made no difference. It still reboots over and over again...

Navman S30 Reboots and Reboots and...

The Navman S30 is a budget SatNav with a pretty good spec that currently sells for well under a £100 in the UK and appears to be very popular. I've been using one for a few months and have been impressed with the device. It does have a few idiosyncrasies - for example, you cannot search for junctions on the M25 - but on the whole has been extremely useful and reliable.

Switching the S30 on today put it into a continuous loop of reboots. It gets to the map loading screen (photo of a woman hanging out of a car window), displays the software version number, waits a few seconds and then repeats... for ever.

The Navman Technical Support FAQ is no help - they suggest resetting by holding the power button down for 6 seconds and then turning it back on again. A quick Google reveals a fair number of users of the S-series describing the same symptoms but no resolution. Everyone who reported trying to contact Navman technical support appears to be still waiting for a response.

What to do? Plugging it into a PC and switching on does put it into USB Mass Storage Device mode. So I tried running NavDesk 2008's "Reinstall software on your Navman" option. Directly I accepted the licence agreement it reported:


There is not enough space to install these option(s).
Please free up some disk space or modify your selections.


I had not made any selections and there has been no additional maps, voices or other data installed on the device but opening the S30 as a Windows drive and looking at its properties shows 0 bytes free. A delve into its file structure reveals that it is running Windows CE and that it has filled any free memory with log files. In the "My Documents" directory were 6 Mbytes of log files that appear to list events such as user inputs, travel distance and speed and so on. I deleted them.

In the root directory there was an app_asrt.txt file which is a log of its latest attempt to boot-up. There were also a hundred app_asrtNN.txt files fromt the last hundred boot attempts, most were zero bytes due to the lack of disk space.

The app_asrt.txt file reports that it is trying to read:

\My Flash Disk\Program Files\Navman\SmartST_CE\UserData\device_settings.ini

in binary mode. Later it tries to read default_settings.xml from the same directory. The directory exists but only includes a user_settings.xml.

Looks like a reinstalling the system software will probably fix this. Just need to work out how to get the new software on to the S30 without bricking it.

Friday, February 22, 2008

Asus EEE Arrives and Samba Goes

I've finally got hold of an Asus EEE PC 4G. Initial impressions are very good, it feels robust and of good quality. There has been some mention of poorly aligned keyboards in recent models, but this one is fine. Despite being a little cramped the keys have a decent feel and I was touch-typing on it without too many errors by the end of an evening.

Before allowing it onto the InterTube I first disabled Samba. Samba allows the EEE to interoperate with Windows File and Print services, but unfortunately the version installed has a security flaw. There are various options for fixing this, including removal of Samba altogether or updating to the latest version. However I decided to just stop it running automatically at boot-up. This takes a little command line tweaking but is pretty easy. Here's what I did:

Hit Ctrl-Alt-T to pop up a command line prompt and type:

ps -e | grep smbd

The ps -e command lists all the processes running on the machine; about 60-odd on the EEE at rest, making the Samba processes hard to spot. The pipe symbol ( Fn-Shift-Z on the UK keyboard) 'pipes' the output of one command into another, in this case grep smbd. The grep command is an incredibly powerful search facility, but in this incantation it just returns any line containing 'smbd', the name of the Samba process. Running that command line gives something like:

1840 ?   00:00:00 smbd
1841 ?   00:00:00 smbd

confirming that a couple of Samba processes are running. Incidentally man followed by the name of a command displays the 'manual' for that Xandros command.

Now at boot-up the EEE runs a script called /usr/sbin/services.sh which starts various services including Samba. Near the end of the file the following lines start up Samba:

mkdir -p /tmp/.samba
/usr/sbin/invoke-rc.d samba start

We can comment them out by placing a hash ("#") at the start of each line. The EEE has various editors available from the command line, but I used Vi - it is something of an acquired taste and can be intimidating to new users because of its initially steep learning curve, but it has the advantage that it is available anywhere, under virtually any OS. There are also circumstances when Vi is likely to be the only editor that will work on a partially booted Xandros.

Vi is a modal editor and most keystrokes you type will be interpreted as commands rather than being inserted into the text. You have to switch into Insert mode to enter text. It is essential to spend some time practicing on scratch files and going through the tutorials on the Vi Home Page before going near anything essential with Vi. The most important Vi command to know is [Esc] to get out of Insert mode and then :q!. Colon opens the command line and 'q!' forces a quit without saving.

Editing the script with:

vi /usr/sbin/services.sh

works fine until you try and save the file, when Xandros will complain:

E45: 'readonly' option is set (add ! to override)

Trying :w! as suggested will also fail with:

"sbin/services.sh" E212: Can't open file for writing

This is because you are logged into Xandros as a user who doesn't have the authority to change this system file. You need to be logged in as the super-user 'root' instead. Fortunately you can use the sudo command to give yourself limited, audited, access to super-user permissions. So typing:

sudo vi /usr/sbin/services.sh

gives full editing access to the file. It can then be changed with the following commands:

  • G - moves the cursor to the bottom of the file

  • Cursor up - to the start of the first line that needs commenting out

  • i - Go into insert mode, then type '#' and then [Esc]. Don't try and cursor down in Insert mode - it will end in tears

  • Cursor down - to start of second line that needs commenting out

  • i - Go into insert mode, then type '#' and then [Esc]

  • ZZ - Save and Exit


The relevant part of the file should now read:

# Store samba run state in /tmp, as it gets written to frequently
# mkdir -p /tmp/.samba
# /usr/sbin/invoke-rc.d samba start

Restart the EEE and run ps -e | grep smbd again. This time no lines should be listed showing that Samba is no longer running.

Details of this fix, along with discussion of alternative solutions are given in the this thread on EeeUser.com.

Saturday, February 16, 2008

Asus EEE 4G Supply in the UK

There's some interesting discussion about experiences obtaining EEE 4G's in the UK on mediaprices.co.uk's forum.

Another useful resource is the Asus EEE PC UK Stock checker, though it's not always entirely accurate. I was excited to see white 4Gs listed as being available from Amazon for £270. A bit steep, but rather tempting. Following the 'Buy' link, however, revealed that the Amazon Marketplace supplier was actually asking for £398.95 + £4.50 P&P...