mirror of
https://github.com/whosmatt/uvmod
synced 2024-11-21 22:55:30 +00:00
62 lines
5.3 KiB
Markdown
62 lines
5.3 KiB
Markdown
# LOOKING FOR CONTRIBUTORS
|
|
There is a partially finished dev version of UVMOD with many new features, including symbol file based universal patcher and eeprom editor. However, bringing it to release takes more time that I can spare at the moment. Please reach out if you are interested in contributing to the project.
|
|
That being said, the uv-k5 modding scene is not particularly active anymore, so interest is limited.
|
|
|
|
|
|
# [CLICK HERE TO OPEN UVMOD](https://whosmatt.github.io/uvmod/)
|
|
## [中文版 Open Chinese Version (maintained independently)](https://uvmod.xanyi.eu.org/)
|
|
## [Open Russian Version (maintained independently)](https://uvmod.valek.net.ru/)
|
|
## [Open Portuguese Version (maintained independently)](https://meshtastic.pt/QuanSheng/)
|
|
|
|
### Info about v26/v27
|
|
|
|
UVMOD is based on v26 because the newer v27 firmware brings no important changes other than one small fix that only applies to a small number of units.
|
|
Depending on the factory calibration of some radios, the TX power above 435MHz can be lower than it should be due to a programming oversight.
|
|
v27 fixes this so that the TX power is always correct.
|
|
To see if your unit is affected you can either use a power meter, or you can use a receiver with rssi to check if the output power on the L setting is higher than the output power on the H setting.
|
|
|
|
For now, the russian and portuguese version of UVMOD includes limited v27 support, so you can use those if your unit is affected.
|
|
|
|
We are working on a mod that fixes this in v26 as well.
|
|
|
|
## Introduction
|
|
|
|
Web-based client-side Quansheng firmware patcher and Web Serial flasher written in Javascript and HTML using [Bootstrap 4.6.0](https://getbootstrap.com/docs/4.6/getting-started/introduction/), jQuery and parts of the [SB Admin 2 Theme](https://startbootstrap.com/theme/sb-admin-2).
|
|
It is based on the discoveries by the many contributors in the [uvmod-kitchen](https://github.com/amnemonic/Quansheng_UV-K5_Firmware/tree/main/uvmod_kitchen) and implements the same functionality in a modular and flexible javascript structure.
|
|
|
|
Visitors can generate a patched firmware image by selecting the desired patches. Patches modify the firmware on a binary level and can accept user input to customize variables. A custom base image can be supplied to allow support for mods that are compiled and linked directly into the firmware.
|
|
The generated firmware can be flashed directly to the radio with supported browsers, no external software is needed.
|
|
|
|
## Mod development
|
|
|
|
Clone this repository and execute `python3 -m http.server` or `python -m http.server` in the root directory for an instant local web server, allowing easy testing.
|
|
Mods are defined in [mods.js](mods.js), with an example mod to outline the pattern.
|
|
Also __refer to the helper functions and documentation in__ [modframework.js](js/modframework.js).
|
|
|
|
The supported format for binary data is in the format of a hex string __without separators__. You can use find and replace to remove all `\x` from a regular hex string or directly export the correct format from a bytes object in python using `print(''.join('%02x'%i for i in BYTES_OBJECT))`.
|
|
|
|
## Statement regarding dangerous clones of UVMOD
|
|
|
|
The radio spectrum is used by many different people and organizations, some of which are very important to critical infrastructure. Modifying the firmware of a radio needs to be done with care and consideration for the consequences.
|
|
UVMOD makes it easy and accessible for anyone without any background knowledge to modify the firmware of their radio. __However, certain mods such as TX Unlock mods can not be used legally and safely without a certain amount of background knowledge because the behaviour of these mods is counterintuitive.__
|
|
UVMOD is designed to hide all high-risk mods behind a information section in the instructions to ensure that users are aware of the risks and consequences.
|
|
|
|
__Sadly, there has been one person (RE3CON) who has cloned UVMOD and removed all of the safety precautions and warnings.__ The team behind UVMOD and the Quansheng modding scene do not condone this behavior and we strongly advise against using this clone.
|
|
__Use the links at the top of this file to access all approved versions.__
|
|
|
|
## Code of Conduct
|
|
|
|
For the reasons outlined above, we have decided to implement a code of conduct for this project.
|
|
While we can not stop intentional abuse of the software for illegal purposes, we must at least try to prevent accidental abuse.
|
|
To accomplish this:
|
|
- Mods are considered dangerous when they can be abused to break the law or cause harm to others.
|
|
- Mods that are considered dangerous must be hidden using the this.hidden property.
|
|
- Mods that are considered dangerous must have a clear description and an unambiguous title.
|
|
|
|
Failing to follow the rules above on a fork/clone of the main project may result in a negative public statement and/or a DMCA takedown request from the contributors involved.
|
|
|
|
To further improve the quality of the main project, we also ask that you:
|
|
- Only include mods that function correctly and have been tested.
|
|
- Only include mods that work without side effects (or at least document the side effects in the description).
|
|
- Avoid putting credit to yourself in the Mod title or description. Any work you do on this project is a collaborative effort building on the work of the people before you, and claiming sole credit for a mod is not in the spirit of this project.
|