# Initial support for MIDI-CI in JUCE

**URL:** <https://forum.juce.com/t/initial-support-for-midi-ci-in-juce/58588>\
**Category:** General JUCE discussion\
**Created:** [October 31, 2023, 1:42pm UTC](https://forum.juce.com/t/initial-support-for-midi-ci-in-juce/58588 "2023-10-31T13:42:07Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [October 31, 2023, 1:42pm UTC](https://forum.juce.com/t/initial-support-for-midi-ci-in-juce/58588/1 "2023-10-31T13:42:07Z")

</div>

We’ve just released `juce_midi_ci`, a module that allows developers to easily implement MIDI-CI devices:

> <https://github.com/juce-framework/JUCE/commit/8ebbc20311cbf8da7d4b91359173a2526ded8c93>

There’s also a new demo that implements discovery, profiles, and properties in a GUI app:

> <https://github.com/juce-framework/JUCE/commit/66ad2d861a08364575e5f40c45a4a8ee74503c47>

We hope that this demo app will be useful for testing/viewing MIDI-CI interactions with other devices.

It’s now possible for developers to meet the minimum requirements for MIDI 2.0 compatibility in JUCE by including a `juce::ci::Device` that has profiles and/or properties enabled.

Please try out the new features and let us know how you get on. We appreciate any and all feedback!

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [December 5, 2023, 6:13pm UTC](https://forum.juce.com/t/initial-support-for-midi-ci-in-juce/58588/2 "2023-12-05T18:13:01Z")

</div>

As we test this feature with more devices, we’re starting to discover a few bugs in the initial version.

A fix for one such bug is now on develop:

> <https://github.com/juce-framework/JUCE/commit/b4aa74b3be08f8d551a1bb0cc8e6b533a2ce2bc9>

If you are working on adding CI functionality to your project, I strongly recommend watching the develop branch for updates and synching regularly, so that you can take advantage of the latest fixes in this area. Given that this is a very new feature, it may take a little while before all of the functionality is properly exercised, and all of the bugs squashed.

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [December 7, 2023, 2:55pm UTC](https://forum.juce.com/t/initial-support-for-midi-ci-in-juce/58588/3 "2023-12-07T14:55:34Z")

</div>

This commit fixes another issue with the formatting of property exchange headers:

> <https://github.com/juce-framework/JUCE/commit/224c4f706ba0988441e7269c3e7f2b9d5d242cbb>
>
> This also fixes an issue where MIDI CI header data could contain spaces,
> which i…s not allowed according to the spec.
