This project is going to show you a very very small RF Signal Generator 35Mhz to 4.4Ghz on a Tiny PCB that can be easily integrated into project. this Project is complement to USB RF signal generator which I published few weeks ago. Project is based on Analog device ADF4351
Device Pinout
Schematic
PCB
Firmware
Cross Platform PC Software
Open Source QT Application
Python Application
|  | 
UART Intarface
UART Command Manual — RFSTAMP44
    All commands start with $, followed by a letter (or ?) and optional parameters.
    End commands with CR/LF.
  
| Command | Usage | Description | 
|---|---|---|
| $F | $F <frequency_MHz> e.g. $F 433.12 | Set output frequency. Accepts float MHz values with 10 kHz resolution. Range: 35.00 MHz – 4400.00 MHz. | 
| $A | $A <mode> e.g. $A 2 | Select AUX I/O function: 
 | 
| $B | $B <frequency_MHz> | Set sweep START frequency (MHz Float, min10Khz resolution). | 
| $C | $C <frequency_MHz> | Set sweep STOP frequency (MHz Float, min 10Khz resolution). | 
| $E | $E | Erase stored settings (EEPROM). | 
| $G | $G <frequency_MHz> | Set sweep step frequency (MHz Float, min 10Khz resolution). | 
| $J | $J <time_ms> | Set dwell time in ms. | 
| $R | $R <frequency_MHz> | Set reference frequency (10–250 MHz). | 
| $O | $O <0|1> | Enable/disable RF output. | 
| $P | $P | Write configuration to PLL. | 
| $T | $T | Save parameters to EEPROM. | 
| $S | $S <0|1> | Enable/disable sweep mode. Updates “Start on Boot”. | 
| $H | $H <0|1> | Enable/disable auto-start sweep on boot. | 
| $I | $I | Identify device / FW version notification. | 
| $M | $M<n> <hex_value> | Write hex value to register Rn (0–5). | 
| $? | $? | Print current settings + registers. | 
- UART Baud Rate 115200
- Frequencies given in MHz (e.g. 433.12), store with 10 kHz resolution.
- Reference frequency clamped 10–250 MHz.
- $Mexpects hexadecimal values (e.g.- 0x12345678).
- Commands must end with \ror\n.
- No echo for commands.
HIDRAW Device access under Linux
What’s a “USB HID raw device”?
- HID = Human Interface Device (like keyboards, mice, game controllers, barcode scanners). 
- hidrawdevices expose raw HID reports directly to user space.
- Path looks like: 
Why you can’t just open them
- On most distros, these devices are owned by - rootand a system group like- plugdevor- input.
- Permissions are typically: 
Why udev rules help
udev manages device nodes dynamically when hardware is connected.
By adding a udev rule, you can:
- Change file permissions (e.g., - MODE="0666"for read/write by everyone).
- Change ownership (e.g., - GROUP="plugdev").
- Apply these settings automatically whenever the device is plugged in. 
Example rule:

115.jpg)
115.jpg)

.png)
.png)










Comments
Post a Comment