Cannot save photos on jailbroken iPhone 4 camera roll: FIXED

iPhone 4 A few applications recently started failing to save photos to the iPhone camera roll. A quick dig around via SSH confirmed this; it was not that they were saving but were somehow hidden – they were not there at all.

It seems that some kind of permissions error had crept in over time. Connecting via SSH and issuing the command “chmod -R a+rwx /var/mobile/Media/DCIM” fixed this.

NB: Be aware that this grants all users/applications read/write access to the photo directory.

iPhone 4 image copyright © ji young YOON, licensed under Creative Commons. Used with permission.

Windows: keyboard layout has changed spontaneously

keyboard I’ve recently noticed that the keyboard layout on my Windows XP PCs is spontaneously changing from UK to US. I suspect that this is linked to a piece of software I use called Input Director (which allows you to control several PCs/monitors from one keyboard/mouse).

Whatever the cause, from time to time my UK keyboard starts operating in US mode (so, for example, the following symbols are all swapped around: ", ', #, £). This is inconvenient, to say the least.

The logical place to look would be in Regional Settings/Languages, within the Control Panel. Nothing had changed there however: UK was the only layout showing as installed. Advanced Text Services were switched off and all the relevant keyboard shortcuts were disabled.

In my search for a solution, I came across this page, which describes a similar situation. Within the comments on that page, one contributor has posted:

Try holding ‘alt’ and pressing ‘shift’ three times.
alt+shift+shift+shift

The mysterious Jim doesn’t explain why this works – and I have yet to find any documentation, but, sure enough, Alt-Shift-Shift-Shift does indeed reset the keyboard layout back to UK. Further repetitions of the keyboard combo have no other effect, so this is a reset rather than a toggle.

Office has a mind of its own

Microsoft Office products can exhibit a similar behaviour. If you’re finding that some MS Office product is using the wrong keyboard map (but other programs are fine), try this: First click on the Office program, somewhere you can enter text. Then press the left shift and alt keys together. You should be returned to your default keyboard mapping.

You can actually remove the unwanted keyboard layout from Office – note this is separately managed from the Windows keyboard layout, for some reason. In one of the Office programs (for 2010 onwards), click File -> Options -> Language. If you see more than one “Editing Language” in the list, select any you don’t want and click “Remove”.

Keyboard image copyright © yum9me, licensed under Creative Commons. Used with permission.

Install Ubuntu from floppy + network; no CDROM

Ubuntu Logo This blog entry brings together instructions from various other source on the internet, for a particular scenario:

  • Compaq Evo N1015v laptop (“the Laptop”) – should work on many other machines though
  • CDROM drive is faulty – cannot boot or read from it
  • Network card/BIOS cannot natively boot from the network
  • Cannot boot from USB
  • The Laptop does however have a floppy drive
  • Windows is currently installed on the Laptop
  • Another Windows-based computer (“the PC”) is available and both machines are networked and connected to the internet

The objective was originally to have XBMC running on a now-defunct laptop. Unfortunately it transpired that the graphics card was too old and obsolete to be supported by XBMC. Nevertheless, we can still use the Laptop for many other purposes.

The steps

  1. Find out what network card is installed on the Laptop. In my case this was easy – within Windows, the device manager told me it was a Realtek RTL8139 something-or-other. Otherwise, Google can help.
  2. Still within Windows on the Laptop, use the gPXE ROM-o-matic to create a bootable floppy disk for this network card. Very easy. Select the most recent “production release” >here<. Choose the correct NIC type (in my case “rtl8139”) and click “Get Image”.
  3. Still within Windows on the Laptop, write that disk image to a floppy disk using RawWrite.
  4. Following the instructions on the Ubuntu documentation site, download the appropriate netboot files for your architechture and set up tftpd32 on the PC.
  5. With tftpd32 running on the PC, reboot the Laptop from the floppy (set BIOS to boot from floppy first). This should automatically boot into the Ubuntu installer – select “install” and proceed with Ubuntu installation over the internet. This will take a long time, even over a fast internet connection!
  6. If the installation is on an older machine, it would be worth selecting “Xubuntu desktop” (rather than “Ubuntu desktop”) at the software selection screen. This installs a leaner desktop system. After the installation is complete, run aptitude from the command line or Synaptic Package Manager from the desktop to choose any other software packages required.

Image copyright © Canonical Ltd. All rights acknowledged.

Fine-tuning divert to voicemail for iPhones (and Android, BlackBerry, etc.)

Hi! This is the one of the most viewed (and I hope, one of the most helpful) pages on my web site. Thanks for visiting! If you find the information here useful, please feel free to express your appreciation in the comments or, even better, by grabbing a copy of my novel. 😉 >more info<.

– Rob

Answerphone by jypsygen http://www.flickr.com/photos/jypsygen/3461757736/sizes/l/For some reason, the iPhone 4, iPhone 4S and iPhone 5 (with the current or recent versions of iOS) have very few options for call diversion. Fortunately, it is possible to set up all the usual diverts using network codes from the keypad. To divert to voicemail, you need to know your <voicemail> number (see the section below).

The instructions below work regardless of phone operating system, so do work for Android
, BlackBerry and other devices. Those phones tend to provide these features in a more intuitive fashion, but if you can’t find the settings, the procedures here should work anyway.

Press the call button after entering the codes below:

Function Dial
Activate divert all **21*<voicemail>#
Deactivate divert all ##21#
Query divert all *#21#
Activate divert when no answer* **61*<voicemail>#
Deactivate divert when no answer ##61#
Query divert when no answer *#61#
Activate divert when not reachable **62*<voicemail>#
Deactivate divert when not reachable ##62#
Query divert when not reachable *#62#
Activate divert when busy **67*<voicemail>#
Deactivate divert when busy ##67#
Query divert when busy *#67#

*You can vary the number of seconds to wait before diverting when there’s no answer. The delay can be between 5 and 30 seconds. Enter that as a two digit number (05 to 30) in place of “<xx>” in the following code: **61*<voicemail>**<xx>#

Voicemail numbers

On the UK T-Mobile network, your voicemail number is usually +44063, followed by your mobile phone number (without the leading 0), e.g. if your phone number is 07123456789, the appropriate voicemail number is +440637123456789. Long-press the 0 key to get the +. BUT! in the voicemail number prefix (+44063) , the ’63’ may be something different for your phone – e.g. for the Fresh sub-network, the prefix is +44060. You can check the correct prefix by entering *#67#.

Voicemail numbers for other networks are more straightforward:

  • O2 901
  • Orange +447973100123
  • Virgin 212, or try prefixing your mobile phone number with +44002 (dropping the leading 0)
  • Vodafone 121

Answer phone image copyright © jypsygen, licensed under Creative Commons. Used with permission.

Cleaning and speeding up slow Windows PCs

stupid computer PCs tend to slow down over time, usually as a result of the increased demands placed on them. The good news is that the situation can often be improved dramatically without having to shell out more money. For sure, one of the biggest wins is to install more memory (if possible), but after that, here are the steps that I personally follow when cleaning up machines for colleagues and friends.

  • Check the list of installed programs and ensure that you only have one internet security suite/virus scanner installed. Remove any extras.
  • Uninstall all software that you know you’re not using. If there’s software you’re not sure about or don’t recognise, feel free to add a comment to this post and I’ll try and offer an opinion. The best option for uninstalling software (this point and the previous point) is to use Revo Uninstaller (Freeware version) instead of the Control Panel. It does a more thorough job than most programs’ uninstallation routines:
  • Use CCleaner. Check the options carefully – you don’t necessarily want to select them all. If in doubt about any item, don’t remove it.
  • Use something like SpaceMonger to track down big files that you can afford to delete. If you look at the “Free Software” tab on the download page, you’ll find the old version 1.4.0, which is perfectly adequate.
  • Defrag with JkDefragGUI or its successor MyDefragPowerGUI (once it’s out of beta). The default options should be fine. If you can find the registry optimization options, use them too.
  • So-called “registry cleaners” usually do more harm than good and are best avoided.

On the subject of installing more memory, I invariably use Crucial for home and business. Crucial’s service is very reliable and there is an online scanner that in most cases does a good job of checking your system and advising you on the upgrade possibilities. I don’t get any referral fees from Crucial by the way!

Image ownership unknown. All rights acknowledged.

Tips for improving lithium-ion laptop battery life

Li-ion laptop battery Replacement batteries for laptops can be quite expensive, so here are a few ideas to get the most out of your battery in terms of charge and overall life.

Background information

Most modern laptop batteries are of the lithium-ion (“li-ion”) variety. You can expect them to last two to four years if properly cared for. They will degrade over time, whether or not they are in use. They last best at a temperature of 15°C/59°F, although it is unlikely to be practical to use them at this temperature.

This is a chemical technology, which is under continual development, so it is entirely conceivable that a new li-ion battery for an old laptop will last much better than the original battery did. This and other factors make it fairly hard to predict how long your laptop will last on one charge. All you can do is to try and get the best out of your particular battery.

Did you know? Early li-ion notebook batteries were known to explode! Modern batteries have protection circuits built in which prevent the lithium ion converting into unstable lithium metal.

Power consumption tips

  • Reduce the brightness of your screen when running on batteries.
  • Use a blank screensaver, and set it to operate after a relatively short period of inactivity. Better still, switch off or hibernate your laptop if you won’t be using it for more than 5 minutes or so.
  • Set your power options (e.g. in Windows control panel) to minimize power consumption. This includes having hard drives power down as much as possible.
  • Switch off wireless networking, if you’re not using it.
  • Unplug all PCMCIA cards (or similar) and USB devices that you’re not using. Ditto optical drives (CDROM etc).
  • Certain specialist notebook graphics cards can be set to run “underclocked” at less than their full potential. This saves energy. Do this with caution though, because it can cause conflicts with certain graphics software.
  • Close all the programs you’re not using. This includes all the programs that run in the background, unused services in Windows, etc. Which services to stop is beyond the scope of this blog entry.
  • Certain sound chips have a power saving mode that can be activated via the control panel.

Caution when hot! It is inadvisable to use a li-ion battery when particularly hot. Heat can generally be a problem with laptops, so make sure that all the vents are clear, that the laptop is not sitting on a highly insulating material (e.g. sat on a duvet when used in bed!) and that all fans are operating as they should.

Battery life tips

  • Do not keep the laptop plugged in whilst the battery is installed; this keeps the battery on a permanent charge/ discharge cycle which will cause it to age rapidly. Instead remove the battery if you’re running on AC power.
  • If you’re going to store the battery or leave it unused for any length of time, discharge it first to about 40% capacity – never fully discharge a li-ion battery. Aim to store it at around 15°C/59°F (see above).
  • You do not need to discharge or charge a li-ion battery fully – they do not suffer from the “memory effect” experienced with nickel cadmium or nickel metal hydride rechargeables. So only discharge partially – avoid going below 20% capacity if you can.
  • When the battery is full or at over 95% charge, stop charging it!
  • Don’t bother buying old stock of batteries no matter how cheap, since they will have degraded for the above reasons.

Remember to recycle. Li-ion batteries should be recycled wherever possible. Your council may have suitable local facilities.

For everything you could possibly want to know about batteries in general, visit the Battery University!

Photo based on battery image copyright © photomartimages, licensed under Creative Commons. Used with permission.

Linux on a Toshiba Portege 3300CT

3300 A colleague at work passed an old laptop to the department – the intention being that we put it with the other Waste Electrical and Electronic Equipment for disposal. It’s an old Toshiba Portégé 3300CT which would originally have been supplied with Windows 95 but which was now running Windows 98. “Running” like a three-legged dog. It’s a sweet little laptop though and I couldn’t quite bring myself to consign it to the scrap heap, particularly when it seemed to be fully functional. “It needs Linux!” I thought to myself.

I’ve installed Linux on a few older machines, to drag a bit more life out of them. VectorLinux has been my distribution of choice in the past, but on this occasion I really struggled to get it to install. There were a few problems:

  • The laptop has limited ports and no docking station. We’re stuck with PCMCIA, a single USB 1 port, a modem, a proprietary floppy drive port and not much else.
  • There is an external PCMCIA CD-ROM drive. Eventually I discovered that you can boot from this if you hold down “C” during startup. Unfortunately driver support for this CD-ROM drive is limited. During the VectorLinux install, it could boot from the CD but subsequently could not find the CD in the installation process.
  • It is possible to boot from floppies. Tracking down a floppy-initiated install for VectorLinux is a challenge, but I found that some of the archived Slackware distributions have a three-disk set floppy boot process that loads sufficient drivers to enable installation to continue from an ISO image stored on the existing Windows partition.
  • Unfortunately, the VectorLinux install didn’t seem to recognise any of the PCMCIA or USB network cards I threw at the laptop. I searched for manually installable drivers (and indeed found some – source code only) but the Linux environment was unable to make the drivers.

In my wrangling with VectorLinux, I removed as much bloat as possible from Windows 98. Having installed a USB network card I was able to transfer an ISO image for the install onto the Windows partition. I then shrank this using FIPS (you have to restart in DOS mode). VectorLinux is able to install from an ISO image on the hard drive, once you’ve got the kernel and ram disk loaded up.

Because VL didn’t recognise any network card, I started to cast my eye wider – tried booting from a Knoppix Live CD (no dice) and finally settled on attempting a Debian install. I’ve had good results with Debian in the past, particularly with hardware support, but I didn’t consider it to start with because I think of it more as a “full blown” distribution – not necessarily one best suited to older, slower hardware.

To give Debian “room to breathe”, I thought it best to place the ISO image (for CD 1) on a partition more or less on its own. To do this, I removed the hard drive from the laptop (a bit of a fiddly job, but do-able). I popped it into a USB hard drive caddy and then used another PC to clear out and defrag the Windows partition and copy across the ISO, Linux and initrd images. Having done that, I attached the USB caddy to a laptop, booted the laptop with a GParted CD and resized the Windows partition leaving just a little bit more space than the ISO required. That done, I returned the laptop drive to its normal location.

Using a Windows 98 boot floppy (DOS wouldn’t work since the parition was FAT32) I copied loadlin and the Windows 98 “system files” onto the hard drive – it could now be booted from again.

Finally, I booted from the hard drive and issued the command “loadlin vmlinuz /dev/ram rw initrd=initrd.gz”. The installer fired up, found my ISO image and most importantly recognised my USB network card. The system is now fully installed and up and running.

I’m not quite sure what I’m going to use it for – possibly as a network monitoring system or for some web development testing work. For sure, it’s not going in the bin – just yet.

Feel free to comment if you would like me to expand on any of the points above.

Image copyright © Inverse Net. All rights acknowledged.