Git Product home page Git Product logo

vtx_power_measure's Introduction

VTX power measurment tool

Terminal based python script based on a pandas library. It can be used to read an Immersion RF-Meter v2 via USB.

This script is not finished at all and in an alpha-release status ;-). But it works for my needs.

Note

This software is tested on OSX only and should be running on Linux as well. Working unter Windows is ongoing.

This is a quick & dirty implementation to compare different VTX boards on my workbench - and what can I say - none of the cheap Banggood / AliExpress China VTX boards came close to the manufacturer's stated maximum output power.
Most 800mW VTX delivered on average between 500-650mw. I tested about 10-12 different VTX boards.

Buy cheap, buy twice

In comparision to a TBS-Sixty9 vtx no China crap comes into the range of TBS !

Immersion RF-Meter V2

https://www.immersionrc.com/fpv-products/rfpwrv2/

For this tool the Immersion RF-Meter V2 is used and connected via USB to the host. This little RF-Meter use a simple CDC parameters for communication.

Workflow

A couple of different parameters controll the worklow

  • number of different frequencies
  • number of different power (mW)
  • Parameters like "delay" or "time" are used to set number of readings per second and how long a measurment per frequence and per power takes

System read the first frequency and the first power configuration and wait for user to configure connected vtx-board. If done press ENTER.

Example terminal output

***************************************************************************
Please set POWER on     VTX to 200mW
Please set FREQ on      VTX to 5785Mhz Freq

Nearest frequency for ImmersionRF-Meter was set to 5800Mhz automatically

Please set your VTX to above values - Press ENTER to start measuring
***************************************************************************

Now the system measures "time" seconds and collect data. In this case loop through all power configurations. If done, loop through all frequencies

Stored data

Attribute csv InfluxDB Comment
Model x x Model/Type of VTX board
Test x x InfluxDB tag: unique timestamp for the complete run
Band x x InfluxDB tag: VTX Band (like A, B, H, I, R, ...)
Info x only output to CSV, additional information pased on paramter --info
t_mw x x InfluxDB tag: target mw (e.g. 25mW, 100mW, 200mW, ...)
t_dbm x x InfluxDB tag: target mBm (e.g. 14.0 dBm, ...)
mw x x InfluxDB field key = mW, field value = measured mw
dbm x x InfluxDB field key = dbm, field value = calculated from read mW
diff_mw x x InfluxDB field key = diff_mw, field value = target_mW - mW
diff_dbm x x InfluxDB field key = diff_dbm, field value = target_dbm - dbm
timestamp x InfluxDB timestamp unix format in nanoseconds (ns)

Starting parameters

This python script do not have any graphical output, it's designed as a pure terminal script with output on console.

Arguments

Examples

InfluxDB & Grafana

It's possible to store data into a InfluxDB V2 database. Generating output plots can be done with grafana.

A simple dashboard is included in folder

Via parameter it's possible to include output to this database

CSV output

Via parameter it's possible to create from all data an output csv file. Filename includes model name and a timestamp. Default separator is ";" - can be adjusted inside config.py

Used Libraries

  • Pandas
  • InfluxDBClient
  • Matplotlib
  • FPDF

Developer hints

History

Version Date Info
0.1 06-21 initial

vtx_power_measure's People

Contributors

mrrobot62 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

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.