Skip to content

Commit

Permalink
Add SPL display support
Browse files Browse the repository at this point in the history
  • Loading branch information
rdoursenaud committed Jun 2, 2021
1 parent 309e89a commit fc32131
Show file tree
Hide file tree
Showing 8 changed files with 244 additions and 48 deletions.
28 changes: 19 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
Denon Remote
============

Control Denon Professional DN-500AV surround preamplifier remotely.
Control [Denon Professional DN-500AV surround preamplifier](https://www.denonpro.com/index.php/products/view/dn-500av)
remotely.

![Screenshot](screenshot-v0.5.0-main.png)

![Settings Screenshot](screenshot-v0.5.0-settings.png)

Author: Raphael Doursenaud <[email protected]>
Author: Raphael Doursenaud <rdoursenaud+denonremote@gmail.com>

License: [GPLv3+](LICENSE)

Expand Down Expand Up @@ -60,24 +61,33 @@ Fonts used:
- [x] Relative
- [x] Absolute
- [x] Mute
- [x] Presets! (-18dB, -24dB…)
- [ ] SPL calibrated display (SMPTE RP200: -18dBFS = 85dB C SPL)
- [x] SPL calibrated display
- [x] EBU/SMPTE RP200: 85dB C SPL @ -18 dBFS (Equivalent to 83 dB C SPL @ -20 dBFS)
- [x] K meter
- [x] K-20: -20dBFS = 83dB C SPL (Same as SMPTE and EBU)
- [x] K-14: -14dBFS = 83dB C SPL
- [ ] Can be compensated from SMPTE/EBU levels by lowering the output volume by 6dB
- [x] K-12: -12dBFS = 83dB C SPL
- [ ] Can be compensated from SMPTE/EBU levels by lowering the output volume by 8dB
- [x] EBU R 128: -23LUFS (-23dBFS) = 73dB C SPL (Debatable/unclear removed for now)
- [x] Presets!
- [x] Relative (-18dB, -24dB…)
- [ ] Absolute
- [ ] SPL calibrated
- [ ] Input select
- [x] Favorites
- [ ] Security
- [ ] Panel Lock
- [ ] IR Remote Lock
- [ ] Settings backup/restore
- [ ] All
- [ ] Subsystems?

- [x] Retrieve status
- [x] Logger
- [x] Update the GUI

- [ ] Profiles/presets?

- [ ] Import EQ settings
- [ ] From [REW](https://www.roomeqwizard.com/) value file
- [ ] Full Profiles/presets?

##### GUI

Expand Down Expand Up @@ -110,7 +120,7 @@ Fonts used:
- [ ] Android
- [ ] iOS/iPadOS

#### Proxy?
#### Proxy/background service?

The receiver only allows 1 active connection. A dispatcher proxy could allow multiple simultaneous remotes (Desktop and
mobile).
Expand Down
4 changes: 2 additions & 2 deletions denonremote/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ class DenonRemoteApp:
def run(self):
# Get from config
# FIXME: or get from arguments
receiver_ip = kivy.config.Config.get('denonremote', 'receiver_ip')
receiver_port = kivy.config.Config.get('denonremote', 'receiver_port')
receiver_ip = kivy.config.get('denonremote', 'receiver_ip')
receiver_port = kivy.config.get('denonremote', 'receiver_port')

reactor.connectTCP(receiver_ip, receiver_port, DenonClientFactory())
reactor.run()
113 changes: 99 additions & 14 deletions denonremote/denonremote.kv
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
#:import system platform.system
#:import BUILD_DATE main.__BUILD_DATE__

<ForcedToggleButton@ToggleButton>
allow_no_selection: False

FloatLayout:

FloatLayout:
Expand Down Expand Up @@ -45,24 +48,78 @@ FloatLayout:
pos: (0, 63)
pos_hint: {'top': .85}

BoxLayout
id: spl_section
orientation: 'horizontal'

BoxLayout
id: spl_mode_section_1
orientation: 'vertical'

ForcedToggleButton
id: mode_k20
text: "K-20"
group: 'mode_ref'
on_press: app.mode_changed(self)

ForcedToggleButton
id: mode_ebu
text: "EBU/SMPTE"
state: 'down' # Default
group: 'mode_ref'
on_press: app.mode_changed(self)

BoxLayout
id: spl_display_section
orientation: 'vertical'

TextInput:
id: spl_display
text: "---dB SPL"
readonly: True
font_name: 'RobotoMono-Regular'
font_size: 36
halign: 'center'
multiline: False
foreground_color: [.85, .85, .85, 1]
background_color: [.1, .1, .1, 1]
#on_text_validate: app.spl_text_changed(self)
disabled: False if root.ids.power.state == 'down' else True

TextInput:
id: ref_display
text: "@ ---dB FS"
readonly: True
font_name: 'RobotoMono-Regular'
font_size: 24
halign: 'center'
valign: 'middle'
multiline: False
foreground_color: [.85, .85, .85, 1]
background_color: [.1, .1, .1, 1]
#on_text_validate: app.ref_text_changed(self)

BoxLayout
id: spl_mode_section_2
orientation: 'vertical'

ForcedToggleButton
id: mode_k14
text: "K-14"
group: 'mode_ref'
on_press: app.mode_changed(self)

ForcedToggleButton
id: mode_k12
text: "K-12"
group: 'mode_ref'
on_press: app.mode_changed(self)

BoxLayout:
id: volume_section
orientation: 'vertical'
disabled: False if root.ids.power.state == 'down' else True

TextInput:
id: volume_display
text: "---.-dB"
font_name: 'RobotoMono-Regular'
font_size: 36
halign: 'center'
multiline: False
size: (200, 60)
size_hint: (1, None)
foreground_color: [.85, .85, .85, 1]
background_color: [.1, .1, .1, 1]
on_text_validate: app.volume_text_changed(self)

BoxLayout:
id: volume_keys_layout
orientation: 'horizontal'
Expand All @@ -72,6 +129,17 @@ FloatLayout:
text: "-"
on_press: app.volume_minus_pressed(self)

TextInput:
id: volume_display
text: "---.-dB"
font_name: 'RobotoMono-Regular'
font_size: 36
halign: 'center'
multiline: False
foreground_color: [.85, .85, .85, 1]
background_color: [.1, .1, .1, 1]
on_text_validate: app.volume_text_changed(self)

Button:
id: volume_plus
text: "+"
Expand All @@ -83,6 +151,12 @@ FloatLayout:
group: 'mute'
on_press: app.volume_mute_pressed(self)

BoxLayout
id: presets_section
orientation: 'vertical'
disabled: False if root.ids.power.state == 'down' else True
size_hint: (1, .5)

BoxLayout
id: volume_presets_layout
orientation: 'horizontal'
Expand All @@ -105,9 +179,16 @@ FloatLayout:
group: 'vol_preset'
on_press: app.vol_preset_3_pressed(self)

ToggleButton:
id: vol_preset_4
text: app.config.get('denonremote', 'vol_preset_4')
group: 'vol_preset'
on_press: app.vol_preset_4_pressed(self)

BoxLayout:
id: sources_section
orientation: 'vertical'
size_hint: (1, 1.5)

ToggleButton:
id: fav_src_1
Expand All @@ -127,7 +208,6 @@ FloatLayout:
group: 'sources'
on_press: app.fav_src_3_pressed(self)


FloatLayout:
id: footer
disabled: False
Expand Down Expand Up @@ -157,6 +237,11 @@ FloatLayout:
id: brand_label
text: "EMA Tech."

Label:
id: copyright_label
text: "(c) 2021 Raphaël Doursenaud"
font_size: 12

Label:
id: version_label
text: "v%s %s (Built on %s)" % (VERSION, system(), BUILD_DATE)
Expand Down
Loading

0 comments on commit fc32131

Please sign in to comment.