Giter Club home page Giter Club logo

radtel-rt-890-oefw's Introduction

Radtel RT-890 Custom Firmware

This project is an effort to improve the firmware of the Radtel RT-890 in terms of features and radio performance.

It is based on DualTachyon's OEFW which is reversed from the original Radtel 1.34 firmware.
Thanks to him for making this possible!

Disclaimer

This firmware is a work in progress and could be unstable; it could alter your radio and its data.
Use at your own risk and remember to back up your SPI memory before installing any custom firmware.

Features

  • All stock features: check user's manual
  • RX frequency can be set from 10 to 1300 MHz (results may vary)
  • SSB reception
  • Light theme
  • AM Fix (improvement in AM reception with strong signals, port of @OneOfEleven's excellent work on the Quansheng UV-K5)
  • Full control over side key and main key shortcuts
  • New configurable actions (FM Radio, Scanner, FLashlight)
  • 0.01K step
  • Displaying registers in single VFO mode
  • Displaying dBM when receiving
  • Reworked scanner
    • 8 Scan lists
    • Faster scanning
    • Resume mode: Time, Carrier, No
    • Change scan direction while scanning (up/down keys)
    • Force scan resume (up/down keys)
  • Reworked main menu
  • Ability to disable LED toggling when scanning
  • And much more!

Default Shortcut Keys (long press) - Configurable in main menu

1    => Start/stop scanning memory channels
2    => Toggle AM fix
3    => Toggle VOX
4    => Change TX power on current channel
5    => Change squelch level
6    => Toggle dual watch
7    => Toggle backlight
8    => Change frequency step
9    => Go to Preset Channel
0    => Launch broadcast FM mode
*    => Edit TX frequency on current channel
#    => Toggle key lock
Menu => DTMF decoder
Exit => Single/dual VFO display

Scanning guide

Scan list management:

  • This firmware has 8 scanlists.
  • The current channel can be added to any scanlist using the Ch In List X menus.
  • The scanlist to be used can be selected in the List To Scan menu.
  • To ignore scanlists and scan all channels, select * in the List To Scan menu.
  • To add/remove current channel to current scanlist, use the Toggle SList shortcut.

Scanning:

  • To start scanning, press a key mapped to the Freq scanner shortcut (default: long press on key 1).
  • When scanning is in progress, use the Freq scanner key to change the scan list, this action will move to the next non-empty scanlist, or switch to scan all mode if all subsequent lists are empty.
  • To change the direction of current scan, use the up/down keys.
  • To force the scan to resume when the scanner stops on a signal, use the up/down keys.
  • Press any key other than Freq scanner to stop scanning.

Spectrum Usage

Start spectrum by mapping a key (side key or keypad) to the Spectrum action using the main menu. Spectrum will launch, centered on the frequency from the active VFO/Memory Channel.

Spectrum keys:

Up   => Normal: Increase frequency range by frequency +/- (number in middle of bottom row)
        Holding on a frequency: Move up to the next frequency
Down => Normal: Decrease frequency range by frequency +/- (number in middle of bottom row)
        Holding on a frequency: Move down to the previous frequency
1    => Change number of scan steps (16, 32, 64 or 128)
2    => Switch up to next preset
3    => Change modulation (AM, FM or SSB)
4    => Change step size (0.25k - 50k)
5    => Switch down to previous preset
6    => Inrease squelch level
7    => Hold on current frequency
8    => Toggle between bars and waterfall views
9    => Decrease squelch level
0    => Toggle filter (U = unfiltered, F = filtered)
*    => Change scan delay (0 - 10ms)
#    => Toggle bandwidth (W = wide, N = narrow)
Menu => Jump to VFO mode with current frequency and settings (to allow TX)
Exit => Exit spectrum

Spectrum display:

Register Editor Usage

Register Editor must be enabled with a Makefile flag. It is off by default to save space. Start register by mapping a key (side key or keypad) to the Reg Editor action using the main menu. Register Editor will launch, showing the current register values in blue. The register currently being edited will display in large white font.

Register Editor keys:

Up   => Move editor to next register
Down => Move to previous register
1    => Change AGC level
2    => Decrease value of current register's setting by 1
3    => Increase value of current register's setting by 1
5    => Decrease value of current register's setting by 10
6    => Increase value of current register's setting by 10
8    => Decrease value of current register's setting by 100
9    => Increase value of current register's setting by 100
Exit => Exit Register Editor

Note: There is also an key action (mappable to any key) that will cycle through the AGC levels. To use this assign the AGC Mode action to a key. It will cycle between Auto AGC and Fixed AGC levels 1-7. This action is available even if the Register Editor Makefile flag is disabled.

Update Instructions

SPI memory backup

Use RT-890-Flasher

SPI memory restore

Use RT-890-SPI-restore-CLI

Customizations

UART_DEBUG              => UART debug output
MOTO_STARTUP_TONE       => Moto XPS startup beeps
ENABLE_AM_FIX           => Experimental port of the great UV-K5 AM fix from OneOfEleven
ENABLE_ALT_SQUELCH      => Port of optimized UV-K5 squelch system from various firmwares
ENABLE_NOAA             => NOAA weather channels (always re-set the sidekeys actions from menu after modifying the available actions)
ENABLE_SPECTRUM         => Spectrum frequency view (assign to a shortcut key to access)
ENABLE_SPECTRUM_PRESETS => Band presets for Spectrum mode (ENABLE_SPECTRUM required to be enabled)
ENABLE_FM_RADIO         => FM broadcast radio mode
ENABLE_LTO              => Link Time Optimization
ENABLE_OPTIMIZED        => Compiler options to reduce binary size

Build & Flash

See Compiler, Building and Flashing sections below.

Pre-built firmware

You can find pre-built firmwares in the Actions

Building from browser

To build the firmware without installing any software you can run a full featured IDE and compiler in your browser using GitHub Codespace.
The preconfigured environment runs Linux Ubuntu 22.04 with gcc-arm-none-eabi 15:10.3-2021.07-4.

Starting a new Codespace

You just need to clic on the green button <> Code -> Codespace -> Create Codespace on ...
After the Codespace is initialized, you can open and edit any file, for example, modify the options in the makefile and build the firmware typing make in the terminal panel.

Starting an existing Codespace

If you started a Codespace less than 7 days ago and have not manually deleted it, then you will be offered to restart it instead of creating a new one.
The start-up will be much faster but you will need to update the code before compiling as it will contain the version of the code from the time of its creation.
To do this, simply type the following commands in the console: make clean, then git pull, and finally make.

A word about the free offer

The most observant users will have noticed this message: Codespace usage for this repository is paid for by...
Github will never charge you without consent. If you reach the limit of the free offer, which is very unlikely, you will not be able to start your codespaces until the monthly limits reset, that's all.
More informations

Telegram group

If you want to discuss this project, you can join the Telegram group.


Original OEFW readme

Support

Open reimplementation of the Radtel RT-890 v1.34 firmware

This repository is a preservation project of the Radtel RT-890 v1.34 firmware. It is dedicated to understanding how the radio works and help developers making their own customisations/fixes/etc. It is by no means fully understood or has all variables/functions properly named, as this is best effort only. As a result, this repository will not include any customisations or improvements over the original firmware.

Compiler

arm-none-eabi GCC version 10.3.1 is recommended, which is the current version on Ubuntu 22.04.03 LTS. Other versions may generate a flash file that is too big. You can get an appropriate version from: https://developer.arm.com/downloads/-/gnu-rm

Building

To build the firmware, you need to fetch the submodules and then run make:

git submodule update --init --recursive --depth=1
make

Flashing

License

Copyright 2023 Dual Tachyon https://github.com/DualTachyon

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

radtel-rt-890-oefw's People

Contributors

reppad avatar xawen avatar tunas1337 avatar lciccio avatar jcalado avatar juantaldea avatar dualtachyon avatar

Stargazers

 avatar  avatar

Watchers

 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.