...How fast can it scan the 433MHz band? say 2MHz bandwidth....
Thanks john
Hi John.
With the Picaxe operating at 16Mhz, it can scan the 433 ISM band from 433.050 MHz to 434.70 MHz in ~ 185 ms using 10KHz steps in frequency. With the Picaxe operating at 32 MHz this is cut in half to ~ 92 ms. Not blazing speed but should be able to catch a lot of signals over multiple scans.
My dilemma is what features to include and determining actually what it should do when it locates a carrier signal. I originally did this for testing DORJI RF Modules where It searched for a valid preamble and then displayed RSSI. But that only works with signals that use a 01010101 preamble format.
So I turned packet handling off and set the module to read RSSI in a loop and found that it works quite well at detecting a carrier signal. I was able then to determine the center frequency and relative output of the cheap ASK modules by reading RSSI while shifting the receivers frequency. This led to the idea of a general purpose RSSI indicator to be used as a tool for setting up & testing RF modules, but not necessarily as a Wide Band Scanner with a graphic display and a bunch of bells & whistles. However, the possibilities are almost endless with the right code. The RF module is quite capable.
Right now I have an LED bar graph that show relative RSSI. There is a "squelch" pot that sets the RSSI threshold to only process signals above a certain RSSI level. The frequency and actual RSSI level in dBm are displayed on the PE terminal, but could just a easily be done on an OLED Display. I could possibly add a switch to reduce sensitivity. There could be one mode for Packet Sensing and one mode for Carrier Detect. In packet sensing,mode, we can select from OOK/ FSK & GFSK.
Whats nice about all this, is that I have written an extensive Picaxe Basic library of "functions" (subroutines) for the SI4431 that drastically simplify Picaxe programming for just about anyone.
For example to set the RF Module to Receive mode:
Gosub RX_ON ....instead of:
------------------------
reg_addr = $07
reg_val = $05
setbit reg_addr,7 'write bit
low nsel
hspiout (reg_addr,reg_val)
clearbit reg_addr,7 'restore
high nsel
-------------------
This is just one example of many. The idea was to make the SPI stuff simple and almost seamless so that anyone could work with these modules , without having to pour over the Datasheet, Applications Notes and the somewhat confusing Configuration Spreadsheet.
So you guys tell me what you think would be good for the Picaxe community and I'll work it up. Please no graphic displays. If you want that, then adding it should be rather straight forward. For those of us in the USA, there are functions for operating in the 915 MHz Band ( Can cover 868 as well).