Search This Blog

Wednesday 20 October 2010

How to fix "No sound" on Debian powerpc (ppc)

I lost sound on my G4 digital audio running Debian testing after a kernel upgrade. After much searching of similar user problems it turns out that sound aoa is now the default for Powerpc.
This is fine if you have a later ppc.

For older machines you need snd_powermac

Using the links below I got my sound fixed!

# sound links and refs #
http://old.nabble.com/no-sound-on-powermac3%2C3-(powerbook-g4-550)-debian502-gnome-td25316718i20.html
http://wiki.debian.org/PowerpcSoundcards
http://forums.debian.net/viewtopic.php?f=6&t=39116
http://forums.debian.net/viewtopic.php?f=16&t=53708
http://forums.debian.net/viewtopic.php?t=38112
http://us.generation-nt.com/answer/sound-drivers-detected-mac-mini-g5-but-not-powermac-g4-help-170277311.html?page=1


The sound module needed for differing Powerpc machines:

snd-powermac is used to run on:
    AWACS, DACA, Burgundy, Tumbler, Keywest
snd_aoa_codec_onyx is used to run on:
    latest (last) generation of Apple PPC
snd_aoa_tas is uded to run on:
    iBooks and PowerBooks without digital
snd_aoa_codec_toonie is used to run on:
    Mac Mini
   
See which sound module is being used:
$ cat /proc/asound/version

If its the wrong one for your machine remove the module

I tried as root
# rmmod snd_aoa_i2sbus
# rmmod snd_aoa_fabric_layout
# rmmod snd_aoa_soundbus
and

# modprobe -r snd-aoa-i2sbus snd-aoa-soundbus snd-aoa

But as they were being used I couldn't remove the modules.
So I added them to the /etc/modprobe.d/alsa-base-blacklist.conf

# Uncomment these entries in order to blacklist unwanted modem drivers
blacklist snd-atiixp-modem
blacklist snd-intel8x0m
blacklist snd-via82xx-modem
blacklist snd-pcsp
blacklist snd_aoa_i2sbus
blacklist snd_aoa_fabric_layout
blacklist snd_aoa_soundbus

8<-------8<-------8<-------8<

Then reboot: and add the sound module for your machine. For me it was:

# shutdown -r now
# modprobe snd-powermac

still no sound?

# echo snd-powermac >> /etc/modules
# shutdown -r now

Since the alsaconfig command is no longer used run:

# alsactl init
Unknown hardware: "PMac Tumbler" "PowerMac Tumbler" "" "" ""
Hardware is initialized using a guess method

$ cat /proc/asound/cards
 0 [Tumbler        ]: PMac Tumbler - PowerMac Tumbler
                      PowerMac Tumbler (Dev 14) Sub-frame 0
                     
Yes. The correct sound module showed up.

Still no sound???

Wiggle the cable in the audio port :)

Success \0/

As I had a bad cable connection I'm not exactly sure a which point I got my sound back. I've just listed the steps I took.

Monday 18 October 2010

Bank of Scotland Fail!

Bank of Scotland Fail!

I switched banks the other day after they told me I could only reset my password with internet explorer (ie)

First they said we only support ie and Mozilla based browsers. I said fine I use Mozilla. It failed to reset my password. I rang them up and the said I could only reset my password with ie! as they were having trouble with Mozilla! I said don't you test these things as Mozilla works on every website I visit bar yours. Then after fuming at them for being a bank and recommend in ie. (the least secure browsers on the planet) and assuming all customers run Windows or Mac-OSX they said I'd have no choice but to go to my branch to reset it!

As a Debian user and Free software advocate there is no way on this earth I was going to purchase a Windows licence just to install internet explorer so I can reset my password or use someone else’s potentially virus riddled system.

I went to the bank. I was told I could reset my password on their secure computer. Fine It gave me the first 3 digits of my password reset and said it would email me the others. Fine. I couldn't check my email at the bank. Off the the local library I go to cue for 20 min's to get on a PC and retrieve the email. Back to the bank. It failed with ie!

I said I had other things I needed to do so we sat down and I cancelled all my direct debits, standing orders and generally tidied things up with my current  account, Then moved most of my money into my savings account...... then asked them to transfer the lot bar £100 in to the coop Bank!

After reading
http://www.goodwithmoney.co.uk/ethical-banking/

I rang the coop bank and had a very nice discussion on the ethics of their website being accessible with free software and the implications of making websites  dependent on adobe flash. Well done the Coop Bank.

If a website is standards compliant I should not matter what browser you use.

Friday 8 October 2010

Wonderwash

Today after returning a hire van I was cycling home and thought I'd get a breakfast at the local charity shop. I'd missed mine because I had to do a skip run clean the van before returning it with out being late.They do a full breakfast with 7 items for £2.25! (I thought it could go with my 20% non local allowance) Anyway after I'd eaten I went a browsed the shop and came across a "wonderwash" a hand cranked mini mashing machine. Being a eco-green type I bought it for a fiver. £5 well spent I just tried it and it works very well. The only thing missing was the manual. I just guessed at half filling it with lose clothes then fill up to half way with hot water. I rinsed with cold half filled again, worked a treat.

Edit: I found a copy of the basic  instructions here.

Ref: 
http://randomchaos.com/documents/?source=wonder_wash
 Simple and Easy-to-Use Wonder Wash Washing Instructions:

1. Sort the washing into loads according to material type and/or colors.  Note:
There are 5 basic load types:
    A. White cottons and linens
    B. Colorfast cottons and linens
    C. White synthetics and cotton blends
    D. Nylons and colored synthetics
    E. Delicates

2. Place the machine on the edge of the sink.

3. Add the required water (at the correct temperature) and soap according to the washing chart below.

4. Add the washing.

5. Fit the pressure lid and tighten completely.

6. Attach the handle and turn the machine at abut one turn per second for the recommended time.

7. After washing, unscrew the pressure lid by turning the pressure knob slowly to release the pressure.

8. Remove pressure lid by turning anti-clockwise to release.

9. To drain, tilt machine to allow water to run into sink OR, if fitted with water release valve, insert Pipe into Valve and turn a quarter turn clockwise, until it clicks into position.

Rinsing: 1. By Hand Fill sink or basin with clean water and empty wash into sink and agitate by hand.

2. By Machine After draining away the dirty water, leave the washing in the machine and fill with clean cold water.  Replace the pressure lid and tighten and turn the machine for about 30 seconds. Drain and wring dry. Repeat if necessary.


WASHING CHART

LOAD    WATER    SOAP        TIME
.5 kg    1.5 L    1 Tbsp/15 g    1 min
1 kg    3 L    2 Tbsp/30 g    1.25 min
1.5 kg    4.5 L    3 Tbsp/45 g    1.5 min
2.2 kg    6 L    4 Tbsp/60 g    2 min

Note: Very absorbent materials will require more water, but DO NOT exceed the amounts listed above.  If necessary reduce the size of the load.


TEMPERATURE CHART

LOAD TYPE    TEMPERATURE
A        90 deg C - very hot
B        60 deg C - hot
C        50 deg C - hand hot
D        40 deg C - warm
E        30 deg C - lukewarm


TIPS TOWARDS BETTER RESULTS FROM YOUR WONDERWASH WASHING MACHINE

1. DO NOT use boiling water
2. DO NOT leave pressure lid on the machine after washing if the machine is still hot as a vacuum can form when machine cools down.
3. DO NOT store machine with pressure knob turned tight.
4. DO NOT overload.  Do smaller loads as it will be easier and the machine will was better and quicker.
5. DO NOT TIGHTEN the pressure lid onto the machine when storing. Put on loosely!

1. We recommend the use of LOW FOAM DETERGENTS (i.e. automatic washing machine powders.)
2. Low foam detergents will make rinsing easier.
3. If wash does not come clean the washing combination is wrong. Use the correct amount of water, soap, and time.
4. Wash clothes at highest temperature garment will allow, but DO NOT exceed recommended temperatures.
5. The use of washing additives, e.g. a little bleach and/or fabric softener is acceptable.
6. Assist the cleaning of very dirty cuffs and collars by using recommended additives designed for cuffs and collars; or Wet the cuff or collar first and rub soap powder into fabric.
7. DO NOT scrub cuffs and collars, as this only damages the fabric.

Monday 4 October 2010

My openbox rc.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- Do not edit this file, it will be overwritten on install.
Copy the file to $HOME/.config/openbox/ instead. -->
<openbox_config xmlns="http://openbox.org/3.4/rc">
<resistance>
<strength>10</strength>
<screen_edge_strength>20</screen_edge_strength>
</resistance>
<focus>
<focusNew>yes</focusNew>
<!-- always try to focus new windows when they appear. other rules do
apply -->
<followMouse>yes</followMouse>
<!-- move focus to a window when you move the mouse into it -->
<focusLast>yes</focusLast>
<!-- focus the last used window when changing desktops, instead of the one
under the mouse pointer. when followMouse is enabled -->
<underMouse>no</underMouse>
<!-- move focus under the mouse, even when the mouse is not moving -->
<focusDelay>200</focusDelay>
<!-- when followMouse is enabled, the mouse must be inside the window for
this many milliseconds (1000 = 1 sec) before moving focus to it -->
<raiseOnFocus>no</raiseOnFocus>
<!-- when followMouse is enabled, and a window is given focus by moving the
mouse into it, also raise the window -->
</focus>
<placement>
<policy>Smart</policy>
<!-- 'Smart' or 'UnderMouse' -->
<center>yes</center>
<!-- whether to place windows in the center of the free area found or
the top left corner -->
<monitor>Any</monitor>
<!-- with Smart placement on a multi-monitor system, try to place new windows
on: 'Any' - any monitor, 'Mouse' - where the mouse is, 'Active' - where
the active window is -->
</placement>
<theme>
<name>Onyx</name>
<titleLayout>NLIMSC</titleLayout>
<!--
available characters are NDSLIMC, each can occur at most once.
N: window icon
L: window label (AKA title).
I: iconify
M: maximize
C: close
S: shade (roll up/down)
D: omnipresent (on all desktops).
-->
<keepBorder>yes</keepBorder>
<animateIconify>yes</animateIconify>
<font place="ActiveWindow">
<name>Sans</name>
<size>8</size>
<!-- font size in points -->
<weight>Bold</weight>
<!-- 'bold' or 'normal' -->
<slant>Normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="InactiveWindow">
<name>sans</name>
<size>8</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="MenuHeader">
<name>Sans</name>
<size>8</size>
<!-- font size in points -->
<weight>Normal</weight>
<!-- 'bold' or 'normal' -->
<slant>Normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="MenuItem">
<name>Sans</name>
<size>8</size>
<!-- font size in points -->
<weight>Normal</weight>
<!-- 'bold' or 'normal' -->
<slant>Normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="OnScreenDisplay">
<name>Sans</name>
<size>8</size>
<!-- font size in points -->
<weight>Bold</weight>
<!-- 'bold' or 'normal' -->
<slant>Normal</slant>
<!-- 'italic' or 'normal' -->
</font>
</theme>
<desktops>
<!-- this stuff is only used at startup, pagers allow you to change them
during a session

these are default values to use when other ones are not already set
by other applications, or saved in your session

use obconf if you want to change these without having to log out
and back in -->
<number>4</number>
<firstdesk>1</firstdesk>
<names>
<!-- set names up here if you want to, like this:
<name>desktop 1</name>
<name>desktop 2</name>
-->
</names>
<popupTime>500</popupTime>
<!-- The number of milliseconds to show the popup for when switching
desktops. Set this to 0 to disable the popup. -->
</desktops>
<resize>
<drawContents>yes</drawContents>
<popupShow>Nonpixel</popupShow>
<!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) -->
<popupPosition>Center</popupPosition>
<!-- 'Center', 'Top', or 'Fixed' -->
<popupFixedPosition>
<!-- these are used if popupPosition is set to 'Fixed' -->
<x>10</x>
<!-- positive number for distance from left edge, negative number for
distance from right edge, or 'Center' -->
<y>10</y>
<!-- positive number for distance from top edge, negative number for
distance from bottom edge, or 'Center' -->
</popupFixedPosition>
</resize>
<!-- You can reserve a portion of your screen where windows will not cover when
they are maximized, or when they are initially placed.
Many programs reserve space automatically, but you can use this in other
cases. -->
<margins>
<top>0</top>
<bottom>1</bottom>
<left>0</left>
<right>0</right>
</margins>
<dock>
<position>TopLeft</position>
<!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating -->
<floatingX>0</floatingX>
<floatingY>0</floatingY>
<noStrut>no</noStrut>
<stacking>Above</stacking>
<!-- 'Above', 'Normal', or 'Below' -->
<direction>Vertical</direction>
<!-- 'Vertical' or 'Horizontal' -->
<autoHide>no</autoHide>
<hideDelay>300</hideDelay>
<!-- in milliseconds (1000 = 1 second) -->
<showDelay>300</showDelay>
<!-- in milliseconds (1000 = 1 second) -->
<moveButton>Middle</moveButton>
<!-- 'Left', 'Middle', 'Right' -->
</dock>
<!-- KEYBOARD -->
<keyboard>
<chainQuitKey>C-g</chainQuitKey>

<!-- MAIN "ALT" SHORTCUTS -->

<!--Show openbox menu: Note the Root menu is the openbox menu.xml -->
<keybind key="A-z">
<action name="ShowMenu">
<menu>root-menu</menu>
</action>
</keybind>
<!--Show openbox menu: Note the client menu is the openbox bar menu.xml -->
<keybind key="A-c">
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</keybind>
<!--Show all desktops and active applications menu: Note use arrow keys! -->
<keybind key="A-x">
<action name="ShowMenu">
<menu>client-list-combined-menu</menu>
</action>
</keybind>
<!--Iconify active window: -->
<!--remember i 4 iconify: use A-Tab to raise-->
<keybind key="A-i">
<action name="Iconify">
<menu>Iconify</menu>
</action>
</keybind>
<!--Move the current window to Center: -->
<!--remember M 4 Move: -->
<keybind key="A-m">
<action name="MoveToCenter"/>
</keybind>
<!--Resize the current window: -->
<!--remember r 4 resize: -->
<keybind key="A-r">
<action name="Resize"/>
</keybind>
<!--Toggle Maximize Full screen: -->
<!--remember f 4 full screen: -->
<keybind key="A-f">
<action name="ToggleMaximizeFull"/>
</keybind>
<!--Toggle window decoration on/off: -->
<!--remember b 4 border: -->
<keybind key="A-b">
<action name="ToggleDecorations"/>
</keybind>
<!--Show Desktop toggle on/off: -->
<!--remember d 4 desktop: -->
<keybind key="A-d">
<action name="ToggleShowDesktop"/>
</keybind>

<!-- Close active window -->
<!-- Keybindings for windows -->
<keybind key="A-F4">
<action name="Close"/>
</keybind>

<!-- Lower active window to the bottom of the window stack -->
<keybind key="A-Escape">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</keybind>

<!-- DECORATIONS -->
<!-- match all windows, and remove their decorations -->
<application class="*">
<decor>yes</decor>
</application>
<!-- but give decorations back to Firefox -->
<application name="Firefox*">
<decor>no</decor>
</application>
<!-- but give decorations back to rox -->
<application name="rox*">
<decor>no</decor>
</application>

<!-- NAVAGATION -->
<!-- Keybindings for desktop switching -->
<!-- Move to desktop on the left-->
<keybind key="C-A-Right">
<action name="DesktopRight">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<!-- Move to desktop on the left-->
<keybind key="C-A-Left">
<action name="DesktopLeft">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<keybind key="C-A-Up">
<action name="DesktopUp">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<keybind key="C-A-Down">
<action name="DesktopDown">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<!-- Send active window to desktop on the left. And follow it!-->
<keybind key="S-A-Left">
<action name="SendToDesktopLeft">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<!-- Send active window to desktop on the right. And follow it!-->
<keybind key="S-A-Right">
<action name="SendToDesktopRight">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<keybind key="S-A-Up">
<action name="SendToDesktopUp">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<keybind key="S-A-Down">
<action name="SendToDesktopDown">
<dialog>yes</dialog>
<wrap>yes</wrap>
</action>
</keybind>
<!-- Switch to desktop (number): Note I rarely use this a C-A-Left or C-A-Right arrow is easier -->
<!-- Switch to desktop (number)-->
<keybind key="W-F1">
<action name="Desktop">
<desktop>1</desktop>
</action>
</keybind>
<!-- Switch to desktop (number)-->
<keybind key="W-F2">
<action name="Desktop">
<desktop>2</desktop>
</action>
</keybind>
<!-- Switch to desktop (number)-->
<keybind key="W-F3">
<action name="Desktop">
<desktop>3</desktop>
</action>
</keybind>
<!-- Switch to desktop (number)-->
<keybind key="W-F4">
<action name="Desktop">
<desktop>4</desktop>
</action>
</keybind>

<!-- Screen capture instant -->
<keybind key="Print">
<action name="Execute">
<execute>scrot</execute>
</action>
</keybind>


<!-- ONE OFF COMMANDS -->
<!-- Screen capture with 5 second delay -->
<keybind key="A-Print">
<action name="Execute">
<execute>scrot -cd5</execute>
</action>
</keybind>
<keybind key="A-S-Print">
<action name="Execute">
<execute>gnome-screenshot</execute>
</action>
</keybind>
<!-- WORKSPACE SWITCHING -->
<keybind key="W-F1">
<action name="Desktop">
<desktop>1</desktop>
</action>
</keybind>
<keybind key="W-F2">
<action name="Desktop">
<desktop>2</desktop>
</action>
</keybind>
<keybind key="W-F3">
<action name="Desktop">
<desktop>3</desktop>
</action>
</keybind>
<keybind key="W-F4">
<action name="Desktop">
<desktop>4</desktop>
</action>
</keybind>
<!-- Keybindings for windows -->
<keybind key="A-F4">
<action name="Close"/>
</keybind>
<keybind key="A-Escape">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</keybind>
<keybind key="Print">
<action name="Execute">
<execute>scrot</execute>
</action>
</keybind>
<keybind key="A-Print">
<action name="Execute">
<execute>scrot -cd5</execute>
</action>
</keybind>
<keybind key="A-Tab">
<action name="NextWindow">
<allDesktops>yes</allDesktops>
</action>
</keybind>
<keybind key="A-S-Tab">
<action name="PreviousWindow">
<allDesktops>yes</allDesktops>
</action>
</keybind>
<keybind key="C-A-Tab">
<action name="NextWindow">
<panels>yes</panels>
<desktop>yes</desktop>
</action>
</keybind>
<!-- Keybindings for running applications -->
<keybind key="W-e">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>Konqueror</name>
</startupnotify>
<command>kfmclient openProfile filemanagement</command>
</action>
</keybind>
<keybind key="F7">
<action name="Reconfigure"/>
</keybind>
<keybind key="F6">
<action name="RemoveDesktopLast"/>
</keybind>
<keybind key="F10">
<action name="AddDesktopLast"/>
</keybind>
<keybind key="F11">
<action name="RemoveDesktopCurrent"/>
</keybind>
<keybind key="F12">
<action name="AddDesktopCurrent"/>
</keybind>

<!-- APPLICATION LAUNCHER SHORTCUTS edit as required-->
<keybind key="W-a">
<action name="Execute">
<execute>abiword</execute>
</action>
</keybind>
<keybind key="W-b">
<action name="Execute">
<execute>icecat</execute>
</action>
</keybind>
<keybind key="W-c">
<action name="Execute">
<execute>claws-mail</execute>
</action>
</keybind>
<keybind key="W-d">
<action name="Execute">
<execute>gnumeric</execute>
</action>
</keybind>
<keybind key="W-e">
<action name="Execute">
<execute>ekiga</execute>
</action>
</keybind>
<keybind key="W-f">
<action name="Execute">
<execute>gftp-gtk</execute>
</action>
</keybind>
<keybind key="W-g">
<action name="Execute">
<execute>gimp</execute>
</action>
</keybind>
<keybind key="W-h">
<action name="Execute">
<execute>help</execute>
</action>
</keybind>
<keybind key="W-i">
<action name="Execute">
<execute>inkscape</execute>
</action>
</keybind>
<keybind key="W-j">
<action name="Execute">
<execute>pcmanfm</execute>
</action>
</keybind>
<keybind key="W-k">
<action name="Execute">
<execute>transmission</execute>
</action>
</keybind>
<keybind key="W-l">
<action name="Execute">
<execute>leafpad</execute>
</action>
</keybind>
<keybind key="W-m">
<action name="Execute">
<execute>gnome-mplayer</execute>
</action>
</keybind>
<keybind key="W-n">
<action name="Execute">
<execute>minitube</execute>
</action>
</keybind>
<keybind key="W-o">
<action name="Execute">
<execute>ooffice</execute>
</action>
</keybind>
<keybind key="W-p">
<action name="Execute">
<execute>pidgin</execute>
</action>
</keybind>
<keybind key="W-q">
<action name="Execute">
<execute>gthumb</execute>
</action>
</keybind>
<keybind key="W-r">
<action name="Execute">
<execute>rox</execute>
</action>
</keybind>
<keybind key="W-s">
<action name="Execute">
<execute>sylpheed</execute>
</action>
</keybind>
<keybind key="W-t">
<action name="Execute">
<execute>lxterminal</execute>
</action>
</keybind>
<keybind key="W-u">
<action name="Execute">
<execute>audacity</execute>
</action>
</keybind>
<keybind key="W-v">
<action name="Execute">
<execute>vlc</execute>
</action>
</keybind>
<keybind key="W-w">
<action name="Execute">
<execute>brasero</execute>
</action>
</keybind>
<keybind key="W-x">
<action name="Execute">
<execute>xine</execute>
</action>
</keybind>
<keybind key="W-y">
<action name="Execute">
<execute>syfigstudio</execute>
</action>
</keybind>
<keybind key="W-z">
<action name="Execute">
<execute>wicd</execute>
</action>
</keybind>
</keyboard>
<!-- MOUSE SETTINGS OPENBOX -->
<mouse>
<dragThreshold>8</dragThreshold>
<!-- number of pixels the mouse must move before a drag begins -->
<doubleClickTime>200</doubleClickTime>
<!-- in milliseconds (1000 = 1 second) -->
<screenEdgeWarpTime>400</screenEdgeWarpTime>
<!-- Time before changing desktops when the pointer touches the edge of the
screen while moving a window, in milliseconds (1000 = 1 second).
Set this to 0 to disable warping -->
<context name="Frame">
<mousebind button="A-Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="A-Left" action="Click">
<action name="Unshade"/>
</mousebind>
<mousebind button="A-Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="A-Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="A-Right" action="Drag">
<action name="Resize"/>
</mousebind>
<mousebind button="A-Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="C-A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="C-A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="A-S-Up" action="Click">
<action name="SendToDesktopPrevious"/>
</mousebind>
<mousebind button="A-S-Down" action="Click">
<action name="SendToDesktopNext"/>
</mousebind>
</context>
<context name="Titlebar">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="Left" action="DoubleClick">
<action name="ToggleMaximizeFull"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="Up" action="Click">
<action name="Shade"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
<action name="Lower"/>
</mousebind>
<mousebind button="Down" action="Click">
<action name="Unshade"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="Top">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>top</edge>
</action>
</mousebind>
</context>
<context name="Left">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>left</edge>
</action>
</mousebind>
</context>
<context name="Right">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>right</edge>
</action>
</mousebind>
</context>
<context name="Bottom">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>bottom</edge>
</action>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="BLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="BRCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TRCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Client">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Icon">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="AllDesktops">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleOmnipresent"/>
</mousebind>
</context>
<context name="Shade">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleShade"/>
</mousebind>
</context>
<context name="Iconify">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Iconify"/>
</mousebind>
</context>
<context name="Maximize">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleMaximizeFull"/>
</mousebind>
<mousebind button="Middle" action="Click">
<action name="ToggleMaximizeVert"/>
</mousebind>
<mousebind button="Right" action="Click">
<action name="ToggleMaximizeHorz"/>
</mousebind>
</context>
<context name="Close">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Close"/>
</mousebind>
</context>
<context name="Desktop">
<mousebind button="Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="C-A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="C-A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Root">
<!-- Menus -->
<mousebind button="Middle" action="Press">
<action name="ShowMenu">
<menu>client-list-combined-menu</menu>
</action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="ShowMenu">
<menu>root-menu</menu>
</action>
</mousebind>
</context>
<context name="MoveResize">
<mousebind button="Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
</context>
</mouse>
<menu>
<!-- You can specify more than one menu file in here and they are all loaded,
just don't make menu ids clash or, well, it'll be kind of pointless -->
<!-- default menu file (or custom one in $HOME/.config/openbox/) -->
<!-- system menu files on Debian systems -->
<file>/var/lib/openbox/debian-menu.xml</file>
<file>debian-menu.xml</file>
<file>menu.xml</file>
<hideDelay>200</hideDelay>
<!-- if a press-release lasts longer than this setting (in milliseconds), the
menu is hidden again -->
<middle>no</middle>
<!-- center submenus vertically about the parent entry -->
<submenuShowDelay>100</submenuShowDelay>
<!-- this one is easy, time to delay before showing a submenu after hovering
over the parent entry -->
<applicationIcons>yes</applicationIcons>
<!-- controls if icons appear in the client-list-(combined-)menu -->
<manageDesktops>yes</manageDesktops>
<!-- show the manage desktops section in the client-list-(combined-)menu -->
</menu>
<applications>
<!--
# this is an example with comments through out. use these to make your
# own rules, but without the comments of course.

<application name="first element of window's WM_CLASS property (see xprop)"
class="second element of window's WM_CLASS property (see xprop)"
role="the window's WM_WINDOW_ROLE property (see xprop)"
type="the window's _NET_WM_WINDOW_TYPE (if unspecified, then
it is dialog for child windows)">
# the name or the class can be set, or both. this is used to match
# windows when they appear. role can optionally be set as well, to
# further restrict your matches.

# the name, class, and role use simple wildcard matching such as those
# used by a shell. you can use * to match any characters and ? to match
# any single character.

# the type is one of: normal, dialog, splash, utility, menu, toolbar, dock,
# or desktop

# when multiple rules match a window, they will all be applied, in the
# order that they appear in this list


# each element can be left out or set to 'default' to specify to not
# change that attribute of the window

<decor>yes</decor>
# enable or disable window decorations

<shade>no</shade>
# make the window shaded when it appears, or not

<position force="no">
# the position is only used if both an x and y coordinate are provided
# (and not set to 'default')
# when force is "yes", then the window will be placed here even if it
# says you want it placed elsewhere. this is to override buggy
# applications who refuse to behave
<x>center</x>
# a number like 50, or 'center' to center on screen. use a negative number
# to start from the right (or bottom for <y>), ie -50 is 50 pixels from the
# right edge (or bottom).
<y>200</y>
<monitor>1</monitor>
# specifies the monitor in a xinerama setup.
# 1 is the first head, or 'mouse' for wherever the mouse is
</position>

<focus>yes</focus>
# if the window should try be given focus when it appears. if this is set
# to yes it doesn't guarantee the window will be given focus. some
# restrictions may apply, but Openbox will try to

<desktop>1</desktop>
# 1 is the first desktop, 'all' for all desktops

<layer>normal</layer>
# 'above', 'normal', or 'below'

<iconic>no</iconic>
# make the window iconified when it appears, or not

<skip_pager>no</skip_pager>
# asks to not be shown in pagers

<skip_taskbar>no</skip_taskbar>
# asks to not be shown in taskbars. window cycling actions will also
# skip past such windows

<fullscreen>yes</fullscreen>
# make the window in fullscreen mode when it appears

<maximized>true</maximized>
# 'Horizontal', 'Vertical' or boolean (yes/no)
</application>

# end of the example
-->
</applications>

</openbox_config>

My openbox shortcuts quick version

Of course you can change all these setting if you like or if they conflict with other applications. Just copy the file in the post above to a file named rc.xml and place it in your /home/username/.config/openbox/ directory. Then you can edit it for that user. Hint: CTL-h will show the hidden .config directory (any file that starts with a "." is hidden)

I’ve tried to make them newbie friendly and easy to remember whilst group the most used keys.

Refer to the open box website for detailed instructions.
http://openbox.org/wiki/Main_Page
Also urukrama's very good guide
http://urukrama.wordpress.com/openbox-guide/

Basics:
Keyboard short cut settings: Modifier keys C=CTL A=Alt S=Shift W=Windows M=Meta. Function keys=F1/F12.

Note you will use the arrow keys alot!

The most used keys are:
Menus:
ALT+z (openbox menu)
ALT+x (openbox view active desktops and applications)
ALT+c (openbox client menu)

Viewing and moving:
ALT+tab (Tab through all open applications: to the right)
ALT+b (toggle boarder)
ALT+d (toggle show/hide desktop)
ALT+f (toggle full screen)
ALT+F4 (close active window)
ALT+Escape (send active window to the bottom of the open windows stack)
CTL+ALT-Righ/Left (Move to desktop on the Right/left)
SHIFT+ALT-Righ/Leftt (Send active window to desktop on the Right/left)
F12 (add new desktop)
F11 (remove desktop)

Launching applications:
Windows-key+ a-z (edit as required)

A bit more detail:
Show openbox menu: Note the Root menu is the openbox menu.xml : Note use arrow keys!
keybind key="A-z"

Show all desktops and active applications menu: Note use arrow keys!
keybind key="A-x"

Show Openbox window menu on active window:
remember c 4 client-menu: Note the client menu is the openbox bar drop down menu: Note use arrow keys!
keybind key="A-c"

Iconify active window:
remember i 4 iconify: use A-Tab to raise
keybind key="A-i"

Move the current window to Center:
remember M 4 Move:
keybind key="A-m"

Resize the current window: Note use arrow keys!
remember r 4 resize:
keybind key="A-r"

Toggle Maximize Full screen on/off:
remember f 4 full screen:
keybind key="A-f"

Toggle window decoration on/off:
remember b 4 border:
keybind key="A-b"

Show Desktop toggle on/off:
remember d 4 desktop:
keybind key="A-d"

Lower active window to the bottom of the window stack
keybind key="A-Escape

Keybindings for desktop switching

Move to desktop on the Right: Note use arrow keys!
keybind key="C-A-Right"

Move to desktop on the left: Note use arrow keys!
keybind key="C-A-Left"

Send active window to desktop on the left. And follow it!: Note use arrow keys!
keybind key="S-A-Left"

Send active window to desktop on the right. And follow it!: Note use arrow keys!
keybind key="S-A-Right"

Switch to desktop (number)-- Note I rarely use this a C-A-Left or C-A-Right arrow is easier

Switch to desktop (number 1)
keybind key="W-F1"

Switch to desktop (number 2)
keybind key="W-F2"

Switch to desktop (number 3)
keybind key="W-F3"

Switch to desktop (number 4)
keybind key="W-F4"

Screen capture Gnome
keybind key="A-S-Print"

Tab through all open applications: to the right
keybind key="A-Tab"

Tab through all open windows: to the Left
keybind key="A-S-Tab"

Tab through all open Desktops: to the right
keybind key="C-A-Tab"

Remove current desktop and go to next available: Open applications auto switch to next Desktop
keybind key="F11"

Add new desktop to current position
keybind key="F12"