Repository: nvaccess/nvda

Issue:
baum vario 40 no key input
### Steps to reproduce:
connect vario 40 vire com or usb to com converter. select baum driver in brl configuration.
press eni button on the desplay. 
### Actual behavior:
nvda dont doo anything.
### Expected behavior:
a gesture must be executed.
### System configuration:

#### nvda log cat
ERROR - hwIo.IoBase._notifyReceive (18:27:46.773):
Traceback (most recent call last):
  File "hwIo.pyo", line 147, in _notifyReceive
  File "brailleDisplayDrivers\baum.pyo", line 162, in _onReceive
  File "brailleDisplayDrivers\baum.pyo", line 177, in _handleResponse
  File "brailleDisplayDrivers\baum.pyo", line 228, in __init__
AttributeError: 'NoneType' object has no attribute 'replace'
ERROR - hwIo.IoBase._notifyReceive (18:27:47.220):
Traceback (most recent call last):
  File "hwIo.pyo", line 147, in _notifyReceive
  File "brailleDisplayDrivers\baum.pyo", line 162, in _onReceive
  File "brailleDisplayDrivers\baum.pyo", line 177, in _handleResponse
  File "brailleDisplayDrivers\baum.pyo", line 228, in __init__
AttributeError: 'NoneType' object has no attribute 'replace'
ERROR - hwIo.IoBase._notifyReceive (18:27:47.368):
Traceback (most recent call last):
  File "hwIo.pyo", line 147, in _notifyReceive
  File "brailleDisplayDrivers\baum.pyo", line 162, in _onReceive
  File "brailleDisplayDrivers\baum.pyo", line 177, in _handleResponse
  File "brailleDisplayDrivers\baum.pyo", line 228, in __init__
AttributeError: 'NoneType' object has no attribute 'replace'
ERROR - hwIo.IoBase._notifyReceive (18:27:48.290):
Traceback (most recent call last):
  File "hwIo.pyo", line 147, in _notifyReceive
  File "brailleDisplayDrivers\baum.pyo", line 162, in _onReceive
  File "brailleDisplayDrivers\baum.pyo", line 177, in _handleResponse
  File "brailleDisplayDrivers\baum.pyo", line 228, in __init__
AttributeError: 'NoneType' object has no attribute 'replace'
ERROR - hwIo.IoBase._notifyReceive (18:27:48.739):
Traceback (most recent call last):
  File "hwIo.pyo", line 147, in _notifyReceive
  File "brailleDisplayDrivers\baum.pyo", line 162, in _onReceive
  File "brailleDisplayDrivers\baum.pyo", line 177, in _handleResponse
  File "brailleDisplayDrivers\baum.pyo", line 228, in __init__
AttributeError: 'NoneType' object has no attribute 'replace'


#### NVDA Installed/portable/running from source:
instaled 
#### NVDA version:
2018.3.2
#### Windows version:
windos 10 1809
#### Name and version of other software in use when reproducing the issue:

#### Other information about your system:

### Other questions:

#### Does the issue still occur after restarting your PC?
yes
#### Have you tried any other versions of NVDA?
yes



Discussion:
This looks like a model identifier isn't set for this display. I will take this.

Resolving patch:
diff --git a/source/brailleDisplayDrivers/baum.py b/source/brailleDisplayDrivers/baum.py
--- a/source/brailleDisplayDrivers/baum.py
+++ b/source/brailleDisplayDrivers/baum.py
@@ -225,8 +225,9 @@ class InputGesture(braille.BrailleDisplayGesture, brailleInput.BrailleInputGestu
 	def __init__(self, model, keysDown):
 		super(InputGesture, self).__init__()
 		# Model identifiers should not contain spaces.
-		self.model = model.replace(" ", "")
-		assert(self.model.isalnum())
+		if model:
+			self.model = model.replace(" ", "")
+			assert(self.model.isalnum())
 		self.keysDown = dict(keysDown)
 
 		self.keyNames = names = []


Test patch: