So now I have all the bits (microcontroller chip, usb- 5v serial module to program it with, transmitter, receiver, another cheap usb-5v serial to build the receiver around, a DS18S20 and a bunch of passive components). I also have a double breadboard, and the circuit diagram for the arduino boards so I know roughly how to put one together (basing it on the stripped down “Pro” model, in 5v 16MHz form). This means I can build it with the reset pin correctly tied to the usb-serial widget to auto-reset on sketch download etc.
At first it all goes well; I get my bare ‘168 up and running with an LED attached, and download the blink code to it, and it blinks nicely. I plug a couple of DS18S20 units in and get temperature readings from them which look sane. I learn how to use the software serial library to drive a second serial bus (so I can use the hardware one for debugging and sketch downloading at the same time).
However, when I try using the wireless devices, I can’t get anything out of the receiver. Zip. Zilch. Nada.
Much headscratching ensues. I’m just about to give in and send the units back to littlebird (which would have been awkward since this was over the christmas break), when a final google search turned up a suggestion that the exact module I’m using may not be able to sink enough current to drive the microcontroller input pin. A trip to Aztronics to get a cmos 4049 hex inverter, and I start getting output!
Trouble is, its mostly rubbish. The receiver appears to be extremely noisy, especially if the transmitter isn’t actively transmitting. In addition, sometimes I appear to be losing a bit or so at the start of transmissions, leading to complete gibberish as the receiver gets out of sync with the transmitter. After fiddling around with different bit patterns, I discover that putting the sequence “U U U U U U U U ” at the start of my transmission almost always results in the receiver getting synced up OK before the actual message starts arriving.
I also discover that having both the transmitter and receiver on the same breadboard means I need to not have any antenna wires, otherwise I don’t get anything but noise – I’m guessing the transmitter is completely overwhelming the receiver at this point.
But at least the breadboard prototype seems to be working.