Converting 24-bit signed values to float
from here
float convert( const unsigned char* src ){   int i = ( ( src[ 2 ] << 24 ) | ( src[ 1 ] << 16 ) | ( src[ 0 ] << 8 ) ) >> 8; return ( ( float ) i ) / 8388607.0

Unbrick DM111p
Netgear DM111p stuck with red LED on:
Dont despair!
  • Buy a 3.3V USB to TTL adapter eg this one 
  • Cut the cable near the phone adapter (not the usb side)
  • Get a multimeter and work out which of the 3 wires does what as shown here
  • Open the DM111p by removing the 4 screws on the bottom of the enclosure
  • Look at the J302 connector:
| 1  2  3  4  |
|___--- ___|
1:  Vcc = +3.3 V [NOT Needed]
2:  Ground = 0V
3:  TX
4:  RX 
  • Connect each of the 3 wires of your usb-ttl converter to pins 2,3 and 4
  • Plug in the ethernet cable to the DM111p
  • Connect USB adapter to PC
  • Start your favourite terminal program e.g. hyper terminal, cool term etc
  • Switch the DM111p on
  • You should see a terminal screen with lots of writing
  • once the terminal stops, type   ifconfig eth0     
  • Swap this IP with your private range
  • Next download the dm111p firmware from here 
  • Start your TFTP server on your PC and copy the unzipped firmware in the root. Note your TFTP server IP e.g.
  • Go back to the terminal window and type  tftp -g -f firmwareFilename
  • Wait until the firmware is flashed
  • DM111p unbricked

How to enable macros in PowerPoint 2003 Shows (pps)
This took me 10 hours to work out
Basically I wrote the following code in a macro:
Public Sub OnSlideShowPageChange()
    Dim i As Integer
    i = ActivePresentation.SlideShowWindow.View.CurrentShowPosition

    If i <> 13 Then
        Exit Sub
    End If
'Change values below

UserForm1.Caption = "Morse Decoder by 5B4WN"
UserForm1.Left = ActivePresentation.Slides(i).Shapes(1).Left + 130
UserForm1.Top = ActivePresentation.Slides(i).Shapes(1).Top + 20

UserForm1.Show 0
UserForm1.TextBox1.Text = ""


End Sub
But no matter what I did, it would NOT run in the pps format despite lowering the macro security settings to LOW!

1. Ensure that the word Public appears before Sub
2. Insert an activeX control on the first slide eg a checkbox and define its visibility as hidden
3. Save the presentation as pps

Et voila! It works....

Connecting PMSDR to K3 as panadapter and win-test
I couldnt find this information on the web but this worked.
1. Connect PMSDR to IF out on K3, USB and sound card
2. Download Virtual Serial Port Emulator (32bit is free) from here
3. Connect the K3 to a hardware serial port eg COM1
4. Start VSPE and create a SPLITTER com1 to vCOM3
5. Connect ALL software (win-test, PMSDR extIO) to vCOM3 (not COM1) ie configure COM3 in win-test as radio 1 (4800N81). This is IMPORTANT!
6. Start HDSDR with PMSDR dll in its directory and enable CAT on PMSDR extIO with COM3 4800N81 but also allow REMOTE send CAT commands
7. That's it!  Move the dial and the HDSDR frequency changes. Click on the panadapter and the frequency of the K3 changes. Type 28000 in win-test and both HDSDR and K3 change! Magic

O2 wireless and VPN box problems
If you are unable to use PPTP VPN on your O2 wireless box II router try the following solution originally posted here:
Full credit to andy0000
1. Login to the web interface: http:://
2. Use  SuperUser and password your serial number
3. Choose configuration and Save and Restore Configuration
4. Backup Configuration
5. Open User.ini file with text editor
6. Find and change the following sections:

[ connection.ini ]
AFTER THIS LINE: bind application=ESP port=0
PUT THIS LINE: bind application=PPTP port=1723-1723

[ servmgr.ini ]
AT TOP OF THIS SECTION ADD: ifadd name=PPTP group=lan
AFTER THIS LINE: ifadd name=PING_RESPONDER group=lan
PUT THIS LINE: modify name=PPTP state=enabled