Project

General

Profile

New Model #4933 » comm_logic.txt

Updated communication logics - Pavel Milanes, 12/11/2017 06:00 AM

 
# Baofeng BF-T1 comm logics, by Pavel CO7WT #

All coms are 9600 8N1

## Magic to put radio on program mode ##

TX > "\x05\x50\x52\x4f\x47\x52\x41\x4d" => ".PROGRAM"
RX < "\x06" {ACK}

## ID Query ##

TX > "\x02" {IDQ}
RX < "\x20\x42\x46\x39\x31\x30\x30\x53" => " BF9100S"
TX > "\x06" {ACK}
RX < "\x06" {ACK}

## EEPROM manipulation and flow of the data ##

### Logic of the request ###

Basic structure is 4 Bytes:

Byte 0:
"\x52" => "R" {Read request}
"\x57" => "W" {Write request}
Bytes 1 & 2:
Address of the request from "0x0000" to "0x0170"
In steps of byte 3 position (always "\x10" = 16 bytes)
Memory size is then 368 chunks of 16 bytes
Total size is 5888 bytes.
Byte 3: Payload size "\x10" = 16 bytes at a time

When we are writing (Byte 0 = "\x57" "W") we follow with the 16 bytes of the payload.

### Logic of the answer ###

To any request we receive an answer like this:

#### Request to read from EPROM/RADIO ####

20 bytes:
4 bytes mimic of the request we made
16 bytes of payload, so far with no coding but a structure at a glance.

#### Request to Write to EPROM/RADIO ####

Just one "\x06" {ACK} byte by each request.

## Radio comm closing ##

Just write "\x62" => "b" then close the serial port

## Interesting facts ##

* Mem space transfered from/to the radio appears to be only 384 bytes (0x180)
* So far there is no easy fingerprint but the filesize.
* There is a big chance for a bigger mem space than that, the OEM software is just reading what it needs?
* Baofeng radios answer with a ID that is stored on a protected to write but readable higher memory space (90% chance here) If I'm right the " BF9100S" string must be present on the higher mem space.
* If there is a bigger mem space we need to hack in there with a radio at hand.
* There is no obvious place for the FM freq in use, yet; that reinforce the last two statements.
* File saved from the OEM software **IS NOT an eeprom image**, it's a kind of csv text file.
* Settings and details will be difficult & slow without a radio at hand to test, like with the BTECHs at the moment.
(13-13/77)