---
title: "MidiDevice"
description: "API documentation for MidiDevice"
url: https://developer.disguise.one/python-api/docs/mididevice/
---

# MidiDevice

See also: [Devices Guide](/plugins/guides/devices)

Base class (inherits properties and methods): _[Device](/python-api/docs/device#device)_

## Properties

#### **controlSets** : _List\[[MidiControlSet](/python-api/docs/midicontrolset#midicontrolset)\]_ _(Read-Only)_

Get item by index or slice

#### **controlVals** : _List\[int\]_

#### **control\_sets** : _List\[[MidiControlSet](/python-api/docs/midicontrolset#midicontrolset)\]_

_UserName: Control sets_

#### **damping** : _float_

_UserName: Damping_

#### **iChanIn** : _int_

#### **iChanOut** : _int_

#### **iControlToAddress** : _List\[int\]_

#### **io\_mode** : _int_

_Options: {0: ‘In’, 1: ‘Out’, 2: ‘Bidirectional’}  
UserName: IO mode_

#### **midiIn** : _[MidiIn](/python-api/docs/midiin#midiin)_ _(Read-Only)_

#### **midiInName** : _str_

#### **midiOut** : _MidiOut_ _(Read-Only)_

#### **midiOutName** : _str_

#### **midi\_in** : _str_

_UserName: MIDI in_

#### **midi\_in\_channel** : _int_

_Options: {1: ‘1’, 2: ‘2’, 3: ‘3’, 4: ‘4’, 5: ‘5’, 6: ‘6’, 7: ‘7’, 8: ‘8’, 9: ‘9’, 10: ‘10’, 11: ‘11’, 12: ‘12’, 13: ‘13’, 14: ‘14’, 15: ‘15’, 16: ‘16’}  
UserName: MIDI in channel_

#### **midi\_out** : _str_

_UserName: MIDI out_

#### **midi\_out\_channel** : _int_

_Options: {1: ‘1’, 2: ‘2’, 3: ‘3’, 4: ‘4’, 5: ‘5’, 6: ‘6’, 7: ‘7’, 8: ‘8’, 9: ‘9’, 10: ‘10’, 11: ‘11’, 12: ‘12’, 13: ‘13’, 14: ‘14’, 15: ‘15’, 16: ‘16’}  
UserName: MIDI out channel_

## Methods

#### **controlChanged**(self, iControl: _int_) -> _bool_

#### **controlSet**(self, i: _int_) -> _[MidiControlSet](/python-api/docs/midicontrolset#midicontrolset)_

#### **controlVal**(self, iControl: _int_) -> _int_

#### **forceControl**(self, iControl: _int_, val: _int_)

#### **getControllerState**(self, iControl: _int_) -> _[MidiControllerState](/python-api/docs/midicontrollerstate#midicontrollerstate)_

#### **getLastChangedControllerState**(self) -> _[MidiControllerState](/python-api/docs/midicontrollerstate#midicontrollerstate)_

#### **getLastChangedNoteOnState**(self) -> _[MidiNoteState](/python-api/docs/midinotestate#midinotestate)_

#### **getNoteState**(self, iControl: _int_) -> _[MidiNoteState](/python-api/docs/midinotestate#midinotestate)_

#### **nControlSets**(self) -> _int_

#### **nControls**(self) -> _int_

#### **setControl**(self, command: _int_, iControl: _int_, val: _int_)
