I want to build a simple crystal radio receiver. I do not want amplify the signal received. I want to detect the presence of a transmitted signal, and then use the presence of the received signal as a trigger to switch on another device (battery powered). 
My knowledge is VERY basic, and I have been trying to learn more. I have found a schematic on the web. 



http://www.circuitdiagram.org/how-to-make-build-crystal-radio.html

Is this design suitable for my intended purpose? (minus the Earpiece)
From what I can tell, this receiver is made up of an inductor, a variable capacitor, and a diode. I am assuming my circuit would need a transistor switch as well. What else would I need? (I have assumed here that the antenna is part of the inductor coil - is that correct?)

I am looking for components I can use to make up this circuit.
I want to receive the signal across a range of 60 feet and I want the circuit to be small (>1cm). What else do I have to ascertain in order to start searching for the components I need? 

If anyone can to suggest suitable inductors, capacitors and/or diodes - this novice would be grateful!


Question: Number-to-word converter
Answer: A couple of thoughts:


You only want to output zero in the special case when the number is 0. It would be easiest to handle that special case at the outermost level.
Use " and ".join and ", ".join to construct strings from parts. The delimiter will be automatically left out when there are less than two parts.


Here's how I would rewrite subThousand as two functions:

def subThousand(inputNum):
    """Convert a number &lt; 1000 to words, and 0 to the empty string
    """
    num = int(inputNum)  #this should be done at higher level
    hundreds, ones = divmod(num, 100)

    parts = []
    if hundreds:
        parts.append(ByOne[hundreds] + " hundred")
    if ones:
        parts.append(subHundred(ones))

    return " and ".join(parts)

def subHundred(num):
    """Convert a number &lt; 100 to words, and 0 to the empty string
    """
    if num &gt;= 20:
        tens, ones = divmod(num, 10)
    else:
        tens, ones = 0, num

    parts = []
    if tens:
        parts.append(ByTen[tens])
    if ones:
        parts.append(ByOne[ones])

    return "-".join(parts)