This minimal Python script will convert a directory filled with tiny image captures such as this into gorgeous montages as seen below! I whipped-up this script tonight because I wanted to assess the regularity of my transmitter’s embarrassing drift. I hope you find it useful.

full-size output:assembled

10x squished output:assembled-squished

Script to assemble a folder of images into a single, large image:

import os
from PIL import Image

x1,y1,x2,y2=[0,0,800,534] #crop from (x,y) 0,0 to 800x534
squish=10 #how much to squish it horizontally

### LOAD LIST OF FILES ###
workwith=[]
for fname in os.listdir('./'):
    if ".jpg" in fname and not "assembled" in fname:
        workwith.append(fname)
workwith.sort()

### MAKE NEW IMAGE ###
im=Image.new("RGB",(x2*len(workwith),y2))
for i in range(len(workwith)):
    print "Loading",workwith[i]
    im2=Image.open(workwith[i])
    im2=im2.crop((x1,y1,x2,y2))
    im.paste(im2,(i*x2,0))
print "saving BIG image"
im.save("assembled.jpg")
print "saving SQUISHED image"
im=im.resize((im.size[0]/10,im.size[1]),Image.ANTIALIAS)
im.save("assembled-squished.jpg")
print "DONE"

Script to download every image linked to from a webpage:

import urllib2
import os

suckFrom="http://w1bw.org/grabber/archive/2010-06-08/"

f=urllib2.urlopen(suckFrom)
s=f.read().split("'")
f.close()
download=[]

for line in s:
    if ".jpg" in line and not line in download and not "thumb" in line:
        download.append(line)

for url in download:
    fname = url.split("/")[-1].replace(":","-")
    if fname in os.listdir('./'):
        print "I already downloaded",fname
    else:
        print "downloading",fname
        output=open(fname,'wb')
        output.write(urllib2.urlopen(url).read())
        output.close()




Additional Resources

These should speak for themselves. Obviously I’m the crazy person who thinks it’s funny to merge molecular biology with amateur radio.

Belgium JO10UX:
belgium JO10UX

England G4CWX:
england G4CWX

France JN39AB:
france JN39AB

Massachusetts W1BW:
mass W1BW_2jpg

Nevada KK7CC:
NE KK7CC

Netherlands JO22DA:
netherlands JO22DA

Alaska KL1X:
alaska

Italia I2NDT:
Italia I2NDT

New Zealand ZL2IK:New Zealand ZL2IK

Germany DL4MGM:
NewZealand





Additional Resources

This page documents the progress of my MEPT (manned experimental propagation transmitter) endeavors. If you have questions, feel free to E-mail me! My contact information can be found by clicking the link on the right navigation menu.

THE TRANSMITTER

here it is
IMG_3459IMG_3466IMG_3467localgrabber02 57

THE SIGNAL

aj4vd_gatoraj4vd_gator_zoomantenna

THE REPORTS

Florida – 288.3 miles away (W4HBK) May 22, 2010

2010_05_22_W4HBK_Florida

Massachusetts – 1,075.5 miles away (W1BW) May 27, 2010

2010_05_27_W1BW_MA

Belgium – 4,496.3 miles away (ON5EX) May 27, 2010

2010_05_27_ON5EX_Belgium

Germany- 4,869.2 miles away (DL4MGM) May 28, 2010

2010_05_28_DL4MGM_Germany

Essex – 4,356.4 miles away (G6AVK) May 28, 2010

2010_05_28_G6AVK_Essex

New Zealand – 8,077.6 miles away (ZL2IK) May 29, 2010

2010_05_29_ZL2IK_NewZealandNewZealand





Additional Resources

Additional Resources

PIMP MY OSCILLOSCOPE! Yeah, see that backlight? I made it. My o-scope’s backlight hasn’t worked since I got it (for $10), so I soldered-up a row of 9 orange LEDs (I had them in a big bag) and hooked them directly up to a 3v wall wart. In retrospect I wish I had a bunch of blue LEDs… but for now I can’t get over how well this worked! Compare it to the images a few posts back – you can really see the grid lines now!oscilliscope_leds

I know this is super-basic stuff for a lot of you all, but I haven’t found a place online which CLEARLY documents this process, so I figured I’d toss-up a no-nonsense post which documents how I calculate the power output (in watts) of my QRP devices (i.e., QRSS MEPT) using an oscilloscope.qrss_qrp_circuit_scope

This is the circuit I’m trying to measure.

supply

I think I have increased power output because I’m now powering my 74HC240 from this power supply (5v, 200A) rather than USB power (which still powers the microcontroller). Let’s see!

qrss_qrp_signal

There’s the signal, and I haven’t calibrated the grid squares (this thing shifts wildly) so I have to measure PPV (peak-to-peak voltage) in “squares”. The PPV of this is about 5.3 squares.

10vSquare

I now use a function generator to create square waves at a convenient height. Using the same oscilloscope settings, I noticed that 10v square waves are about 7 squares high. My function generator isn’t extremely accurate as you can see (very fuzzy) but this is a good approximation. I now know that my signal is 5.3/7*10 volts. The rest of the math is pictured here:

powerCalcs

140mW – cool! It’s not huge… but it’s pretty good for what it is (a 2-chip transmitter). I’d like to take it up to a full watt… we’ll see how it goes. My 74HC240 is totally mutilated. I accidentally broke off one of the legs, couldn’t solder to it anymore, and thought I destroyed the chip. After getting distraught about a $0.51 component, I ripped ALL the legs off. Later I realized I was running out of these chips, and decided to try to revive it. I used a dremel with an extremely small bit (similar to a quarter-round burr in dentistry) and drilled into the black casing of the microchip just above the metal contacts, allowing me enough surface area for solder to adhere to. I’m amazed it works! Now, to get more milliwatts and perhaps even watts…

testcircuit