The UI as a mobile display for OP25

Overview

OP25 Mobile Control Head

A 'remote' control head that interfaces with an OP25 instance. We take advantage of some data end-points left exposed for the web interface of OP25 to fill out control head with data.

Goal of This Project

My goal is to build a commercial radio or mobile scanner-like control head for remote mounting an SDR based P25 Phase 1 and Phase 2 capable scanner. without making modifications to the OP25 software itself.

This Project was born out of Pi25 Which consists of a portable handheld and mobile version. The mobile version is this repository and is the only one currently being actively developed at the moment.

Screenshots

op25mch_uri op25mch_nightmode

Progress

  • Build the base 'Frame' / 'Grid' Tkinter Display
  • Pull data from OP25 WebUI Server
  • Run application on Android
  • Background Display Selector
  • Night Mode Functionality
  • OP25 URI Entry
  • OP25 Instantance Broadcast to Find URI Automatically (Base Code Done, Not Tested Within UI)
  • Radio Reference System Importing
  • Automatic Generation of .tsv files
  • Remote Command Execution Server for Making Changes to OP25 Whitelist/Blacklist and Starting OP25 with Given Parameters
  • Call Log (Current Run Only)
  • Bearing to nearrest site using Compass (need usb gps to complete testing, code written and placeholder compass on display)
  • Status Bar for Reporting Errors, Remote Command Send / Recieve Messages and more
  • Automatic Site Switching (Very close to being implemented, all supporting code is done)
  • 16 Channel 'On-The-Fly' Scannlist on a Button Grid. (Plan is to right click a button to give tag/talkgroupID, Press in to Enable Scan of Talkgroup) op25mch_scanmodes I'm pretty excited about this one. You can switch between 'Scan List' mode or 'Site Scan' mode to hear all site traffic or just scanlists (whitelist.tsv). To make this a bit more special though I've added a 16ch 'ScanGrid' which loads from a user provided 'scangrid.tsv' file. This grid is available ONLY in 'List Scan Mode'. Simple push the buttons that correspond to the talk groups you wish to hear and there ya go! To mute them, just hit the button again! When you're done, just switch back to 'site scan' mode.

How Do I Use It?

I have soooooo much to add, consider this VERY unfinished. Manually pip install any dependancies...

Upon first start you'll be prompted for your OP25 URI. If you enter it incorrectly that's okay, after first run "config.ini" will be created in the directory you ran it in. You can edit the URI there directly.

If you do not run the remote script on the device hosting your OP25 instance you'll NEED to be sure you enable the OP25 Web interface on the BOATBOD fork! ''' -l http:0.0.0.0:8080'''

Owner
Sarah Rose Giddings
Avid radio experimenter and hobbyist developer. Founder of the Signals Everywhere YouTube channel.
Sarah Rose Giddings
PyTorch implementation of SMODICE: Versatile Offline Imitation Learning via State Occupancy Matching

SMODICE: Versatile Offline Imitation Learning via State Occupancy Matching This is the official PyTorch implementation of SMODICE: Versatile Offline I

Jason Ma 14 Aug 30, 2022
🌈 PyTorch Implementation for EMNLP'21 Findings "Reasoning Visual Dialog with Sparse Graph Learning and Knowledge Transfer"

SGLKT-VisDial Pytorch Implementation for the paper: Reasoning Visual Dialog with Sparse Graph Learning and Knowledge Transfer Gi-Cheon Kang, Junseok P

Gi-Cheon Kang 9 Jul 05, 2022
LSTM model trained on a small dataset of 3000 names written in PyTorch

LSTM model trained on a small dataset of 3000 names. Model generates names from model by selecting one out of top 3 letters suggested by model at a time until an EOS (End Of Sentence) character is no

Sahil Lamba 1 Dec 20, 2021
Dados coletados e programas desenvolvidos no processo de iniciação científica

Iniciacao_cientifica_FAPESP_2020-14845-6 Dados coletados e programas desenvolvidos no processo de iniciação científica Os arquivos .py são os programa

1 Jan 10, 2022
Tensorflow Repo for "DeepGCNs: Can GCNs Go as Deep as CNNs?"

DeepGCNs: Can GCNs Go as Deep as CNNs? In this work, we present new ways to successfully train very deep GCNs. We borrow concepts from CNNs, mainly re

Guohao Li 612 Nov 15, 2022
TorchGRL is the source code for our paper Graph Convolution-Based Deep Reinforcement Learning for Multi-Agent Decision-Making in Mixed Traffic Environments for IV 2022.

TorchGRL TorchGRL is the source code for our paper Graph Convolution-Based Deep Reinforcement Learning for Multi-Agent Decision-Making in Mixed Traffi

XXQQ 42 Dec 09, 2022
[ACM MM 2021] Diverse Image Inpainting with Bidirectional and Autoregressive Transformers

Diverse Image Inpainting with Bidirectional and Autoregressive Transformers Installation pip install -r requirements.txt Dataset Preparation Given the

Yingchen Yu 25 Nov 09, 2022
A framework to train language models to learn invariant representations.

Invariant Language Modeling Implementation of the training for invariant language models. Motivation Modern pretrained language models are critical co

6 Nov 16, 2022
A minimalist environment for decision-making in autonomous driving

highway-env A collection of environments for autonomous driving and tactical decision-making tasks An episode of one of the environments available in

Edouard Leurent 1.6k Jan 07, 2023
A comprehensive and up-to-date developer education platform for Urbit.

curriculum A comprehensive and up-to-date developer education platform for Urbit. This project organizes developer capabilities into a hierarchy of co

Sigilante 36 Oct 04, 2022
Stacs-ci - A set of modules to enable integration of STACS with commonly used CI / CD systems

Static Token And Credential Scanner CI Integrations What is it? STACS is a YARA

STACS 18 Aug 04, 2022
AgeGuesser: deep learning based age estimation system. Powered by EfficientNet and Yolov5

AgeGuesser AgeGuesser is an end-to-end, deep-learning based Age Estimation system, presented at the CAIP 2021 conference. You can find the related pap

5 Nov 10, 2022
Unofficial Alias-Free GAN implementation. Based on rosinality's version with expanded training and inference options.

Alias-Free GAN An unofficial version of Alias-Free Generative Adversarial Networks (https://arxiv.org/abs/2106.12423). This repository was heavily bas

dusk (they/them) 75 Dec 12, 2022
The code for our paper Semi-Supervised Learning with Multi-Head Co-Training

Semi-Supervised Learning with Multi-Head Co-Training (PyTorch) Abstract Co-training, extended from self-training, is one of the frameworks for semi-su

cmc 6 Dec 04, 2022
NVIDIA container runtime

nvidia-container-runtime A modified version of runc adding a custom pre-start hook to all containers. If environment variable NVIDIA_VISIBLE_DEVICES i

NVIDIA Corporation 938 Jan 06, 2023
[EMNLP 2021] Distantly-Supervised Named Entity Recognition with Noise-Robust Learning and Language Model Augmented Self-Training

RoSTER The source code used for Distantly-Supervised Named Entity Recognition with Noise-Robust Learning and Language Model Augmented Self-Training, p

Yu Meng 60 Dec 30, 2022
DIR-GNN - Discovering Invariant Rationales for Graph Neural Networks

DIR-GNN "Discovering Invariant Rationales for Graph Neural Networks" (ICLR 2022)

Ying-Xin (Shirley) Wu 70 Nov 13, 2022
Semantic segmentation task for ADE20k & cityscapse dataset, based on several models.

semantic-segmentation-tensorflow This is a Tensorflow implementation of semantic segmentation models on MIT ADE20K scene parsing dataset and Cityscape

HsuanKung Yang 83 Oct 13, 2022
Continual reinforcement learning baselines: experiment specifications, implementation of existing methods, and common metrics. Easily extensible to new methods.

Continual Reinforcement Learning This repository provides a simple way to run continual reinforcement learning experiments in PyTorch, including evalu

55 Dec 24, 2022
Robotics environments

Robotics environments Details and documentation on these robotics environments are available in OpenAI's blog post and the accompanying technical repo

Farama Foundation 121 Dec 28, 2022