Giter Site home page Giter Site logo

k7mdl2 / rf-power-meter-v1 Goto Github PK

View Code? Open in Web Editor NEW
26.0 6.0 1.0 73.24 MB

RF wattmeter and Band Decoder on Arduino or PSoC5 modules with Python desktop monitoring and control app. Remote operation via USB Serial or Ethernet (new).

License: MIT License

C++ 17.78% Python 5.80% C 1.70% CSS 2.04% JavaScript 2.30% HTML 57.06% Makefile 0.03% TeX 10.73% Batchfile 0.04% PostScript 2.50%
band-decoder nextion-display psoc5 n1mm rf wattmeter teensy41

rf-power-meter-v1's People

Contributors

k7mdl2 avatar w7glf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

yo8ssv

rf-power-meter-v1's Issues

Port Desktop Python App to Linux

Enable the Desktop app to run on a dedicated RPi machine. An encoder can allow for rotator turning. I have a few PiHPSDR focused controllers with encoders and switches that can become a dedicated ethernet connected controller.

Port to PSoc5LP

Port over to the Cypress PSoc5LP for better ADC performance and if using the extra programmer board breakoffs use it as it is only 1" square and plenty good for this app.

Configurable IP Addresses

Currently the desktop target IP is hard coded. Change this to store the IP address in EEPROM.
Add new remote command to remote store the address
Add new remote command to read it by remote app.
Read and use the address on each bootup and use if Enet enabled.

Allow headless operation

Remove the requirement to have a local screen attached for full operation. Ideally all config needed should be by a serial connection issuing commands to the Arduino. A much easier way is to use a USB connection to change values in the code and reload. In any case, once operational the remote commands need to replace the buttons in normal operations.
Not dependent on wireless capability but should work the same on both wireless and USB.

PCB V0.1 errors and May 2024 updated Build Notes

The first PCB produced had some small trace errors. The current version files are 0.4 and contain fixes for these and a few small new features like 12V on the Port A and B connectors.

For V0.1

  1. The vertical segment 3.3VDC trace from the Teensy to J13 connector pin 1 crosses 2 signals to the Teensy. Use a sharp knife and cut the 3.3VDC trace in 2 places either side of the horizontal traces. Pin 1 is likely not ever used.

  2. A 3.3VDc trace segment is missing supplying power to the 4 channel ADC (ADS1115) module connector. Solder a jumper wire between 3.3VDC somewhere on the board and pin 1 on J7. I found a via near the power supply section for the source.

  3. The top and bottom ground planes areas and ground traces passing through them were meant to be "stitched" tying them together using via. The via were not assigned to GND circuit so in production they are all isolated and thus do nothing. The ground copper is floating. I scraped the solder mask away from select ground traces and vias in each area to tie the top and bottom together.

  4. Related to above, the vias would also help transfer heat to the bottom of the PCB if they were actually connected properly. Further, the solder mask should have been left off this area to allow the option of bending a 7805 regulator down to the board and using the board and any metal under it to act as a heat sink. In practice, I add a heat sink to the regulator tab anyway and install a standoff under the tab & PCB to wick away some heat to the enclosure bottom or PCB support brackets.

  5. The PCB was sized to fit a particular affordable aluminum enclosure. As of May 2024 it is unavailable. I could not find and exact replacement. Since most of the hardware is on the back edge, I recommend find a slightly larger case, 7" deep is good. Mount the PCB back edge to the back of the case (lot of holes to cut!) and on the front of the PCB leave off the power switch, LED, and PCB mounted USB/Enet combo jack. Instead run wires to front mounted LED and Power Switch. For the Ethernet jack, I just used the standard Teensy mag jack and ribbon cable that runs to the Teensy 6 pin connector. I turned the jack upside down and soldered the jack case to the PCB ground plane. facing out to the side where I had lots of room. In my 2nd build I used a 10" wide x 7" deep Hammond model 1402KV enclosure. I mounted a 3.5" Nextion touchscreen using a CN milled acrylic bezel on the front panel. I used a right angle ethernet extension to chassis mount on the back panel. Same for the USB jack.

HF power meter

can I ask for HF calibration and power setting, in my country legal limit is 1500w. it must wonderful if I program the max limit and when the power pass max limit there is some warning in the screen
thank You,
Anton

Design a PCB that is RFI resistant for remote location close to high power antennas

A version built on proto PCB with lots of short wire connection in a plastic case, located within 25ft of the several VHF antennas often locks up when transmitting with high power levels like 150W to 500W. Several remedies have help a bit, but it is time to create a PCB with particular attention to RFI resistance, To that end I have a nearly completed PCB waiting for parts to arrive and do a part fit verification before ordering boards.

Redesign the Desktop UI for multiple meter support, revised button functions

With the headless version now available, all commands previously available via buttons are now remote serial port commands. Additionally CPU reset, Cal table dump, and upload a cal value are added.
Meter Rate +/- is removed from the meter
New controls needed:

  1. Power level data stream out from meter on/off (switch in meter)
  2. Overwrite meter EEPROM with Factory default values
  3. meter CPU reset
  4. Dump Calibration table from meter
  5. Upload specific meter cal value
  6. Choose which meters and band buttons to display
  7. New labels for band buttons (may want to change Arduino to fixed numerical band label, save EEPROM and translate number to friendly description on the desktop side.

Add Configuration Save and Restore to Desktop App

Save window position
Back up meter cal data
Bulk upload meter cal data.
Selectively upload meter cal data
upload (change) meterID and save
Change Radio ID label
Change comm port
Change number of meters to display and which ones (maybe a grid with check boxes)
Save to disk file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.