Intermittent fan with acerfand & bios 3309

Discussion in 'Linux' started by fiftyclick, Dec 29, 2008.

  1. fiftyclick

    fiftyclick

    Joined:
    Dec 29, 2008
    Messages:
    2
    Likes Received:
    0
    Hello,

    I have tried searching everywhere for something that can fix the "cycling" or intermittent fan issues with the 3309 bios update and the acerfand script. The script has been updated for 3309 support, and there are no complains in syslog. However, it does fill the log with a lot of "FAN OFF" logs, and roughly ever 2 seconds, the fan starts and stops.

    When checking the temp manual using acer_ec.pl the temp readings are always below 40C (something like 0x26). Any ideas?
     
    fiftyclick, Dec 29, 2008
    #1
  2. fiftyclick

    mbaran

    Joined:
    Dec 15, 2008
    Messages:
    23
    Likes Received:
    0
    I have the same issue with 3309.
     
    mbaran, Dec 30, 2008
    #2
  3. fiftyclick

    DutchAcerOne

    Joined:
    Aug 4, 2008
    Messages:
    20
    Likes Received:
    0
    Count me in. Even disabled Acerfand because the intermittent sound became quite annoying.
     
    DutchAcerOne, Dec 30, 2008
    #3
  4. fiftyclick

    spinnekopje

    Joined:
    Aug 13, 2008
    Messages:
    83
    Likes Received:
    0
    I have version 3308 so I can't tell, but how does it work without the acerfand script?
     
    spinnekopje, Dec 30, 2008
    #4
  5. fiftyclick

    Guest Guest

    Same issue here.

    The behaviour is the same as in previous bios: annoying fan sound all the time.
     
    Guest, Dec 30, 2008
    #5
  6. fiftyclick

    DutchAcerOne

    Joined:
    Aug 4, 2008
    Messages:
    20
    Likes Received:
    0
    Now the fan runs whole the time.
    Luckily I have an Acer with a quiet fan, but I would like to minimize any sound as far as possible.
     
    DutchAcerOne, Dec 30, 2008
    #6
  7. fiftyclick

    madeyemoody

    Joined:
    Aug 21, 2008
    Messages:
    18
    Likes Received:
    0
    Hi

    I saw a solution for fixing the 5s pulsing fan with bios 3309 on a german forum:

    http://www.iphpbb3.com/forum/39151476nx ... -t614.html

    The fan off writing register needs to be changed from 0xAF to 0x21. Here's the acerfand code I use and that works for me on 3309:

    Code:
    #!/bin/bash
    #
    # acerfand - Rudimentary automatic fan control for noisy Acer Aspire One models
    #
    # Author Rachel Greenham
    #
    ACERFAND_VERSION="0.06"
    # version 0.05 (2008-12-29)
    #
    # This program is free software; you can redistribute it and/or
    # modify it under the terms of the GNU General Public License
    # as published by the Free Software Foundation; either version 3
    # of the License, or (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    # 
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
    #
    #
    # Changelog:
    # 0.06 - getBiosVersion before reading acerfand.conf, to allow user to force version
    # 0.05 - Regognise bios 3309 and autoselect as default
    # 0.04 - Recognise bios 3305
    # 0.03 - Recognise bios 3109
    # 0.02 - Added support for recognising bios version and selecting ec reg values accordingly
    # 0.01 - Initial version, no bios checking, works on <=v0.3114
    
    
    LOGGER=$(which logger)
    if [ ! -x $LOGGER ] ; then
    	LOGGER="/usr/bin/logger"
    fi
    if [ ! -x $LOGGER ] ; then
    	echo "Warning, logger can't be found. Will log to stdout"
    	unset LOGGER
    fi
    
    LOGLEVEL="info"
    
    log() {
    	if [ ! -z "$LOGGER" ] ; then
    		$LOGGER -p daemon.$LOGLEVEL -t acerfand "$@"
    	else
    		echo "$@"
    	fi
    }
    
    info() {
    	LOGLEVEL="info"
    	log "$@"
    }
    
    notice() {
    	LOGLEVEL="notice"
    #	log "$@"
    }
    
    err() {
    	LOGLEVEL="err"
    	log "$@"
    }
    
    info "acerfand $ACERFAND_VERSION starting"
    
    if pgrep acerfand  | grep -v $$ > /dev/null; then
    	info "acerfand already running"
    	exit 0
    fi
    
    ME=$(readlink -f $0)
    
    BIOS_VERSION_3109="v0.3109"
    BIOS_VERSION_3114="v0.3114"
    BIOS_VERSION_3304="v0.3304"
    BIOS_VERSION_3305="v0.3305"
    BIOS_VERSION_3309="v0.3309"
    
    BIOS_VERSION_DEFAULT=$BIOS_VERSION_3309
    
    getBiosVersion() {
    	DMIDECODE=$(which dmidecode)
    	if [ -z $DMIDECODE ] ; then
    		info "Can't find dmidecode. Assuming bios $BIOS_VERSION_DEFAULT"
    		BIOS_VERSION=$BIOS_VERSION_DEFAULT
    	else
    		BIOS_VERSION=$($DMIDECODE -s bios-version)
    		info "Detected bios version $BIOS_VERSION"
    	fi
    }
    
    ACEREC=$(which acer_ec.pl)
    if [ -z $ACEREC ] ; then
    	ACEREC=$(dirname $ME)/acer_ec.pl
    fi
    
    if [ ! -r $ACEREC ] ; then
    	err "acer_ec.pl can't be found"
    	exit 1
    fi
    
    INTERVAL=5
    FANOFF=60
    FANAUTO=70
    
    getBiosVersion
    
    if [ -r "/etc/acerfand.conf" ] ; then
    	source "/etc/acerfand.conf"
    fi
    
    case "$BIOS_VERSION" in
    	"${BIOS_VERSION_3309}")
    		#change: handle 3309 seperate 0xAF -> 0x21
    		R_FAN=55
    		R_TEMP=58
    		FAN_CMD_OFF=21
    		FAN_CMD_AUTO=00
    		RAW_FAN_STATE_OFF="0x21"
    		;;
    	"${BIOS_VERSION_3304}" | "${BIOS_VERSION_3305}" )
    		R_FAN=55
    		R_TEMP=58
    		FAN_CMD_OFF=af
    		FAN_CMD_AUTO=00
    		RAW_FAN_STATE_OFF="0xaf"
    		;;
    	"${BIOS_VERSION_3114}" | "${BIOS_VERSION_3109}")
    		R_FAN=55
    		R_TEMP=58
    		FAN_CMD_OFF=1f
    		FAN_CMD_AUTO=00
    		RAW_FAN_STATE_OFF="0x1f"
    		;;
    	*)
    		err "Unsupported bios version ${BIOS_VERSION} found. Aborting."
    		exit 1
    	;;
    esac
    
    FAN_STATE_UNRECOGNIZED=0
    FAN_STATE_AUTO=1
    FAN_STATE_OFF=2
    FAN_STATE_NAMES=("Unrecognized" "Auto" "Off")
    FAN_STATE_CMDS=("$FAN_CMD_OFF" "$FAN_CMD_AUTO" "$FAN_CMD_OFF")
    
    acer_ec() {
    	perl $ACEREC $@
    }
    
    getTemp() {
    	TEMP=$[$(acer_ec ?= $R_TEMP | cut -f 3 -d' ')]
    	notice "temp: $TEMP"
    }
    
    getRawFanState() {
    	RAW_FAN_STATE=$(acer_ec ?= $R_FAN | cut -f 3 -d' ')
    }
    
    getFanState() {
    	FAN_STATE=$FAN_STATE_UNRECOGNIZED
    	getRawFanState
    	if [ "$RAW_FAN_STATE" == "$RAW_FAN_STATE_OFF" ]; then
    		FAN_STATE=$FAN_STATE_OFF
    	else
    		let A="$RAW_FAN_STATE & 0x10" || true
    		if [ "$A == 0" ] ; then
    			# ASSUMPTION: All values with nybble 1==0 denote auto
    			FAN_STATE=$FAN_STATE_AUTO
    		fi
    	fi
    	notice "read fan state ${FAN_STATE_NAMES[$FAN_STATE]}"
    }
    
    setFan() {
    	info "Set fan ${FAN_STATE_NAMES[$1]}"
    	acer_ec := $R_FAN ${FAN_STATE_CMDS[$1]} > /dev/null
    }
    
    govern() {
    trap "info exiting;setFan $FAN_STATE_AUTO; exit" INT TERM EXIT
    info "Starting to govern acer fan speed. Interval: $INTERVAL, fan-off: $FANOFF, fan-auto: $FANAUTO"
    while true; do
    	getTemp
    	getFanState
    	case "$FAN_STATE" in
    		$FAN_STATE_AUTO)
    			if [ "$TEMP" -le "$FANOFF" ] ; then
    				setFan $FAN_STATE_OFF
    			fi
    			;;
    		$FAN_STATE_OFF)
    			if [ "$TEMP" -ge "$FANAUTO" ] ; then
    				setFan $FAN_STATE_AUTO
    			fi
    			;;
    		*)
    			# weird state. Let's turn it off,
    			# then decide next time around
    			setFan $FAN_STATE_OFF
    			;;
    	esac
    	sleep $INTERVAL
    done
    }
    
    set -e
    
    govern &
    
    
    
     
    madeyemoody, Feb 4, 2009
    #7
  8. fiftyclick

    draft

    Joined:
    Jan 1, 2009
    Messages:
    13
    Likes Received:
    0
    I can confirm that 0x21 on 3309 works to turn off the fan. The previous value 0x3f as reported here: viewtopic.php?f=28&t=7761 does not work for all 3309 versions. It would be interesting to know if 0x21 works for others as well (hillsoft, does 0x21 work for you?)
     
    draft, Feb 5, 2009
    #8
  9. fiftyclick

    SlCKB0Y

    Joined:
    Sep 13, 2008
    Messages:
    165
    Likes Received:
    0
    Location:
    Sydney, Australia
    I had the same issue.

    But being an Australian who had an AA1 with screen issues, I reverted to an earlier BIOS in order to be able to dim my screen to an acceptable degree for power saving issues.
     
    SlCKB0Y, Feb 5, 2009
    #9
  10. fiftyclick

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    Hm. Clearly I don't read this forum regularly enough any more. :)

    OK, what I find: I have 3309 in my AA1 and the current (ie: v0.06) acerfand works fine, just like on previous bios versions.

    When I applied the change from the version madeyemoody posted here, the effect for *me* was that it didn't turn the fan off at all, but it did slow it down to a speed slower than any I'd heard from it before - which also makes it quieter of course, still an improvement on not running it at all, but I still prefer it off, so with the hard drive spun down as well it's completely silent. :) It might be useful to have an intermediate speed to control, but only if it works for everyone. :)

    It would surprise me if there are "different bios 3309 versions" around; it seems more likely that some *machines* have different components. Maybe a different resistance on a fan component (can you tell I'm not an electronics engineer yet? ;-) ) means that on some the lower signal stops the fan and on others it just makes it run very slowly.

    Looking at the German forum post you linked to, I tried the 3308 values they used in their modified version (I never released one that recognised 3308) on my 3309 and that, again, seems to be working properly. The fan is switched off completely. That's FAN_CMD_OFF=20 and RAW_FAN_STATE_OFF=0xaf

    So now I don't know what to post. :) Anyway, here's what I'm running on my machine right now. Could people who had the original problem (this 5s intermittent fan cycling I never experienced) try this out and see how they get on, and if it works out for them, I'll release it with a version bump to the url the howto links to...

    Code:
    #!/bin/bash
    #
    # acerfand - Rudimentary automatic fan control for noisy Acer Aspire One models
    #
    # Author Rachel Greenham
    #
    ACERFAND_VERSION="0.06.1"
    # version 0.06.1 (2009-02-05)
    #
    # This program is free software; you can redistribute it and/or
    # modify it under the terms of the GNU General Public License
    # as published by the Free Software Foundation; either version 3
    # of the License, or (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    # 
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
    #
    #
    # Changelog:
    # 0.06.1 - experimental limited release with different fan-off controls for 3309.
    # 0.06 - getBiosVersion before reading acerfand.conf, to allow user to force version
    # 0.05 - Regognise bios 3309 and autoselect as default
    # 0.04 - Recognise bios 3305
    # 0.03 - Recognise bios 3109
    # 0.02 - Added support for recognising bios version and selecting ec reg values accordingly
    # 0.01 - Initial version, no bios checking, works on <=v0.3114
    
    
    LOGGER=$(which logger)
    if [ ! -x $LOGGER ] ; then
    	LOGGER="/usr/bin/logger"
    fi
    if [ ! -x $LOGGER ] ; then
    	echo "Warning, logger can't be found. Will log to stdout"
    	unset LOGGER
    fi
    
    LOGLEVEL="info"
    
    log() {
    	if [ ! -z "$LOGGER" ] ; then
    		$LOGGER -p daemon.$LOGLEVEL -t acerfand "$@"
    	else
    		echo "$@"
    	fi
    }
    
    info() {
    	LOGLEVEL="info"
    	log "$@"
    }
    
    notice() {
    	LOGLEVEL="notice"
    #	log "$@"
    }
    
    err() {
    	LOGLEVEL="err"
    	log "$@"
    }
    
    info "acerfand $ACERFAND_VERSION starting"
    
    if pgrep acerfand  | grep -v $$ > /dev/null; then
    	info "acerfand already running"
    	exit 0
    fi
    
    ME=$(readlink -f $0)
    
    BIOS_VERSION_3109="v0.3109"
    BIOS_VERSION_3114="v0.3114"
    BIOS_VERSION_3304="v0.3304"
    BIOS_VERSION_3305="v0.3305"
    BIOS_VERSION_3309="v0.3309"
    
    BIOS_VERSION_DEFAULT=$BIOS_VERSION_3309
    
    getBiosVersion() {
    	DMIDECODE=$(which dmidecode)
    	if [ -z $DMIDECODE ] ; then
    		info "Can't find dmidecode. Assuming bios $BIOS_VERSION_DEFAULT"
    		BIOS_VERSION=$BIOS_VERSION_DEFAULT
    	else
    		BIOS_VERSION=$($DMIDECODE -s bios-version)
    		info "Detected bios version $BIOS_VERSION"
    	fi
    }
    
    ACEREC=$(which acer_ec.pl)
    if [ -z $ACEREC ] ; then
    	ACEREC=$(dirname $ME)/acer_ec.pl
    fi
    
    if [ ! -r $ACEREC ] ; then
    	err "acer_ec.pl can't be found"
    	exit 1
    fi
    
    INTERVAL=5
    FANOFF=60
    FANAUTO=70
    
    getBiosVersion
    
    if [ -r "/etc/acerfand.conf" ] ; then
    	source "/etc/acerfand.conf"
    fi
    
    case "$BIOS_VERSION" in
    	"${BIOS_VERSION_3309}")
    		#change: handle 3309 seperate 0xAF -> 0x20
    		R_FAN=55
    		R_TEMP=58
    		FAN_CMD_OFF=20
    		FAN_CMD_AUTO=00
    		RAW_FAN_STATE_OFF="0xaf"
    		;;
    	"${BIOS_VERSION_3304}" | "${BIOS_VERSION_3305}" )
    		R_FAN=55
    		R_TEMP=58
    		FAN_CMD_OFF=af
    		FAN_CMD_AUTO=00
    		RAW_FAN_STATE_OFF="0xaf"
    		;;
    	"${BIOS_VERSION_3114}" | "${BIOS_VERSION_3109}")
    		R_FAN=55
    		R_TEMP=58
    		FAN_CMD_OFF=1f
    		FAN_CMD_AUTO=00
    		RAW_FAN_STATE_OFF="0x1f"
    		;;
    	*)
    		err "Unsupported bios version ${BIOS_VERSION} found. Aborting."
    		exit 1
    	;;
    esac
    
    FAN_STATE_UNRECOGNIZED=0
    FAN_STATE_AUTO=1
    FAN_STATE_OFF=2
    FAN_STATE_NAMES=("Unrecognized" "Auto" "Off")
    FAN_STATE_CMDS=("$FAN_CMD_OFF" "$FAN_CMD_AUTO" "$FAN_CMD_OFF")
    
    acer_ec() {
    	perl $ACEREC $@
    }
    
    getTemp() {
    	TEMP=$[$(acer_ec ?= $R_TEMP | cut -f 3 -d' ')]
    	notice "temp: $TEMP"
    }
    
    getRawFanState() {
    	RAW_FAN_STATE=$(acer_ec ?= $R_FAN | cut -f 3 -d' ')
    }
    
    getFanState() {
    	FAN_STATE=$FAN_STATE_UNRECOGNIZED
    	getRawFanState
    	if [ "$RAW_FAN_STATE" == "$RAW_FAN_STATE_OFF" ]; then
    		FAN_STATE=$FAN_STATE_OFF
    	else
    		let A="$RAW_FAN_STATE & 0x10" || true
    		if [ "$A == 0" ] ; then
    			# ASSUMPTION: All values with nybble 1==0 denote auto
    			FAN_STATE=$FAN_STATE_AUTO
    		fi
    	fi
    	notice "read fan state ${FAN_STATE_NAMES[$FAN_STATE]}"
    }
    
    setFan() {
    	info "Set fan ${FAN_STATE_NAMES[$1]}"
    	acer_ec := $R_FAN ${FAN_STATE_CMDS[$1]} > /dev/null
    }
    
    govern() {
    trap "info exiting;setFan $FAN_STATE_AUTO; exit" INT TERM EXIT
    info "Starting to govern acer fan speed. Interval: $INTERVAL, fan-off: $FANOFF, fan-auto: $FANAUTO"
    while true; do
    	getTemp
    	getFanState
    	case "$FAN_STATE" in
    		$FAN_STATE_AUTO)
    			if [ "$TEMP" -le "$FANOFF" ] ; then
    				setFan $FAN_STATE_OFF
    			fi
    			;;
    		$FAN_STATE_OFF)
    			if [ "$TEMP" -ge "$FANAUTO" ] ; then
    				setFan $FAN_STATE_AUTO
    			fi
    			;;
    		*)
    			# weird state. Let's turn it off,
    			# then decide next time around
    			setFan $FAN_STATE_OFF
    			;;
    	esac
    	sleep $INTERVAL
    done
    }
    
    set -e
    
    govern &
    
     
    rachel, Feb 5, 2009
    #10
  11. fiftyclick

    exwannabe

    Joined:
    Dec 30, 2008
    Messages:
    42
    Likes Received:
    0
    Mine (which had the on/off fast cycle upon ugrade to 3309) works fine with the values for both CMD and STATE at 0x3f.
     
    exwannabe, Feb 6, 2009
    #11
  12. fiftyclick

    elehvi

    Joined:
    Feb 6, 2009
    Messages:
    1
    Likes Received:
    0
    Well, my SSD Aspire One (BIOS v.3309) has the same fan cycling problem. Changing FAN_CMD_OFF=20 and keeping RAW_FAN_STATE_OFF="0xaf" does turn of the fan, but the system would do an emergency shutdown soon after starting acerfand.

    Using FAN_CMD_OFF=3f and RAW_FAN_STATE_OFF="0x3f" works fine. Also using 21 / "0x21" seems to work just as well. This is one strange little machine. :)
     
    elehvi, Feb 7, 2009
    #12
  13. fiftyclick

    hardran3

    Joined:
    Aug 11, 2008
    Messages:
    73
    Likes Received:
    0
    Location:
    Swift Current, SK, Canada
    I can report that the script with the fix from the german forum works on my AA1 running 3309.
     
    hardran3, Feb 13, 2009
    #13
  14. fiftyclick

    ux50

    Joined:
    Sep 26, 2008
    Messages:
    18
    Likes Received:
    0
    Yes, this German script works great.
    But I have to key in "sudo acerfand" manually. :| Otherwise it does not kick in.
    Does anyone know how to run it at boot?

    Appreciate help.

    ps. I followed these steps;
    To run it at boot: sudo gedit /etc/rc.local
    Insert the following line above the exit 0 at the bottom: /usr/local/bin/acerfand
     
    ux50, Feb 16, 2009
    #14
  15. fiftyclick

    exwannabe

    Joined:
    Dec 30, 2008
    Messages:
    42
    Likes Received:
    0
    "But I have to key in "sudo acerfand" manually. Otherwise it does not kick in.
    Does anyone know how to run it at boot?"

    I'll give you 2 to 1 that you have a typo earlier in your rc.local script. If any line errors outm the script stops right there.

    Try just running rc.local ($ . /etc/rc.local) and see what happens.
     
    exwannabe, Feb 18, 2009
    #15
  16. fiftyclick

    ux50

    Joined:
    Sep 26, 2008
    Messages:
    18
    Likes Received:
    0
    Thanks a lot for your advice, exwannabe.
    It seems my AA1 has some startup problems and does not load all programs or commands correctly.
    As a result, acerfand sometimes works and sometimes doesn't.

    All I can say now is the script itself works perfectly fine with bios3309. ;) :mrgreen:

    All the best,
     
    ux50, Feb 18, 2009
    #16
  17. fiftyclick

    ronime

    Joined:
    Nov 3, 2008
    Messages:
    486
    Likes Received:
    0
    Location:
    West Yorkshire, UK
    Yeah, that and the fact that you get a sun tan and/or arc-eye if you use the AA1 in a dark room. :lol:

    BIOS v3114 FTW!
     
    ronime, Feb 18, 2009
    #17
  18. fiftyclick

    woko

    Joined:
    Mar 2, 2009
    Messages:
    1
    Likes Received:
    0
    Hi,
    I tried the acerfand code from rachel, with the result, that the fan is immediately turned off completly, but after some seconds the power is cut off completely without warning! Is this due to overheating ?
     
    woko, Mar 2, 2009
    #18
  19. fiftyclick

    exwannabe

    Joined:
    Dec 30, 2008
    Messages:
    42
    Likes Received:
    0
    No.

    There are several possible values to make acerfand work on 3309. Nobody is certain what the confusion is. But the power shutdown is a known issue with one of these patches. The quick cycle is another issue. And not working is third possibility.

    Look through previous posts and you will see all the alternatives. Just try some others. There is no danger here (other than the power shutdown could lose data).
     
    exwannabe, Mar 3, 2009
    #19
  20. fiftyclick

    plip

    Joined:
    Aug 16, 2009
    Messages:
    3
    Likes Received:
    0
    Hi All,

    I have a stock AA0, 512mb ram, 8gig SSD, Linux version (originally shipped with Linpus) with Bios 3309 & have the same problems with the machine powering off after running the script.

    My AAO is running a fresh install of Ubuntu Netbook Remix 9.04

    Using tips found over at:
    https://help.ubuntu.com/community/Aspir ... %20Control

    the script is installed and running correctly after checking:
    Code:
    sudo tail -f /var/log/syslog

    After some testing I have changed the 3 known values in the script:

    RAW_FAN_STATE_OFF="0x21"
    or
    RAW_FAN_STATE_OFF="0x20"
    or
    RAW_FAN_STATE_OFF="0xaf"


    Each have the same result, the fan turns off, pulses once after 20 seconds, pulses again after another 20 then the computer powers off unexpectantly. So this machine might have different flavour ram in it or the fan itself is different somehow to other models with the same Bios.

    The only other info I have is, I'm dual booting with XP and the fan in Windows is never silent either, its not a very loud fan though, the windows app is called acer fan control and the tempature threshold is set to 70 degrees, but it is never off.

    I think a Bios update would probably sort things out on this model, but I'm not too exited about flashing just yet, any extra memory addresses or updates to the script would be greatly appreciated.

    Only other tip I have is, before you run "acerfand" type in the "sync" command in the terminal to keep your file system synched up, always eject any ssd cards or thumbdrives, and make sure firefox and other programs are closed in case your computer powers off, I have had to reboot Ubuntu into recovery mode several times and run fsck to clear things up.

    Happy computing :)
     
    plip, Aug 16, 2009
    #20
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.