Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
piersholt committed Nov 3, 2020
1 parent c76f9c5 commit 1ce69a2
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 32 deletions.
48 changes: 27 additions & 21 deletions gt/45.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

GT `0x3b` → Radio `0x68`

Controls radio UI state.
`0x45` is, for the best part, to manage *when* the radio is in the foreground, and to a lesser extent, *how* it behaves in the foreground.

Used in conjunction with `0x46`.
It's ostensibly the GT equivalent of `0x20`.

### Related

- `0x46` [Radio UI](../radio/46.md)
- `0x46` [Request Radio UI](../radio/46.md)

### Examples

Expand All @@ -20,47 +20,51 @@ Used in conjunction with `0x46`.

Single byte bitfield.

SHOW_RADIO = 0b0000_0000
HIDE_RADIO = 0b0000_0001
FLAG_BACKGROUND = 0b0000_0001
FLAG_AUDIO_OBC = 0b0000_0010
FLAG_FIELDS = 0b0000_1110 # possibly this?

# Only applicable to MK3 (3-1/40+), MK4
FLAG_NEW_UI = 0b0001_0000
FLAG_NEW_UI_HIDE = 0b1000_0000

### "Foreground" `0b0000_0000`
### Background `0b0000_0001`

Radio to foreground.
When set to `1`, the radio will still draw to display on user input i.e. changing radio station, but will relinquish the display after approx. 8 seconds.

This can be sent even if the radio is off, in which case it is ignored by the radio.
When set to `0`, the radio will presume to stay in the foreground.

### "Background" `0b0000_0001`
*The GT seems to remember the radio state and will resume the apprprirate display state after an ignition cycle.*

Radio to background.
### Audio+OBC `0b0000_0010`

The radio will still draw to display on user input i.e. changing radio station, but will return itself to background after approx. 8 seconds.
See [Audio OBC](#).

### Audio+OBC `0b0000_0010`
THis is really only of use with the C24 radio which...

See Audio OBC
Limit/restrict radio drawing menus to allow Audio OBC to remain in foreground. T

Only applicable to older UI.
The Audio+OBC feature was removed with the updated UI (`3/1-40+`).

Limit/restrict radio drawing menus to allow Audio OBC to remain in foreground.
Possibly

### New UI `0b0001_0000`

Flag to signify the new UI that was introduced in ~2001 (`3-1/40`) .
Flag to signify the new UI that was introduced in ~2001 (`3-1/40+`) .

> The "radio" splitscreen function is only possible with NG *[next generation]* radios (BM53 and BM54 from 03.01).
> *-- BMW Service Training*
> /--- BMW Service Training
The inference is that if an NG radio is required to support splitscreen, the new UI is not backwards compatible with legacy radios (C23 BM etc).

*The split screen only works for layouts `0x60..0x7f`...*

A flag that allows the old and new UIs to be differentiated suggests that the NG radios may retain support for the older UI.

### New UI (On Hide) `0b1000_0000`

Not sure to be honest. This is set when hiding?

Introduced with *New UI* flag.

## Use Cases
Expand All @@ -73,7 +77,7 @@ The GT requesting the radio draw the radio UI at KL-R if the radio was on at ign

### Main Menu

A MENU press does not get sent to radio, but is broadcast, and instead handled by the GT, which will in turn, message the Radio relinquish (as presumably the radio does not listen for global button )
A MENU press does not get sent to radio, but is broadcast, and instead handled by the GT, which will in turn, message the Radio relinquish (as presumably the radio does not listen for global button)

gt rad 45 91 (1001 0001) Info? [ON] Main Menu [ON]
rad gt 46 01 (0000 0001) Main Menu [ON]
Expand All @@ -88,13 +92,15 @@ Note: this is really only relevant to BM24, BM54 as there is no contention in th

![Audio+OBC](../radio/audio_obc/mk1_gt/audio_obc_enabled.JPG)
_Audio+OBC: The MK1 GT, and BM53 with the Audio+OBC feature enabled._
<!--![Audio+OBC](../radio/audio_obc/vm_gt/audio_obc_enabled.JPG)-->
<!--_Audio+OBC: A video module GT, and BM53 with the Audio+OBC feature enabled._-->


![Audio+OBC](../radio/audio_obc/vm_gt/audio_obc_enabled.JPG)
_Audio+OBC: The Video Module GT, and BM53 with the Audio+OBC feature enabled._

The bit is set/unset when "Audio+OBC" is enabled/disabled via the "Set" menu. It prevents (_or possibly makes menus a timeout?_) the radio from rendering any menus, thus the OBC remains in the foreground.

<!--![Audio+OBC](../radio/audio_obc/mk1_gt/set_audio_obc.JPG)-->
_Audio+OBC: Audio+OBC settings..._
<!--_Audio+OBC: Audio+OBC settings..._-->
<!--![Audio+OBC](../radio/audio_obc/vm_gt/set_audio_obc.JPG)-->
<!--_Audio+OBC: Audio+OBC settings..._-->

Expand Down
2 changes: 1 addition & 1 deletion radio/46.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

### Related

- `0x45` [Radio UI](../gt/45.md)
- `0x45` [Set Radio UI](../gt/45.md)

### Examples

Expand Down
25 changes: 15 additions & 10 deletions radio/arbitration.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,6 @@ _The need for arbitration is a result of heretounforeseen resource contention. T

--

Module|Variant|Note|Command|Argument
:-----|:------|:---|:------|:-------
Radio|C23|Hide Overlay|`46`|`0b0000_1110`
Radio|C23|Menu (Reply?)|`46`|`0b0000_0001`
Radio|C23|Hide Tone|`46`|`0b0000_1000`
Radio|C23|Hide Select|`46`|`0b0000_0100`
Radio|C23|Turn Off|`46`|`0b0000_1110`

Module|Variant|Note|Command|Argument
:-----|:------|:---|:------|:-------
GT|MK1|Ignition|`45`|`0b0000_0000`
Expand All @@ -32,6 +24,13 @@ GT|MK1|Audio OBC|`45`|`0b0000_0011`
GT|VM|Ignition|`45`|`0b0000_0000`
GT|VM|Ignition|`46`|`0b0000_0001`

Module|Variant|Note|Command|Argument
:-----|:------|:---|:------|:-------
Radio|C23|Hide Overlay|`46`|`0b0000_1110`
Radio|C23|Menu (Reply?)|`46`|`0b0000_0001`
Radio|C23|Hide Tone|`46`|`0b0000_1000`
Radio|C23|Hide Select|`46`|`0b0000_0100`
Radio|C23|Turn Off|`46`|`0b0000_1110`

----

Expand Down Expand Up @@ -104,17 +103,23 @@ GT|VM|Ignition|`46`|`0b0000_0001`

#### hide overlay

bmbt rad BMBT-RAD* 0x30 (0011 0000) :bmbt_overlay [Overlay] Press
bmbt rad BMBT-RAD* 0x30 (0011 0000) :bmbt_overlay [Overlay] Press

rad gt UI-RAD state: 0x0e ((0000 1110) Hide: Menu, Hide Header: [ON])

bmbt rad BMBT-RAD* 0xb0 (1011 0000) :bmbt_overlay [Overlay] Release

#### menu button
bmbt glo_h BMBT-GLO 0x34 (0011 0100) :bmbt_menu [Menu] Press

bmbt glo_h BMBT-GLO 0x34 (0011 0100) :bmbt_menu [Menu] Press

gt rad UI-GT config: 0x01 ((0000 0001) Main Menu: [ON])
rad gt UI-RAD state: 0x01 ((0000 0001) Hide: --, Main Menu: [ON])

bmbt glo_h BMBT-GLO 0xb4 (1011 0100) :bmbt_menu [Menu] Release

#### radio off

bmbt rad BMBT-RAD* 0x06 (0000 0110) :bmbt_power [Power] Press
rad bmbt RAD-LED led: 00 ((LED) Off)
rad gt UI-RAD state: 0x0e ((0000 1110) Hide: Menu, Hide Header: [ON])
Expand Down
Binary file modified radio/audio_obc/vm_gt/audio_obc_enabled.JPG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 1ce69a2

Please sign in to comment.