Commit graph

37 commits

Author SHA1 Message Date
Florian Jung
dd71bcaeb0 Corrected expected total descriptor length 2021-04-13 00:40:30 +02:00
Florian Jung
50e4094ed0 Fix windows support 2021-04-10 18:03:59 +02:00
Florian Jung
42b1efa16b Attempts at restoring windows compatibility 2021-04-10 17:18:16 +02:00
Florian Jung
b06d1dcb50 Add raw send_bytes function 2021-03-28 19:37:32 +02:00
Florian Jung
57f69e3a7f Fix > vs >= bug 2021-03-21 23:08:10 +01:00
Florian Jung
cb385c8974 Remove unneeded and misleading pin mapping 2021-03-21 23:07:58 +01:00
Florian Jung
0dfe89da04 Allow creating multiple MIDI in and out jacks 2021-03-21 22:25:09 +01:00
btrepp
49484f0b15
Merge pull request #2 from btrepp/dependabot/cargo/nb-1.0.0
Update nb requirement from 0.1.2 to 1.0.0
2021-01-10 21:35:44 +08:00
dependabot-preview[bot]
8f640eb02f
Update nb requirement from 0.1.2 to 1.0.0
Updates the requirements on [nb](https://github.com/rust-embedded/nb) to permit the latest version.
- [Release notes](https://github.com/rust-embedded/nb/releases)
- [Changelog](https://github.com/rust-embedded/nb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-embedded/nb/compare/v0.1.2...v1.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 04:00:57 +00:00
btrepp
f0a03436a7
Merge pull request #3 from p4ddy1/receive_midi
Receive midi
2021-01-01 11:59:35 +08:00
Patric Kanngießer
f7515b08f7 Add example to README 2020-12-30 02:04:00 +01:00
Patric Kanngießer
3d3ff68299 Add tests for message decoding 2020-12-30 00:54:59 +01:00
Patric Kanngießer
0223763ed0 Cleanup 2020-12-29 18:10:17 +01:00
Patric Kanngießer
96f5135427 Add safety checks for parsing 2020-12-29 18:05:20 +01:00
Patric Kanngießer
487a379633 Add ControlFunction struct and add constants to enable pattern matching on CC 2020-12-27 19:29:47 +01:00
Patric Kanngießer
9db505d659 Implement receive for missing event types and added ControlChange 2020-12-26 16:16:32 +01:00
Patric Kanngießer
dea3594e37 Implemented basic midi receive 2020-12-25 15:36:47 +01:00
beau trepp
468ce4ed39 Adds in some derivation traits
This allows other structs to easily copy
the data around
2020-01-12 16:43:08 +08:00
beau trepp
ad09837bbd Fixes typo in readme 2019-12-27 18:39:18 +08:00
beau trepp
c15f980db3 Adds in crate information to license file 2019-12-27 18:38:51 +08:00
beau trepp
9207334ff1 Simplifies dependency definition
Is this what broke dependabot?
2019-12-27 18:32:41 +08:00
beau trepp
fcb988815a Makes the usbmidi packet public
This can be open as any modification
will still leave the struct in a good state
:
2019-12-26 10:30:55 +08:00
beau trepp
d151a05787 Strengthens raw midi packet.
It now very strongly depends on U7s when appropriate
2019-12-20 15:51:23 +08:00
beau trepp
55d94f7024 Simplifies more midi domain types
The usb interface now only allows you to send midi messages,
created via fairly restrictive structs

It should be very difficult to create an invalid midi message now.
2019-12-17 19:19:27 +08:00
beau trepp
6b7f71f7bd Adds midi message data structures
This implements a partial implementation of the midi messages,
with the view we can expand later on.

Note that we introduce a datatype to represent the different
kinds of midi messages that may be sent, of various lengths.
2019-12-16 19:25:17 +08:00
beau trepp
1b0be0ba49 Removes midi prefixes to types in midi module.
This is more or less implicit in this context,
and users can alias if they have conflicts
2019-12-15 10:29:50 +08:00
beau trepp
93ef2b7576 Converts to using a std implementation of try_from.
This adds some very simple error types
2019-12-15 10:03:30 +08:00
beau trepp
e4e16bcbcd Further cleanup of types
I should write better messages, but this shifts the cable
number to follow the numbering usually present in devices (0 is 1 etc).

Also implements some other missing types
2019-12-12 20:17:24 +08:00
beau trepp
a11b695c5e Converts midi channel and cable to be enums.
This will allow pattern matching and seems to
be more use-able.

Tests are defined to ensure the u8 serialization still
corresponds to expected midi values
2019-12-12 19:45:58 +08:00
beau trepp
dd37e5efcc Refactoring
Swaps a few things around, and adds some better types
2019-12-12 19:45:58 +08:00
beau trepp
273f897ea5 Adds doc to midi in 2019-12-12 19:45:58 +08:00
btrepp
36702035fa
Create rust.yml 2019-12-12 19:45:20 +08:00
beau trepp
5f631bb56b Puts usb constants in it's own file
Moves them into usb_constants.rs.
These can maybe be moved into the usdb-device crate?.
They could be more shareable
2019-09-17 21:26:14 +08:00
btrepp
fddd4254b1 Update issue templates 2019-09-17 21:17:48 +08:00
beau trepp
0f31acf6ce Adds in midi note enums
This should be much more human readable,
rather than relying on knowing the midi codes.

It should be represented the same way anyway,
and also works with sharps/flats
2019-09-17 21:13:19 +08:00
beau trepp
fff66eaafc Adds readme 2019-09-15 15:57:48 +08:00
beau trepp
317c9ed2f8 Initial midi device implementation 2019-09-15 15:53:49 +08:00