Adventures with a Single Board Computer


Jim Jackson <jj@franjam.org.uk>



Initial Thoughts

This document can be found at http://www.franjam.org.uk/linux/sbc.html


The SBC chosen

  Impulse Corporation Limited
  Unit 2 Littleton Business Park
  Littleton Dive, Huntington
  Staffordshire, WS12 4TR
  Tel:  01543 466 552   Fax: 01543 466 553
  Web:  http://www.impulse-corp.co.uk

IAC-H553 Features

+5V   - 2.20A
-5V   - 0.01A    
+12V  - 0.01A
-12V  - 0.01A
Operating           0C - 60C
Storage           -20C - 70C
233MHz CPU tends to run warm to hot.

Final Configuration

The setup that has run 24/7 for well over 2 years is shown in this photo... http://www.franjam.org.uk/linux/images/H553_setup_01.jpg


Power Saving


Hard Disk Spindown control

Configuring Spindown

sets disk to spindown on /dev/hda after 180*5 secs = 15 mins of inactivity. The -S value is multiples of 5 secs for 1-240, and multiples of 30mins for 241-251, see man page for other values.

The IBM disk I use responds within 2-3 secs to disk accesses when spundown.


Minimising Spinup time

Many services continually write to or access the hard disk and prevent spindown from kicking in, or mean it spins up too frequently. Run just the services you need is always a good plan. Here are some services that I tamed.......

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
25 21   * * *   root    run-parts --report /etc/cron.daily
30 21   * * 7   root    run-parts --report /etc/cron.weekly
35 21   1 * *   root    run-parts --report /etc/cron.monthly
#:MAIL: Mail, news and uucp services.
smtp      stream  tcp   nowait  root   /usr/sbin/tcpd  /usr/sbin/sendmail -bs
cleaning-interval 0;
heartbeat-interval 0;
statistics-interval 0;
     
dialup yes; notify no; forward only;
  
forwarders {
   129.11.144.1;
};
listen-on port 53 {
   127.0.0.1;
   192.168.10.80;
};
       
// reduce log verbosity on issues outside our control
logging {
    category lame-servers { null; };
    category statistics { null; };
    category cname { null; };
};

Monitoring state of Harddisk

Use /sbin/hdparm hdparm -C /dev/hda | grep state to show active/spindown state.

But by executing /sbin/hdparm you've just spun the disk up :-)

You need a RAM disk populated with enough so that a chroot to the mount point of the ramdisk can execute enough to monitor the state of the disk.

See details and example scripts etc at http://www.franjam.org.uk/linux/disklog.html


Controlling the Modem

A bit of electronics needed to make a mains switch controlled by the DTR line of the modem comms port. When the comms port is made active, the DTR line goes from -12v to +12v, triggering the mains switch to power up the modem. The circuit takes a little while to change state.

Circuit diagram of switch is at http://www.franjam.org.uk/linux/mainswitch.png

Because the modem doesn't come on immediately, some form of "initialise" is needed to make sure the modem is powered up and ready by the time pppd and the chat script is running.

When the ppp link is taken down, the DTR line returns to -12v switching off the modem after a delay.


Radio Recording...........

Another time.

As of stock Linux kernel 2.2.18, this SBC and the SB16 sound card give periodic glitches, making recording a bit noisy. I've not bottomed the problem or tried the low latency patches.


HomePage http://www.franjam.org.uk



This document was generated using AFT v5.095