An open API service indexing awesome lists of open source software.

https://github.com/sydneyowl/g90toolkit

Toolkit for working with xiegu g90 series firmware. Patch boot logo easily.
https://github.com/sydneyowl/g90toolkit

firmware g90 radio rig xiegu

Last synced: 9 months ago
JSON representation

Toolkit for working with xiegu g90 series firmware. Patch boot logo easily.

Awesome Lists containing this project

README

          

# G90ToolKit

[![Go Report Card](https://goreportcard.com/badge/github.com/sydneyowl/g90toolkit)](https://goreportcard.com/report/github.com/sydneyowl/g90toolkit) ![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/sydneyowl/g90toolkit/total) ![GitHub Downloads (all assets, latest release)](https://img.shields.io/github/downloads/sydneyowl/g90toolkit/latest/total)

## Introduction

g90

This software is based on several open-source tools, allowing users to:

+ Modify the embedded boot image/text in the G90 firmware.
+ Encrypt/Decrypt firmware use user provided key
+ Take a brief look at the firmware info
+ Flash firmware into G90 series Rigs (g90updatefw integrated)
+ ......

**This software should work on windows/linux/macos but I only tried it on ubuntu 24.04**

> [!important]
> The official Xiegu firmware is encrypted using the AES-256 algorithm, making it nearly impossible to decrypt without
> the key. Fortunately, there are open-source methods available to extract the
> encryption key using an ST-LINK debugger and OpenOCD tools. Due to copyright restrictions, I cannot provide the key
> here, but you can extract the encryption key and decrypt the firmware using the methods outlined
> in [G90Tools](https://github.com/OpenHamradioFirmware/G90Tools) or by finding the key shared by others online.

## Usage

+ `./g90toolkit fullexec --firmware --key
--device --logo-path
--text --output `
**Automatically decrypt firmware, apply changes, re-encrypt firmware,
save to file, and flash into device.**

+ `./g90toolkit decrypt --firmware --output --key ` **Decrypt firmware using specified key.**

+ `./g90toolkit encrypt --firmware --output --key ` **Encrypt firmware using specified key.**

+ `./g90toolkit getinfo --firmware ` **Read information of the firmware.**

+ `./g90toolkit flashfw --firmware --device ` **write a firmware file to a Xiegu radio.**

+ `./g90toolkit patchimg --firmware --logo-path --output ` **Patch boot logo, should be 64x64**

+ `./g90toolkit patchtext --firmware --text --output ` **Patch boot text**

+ use `./g90toolkit --help` to get help information.

## Many thanks to ...

- [G90Tools](https://github.com/OpenHamradioFirmware/G90Tools) (kbeckmann, GitHub) *Tools and guides for analyzing Xiegu
G90 firmware*
- [Bootloader extraction procedure from Xiegu G90 processors](https://radiochief.ru/radio/protsedura-izvlecheniya-bootloader-iz-xiegu-g90/) (
Denis Dubov, Radiochief.ru magazine 06/2022) *Dumping firmware and bootloaders*
- [BBFW](https://github.com/fventuri/BBFW) (Franco Venturi, GitHub) *BBFW utilities and tools*
- [g90updatefw](https://github.com/DaleFarnsworth/g90updatefw) (Dale Farnsworth, GitHub) *Xiegu G90 and Xiego G106
Firmware Updater*

## Disclaimer

- No warranty is provided. Any damage caused by using this tool is your own responsibility.
- The purpose of this tool is to help users modify the startup screen more conveniently, rather than to harm Xiegu's
interests.