55 Commits

Author SHA1 Message Date
homunkulus
23ee5d244d Auto merge of #39 - japaric:process, r=japaric
[RFC] establish a process for adding new traits

This PR establish a process for adding new traits. The details can be found in the diff. This PR is
also proposing using the `embedded-hal-driver` and `embedded-hal-impl` keywords on crates.io to make
implementations of `embedded-hal` and drivers built on top of it more discoverable.

Feel free to suggest changes to these proposals in the comments.

The PR is also adding a list of (WIP) `embedded-hal` implementations and `embedded-hal` drivers. If
your crate is not listed there or if you know of a crate that should be there feel free to send a
follow up PR adding it.

---

Finally, I'd like to use this chance to call for collaborators that will help me with:

- Merging PRs that update the lists in the README

- Triaging issues to make sure that they are properly labeled and that they are following the
  established process.

- "Shepherding" proposals / discussions by preventing them from going off topic and by helping them
  reach a conclusion / consensus, e.g. "Concern $X needs to be addressed before reaching a
  conclusion", "How would this proposal fulfill use case $Y?", etc.

If you'd like to become a collaborator let me know in the comments!
2018-02-15 23:14:24 +00:00
Jorge Aparicio
bfa0786c8d incorporate feedback 2018-02-16 00:09:09 +01:00
Jorge Aparicio
acead81147 establish a process for adding new traits 2018-02-14 22:55:09 +01:00
Jorge Aparicio
b08be00b5f v0.1.2 v0.1.2 2018-02-14 00:08:32 +01:00
homunkulus
59ef38186f Auto merge of #34 - hannobraun:blocking-serial-write, r=japaric
Add blocking serial write implementation

Also adds all blocking traits to the prelude that weren't there already.

There are failign doc tests, but those seem unrelated to this change.
2018-02-08 13:35:00 +00:00
Hanno Braun
2441de630b Add all blocking traits to prelude 2018-02-08 14:07:57 +01:00
Hanno Braun
ea2cd8ae67 Add blocking serial write API 2018-02-08 14:07:53 +01:00
Jorge Aparicio
7158c16829 v0.1.1 v0.1.1 2018-02-06 22:09:14 +01:00
homunkulus
54e0a1f94c Auto merge of #36 - thejpster:input_pin, r=japaric
Add InputPin trait

I needed a basic InputPin trait for the buttons on my Stellaris Launchpad.
2018-02-05 23:19:01 +00:00
Jonathan 'theJPster' Pallant
278145a0d0 Typo. 2018-02-01 20:53:07 +00:00
Jonathan 'theJPster' Pallant
cd5fe0e465 Add to prelude. 2018-02-01 20:51:49 +00:00
Jonathan 'theJPster' Pallant
53825a7ee4 Implement simple InputPin trait. 2018-02-01 20:49:58 +00:00
Jorge Aparicio
9299c04ce7 tweak crate description 2018-01-20 12:22:44 +01:00
Jorge Aparicio
b1e7b13508 fix CHANGELOG 2018-01-17 00:04:31 +01:00
Jorge Aparicio
2603620c27 v0.1.0 v0.1.0 2018-01-16 23:45:27 +01:00
Jorge Aparicio
38318470b9
Merge pull request #27 from japaric/v1
[RFC] v0.1.0 release
2018-01-16 23:40:19 +01:00
Jorge Aparicio
160c4cc2a3 add platform agnostic drivers goal and crates.io link 2018-01-16 19:49:37 +01:00
Jorge Aparicio
b73972187f simplify the Timer trait and rebrand it as timer::CountDown 2018-01-16 13:59:36 +01:00
Jorge Aparicio
471f0ec7f9 actually run doc tests 2018-01-16 00:32:11 +01:00
Jorge Aparicio
faa0f458c3 s/unstable/unproven 2018-01-16 00:32:02 +01:00
Jorge Aparicio
2199596d93 fix typo 2018-01-15 23:38:39 +01:00
Jorge Aparicio
2569096294 unstabilize traits; update docs 2018-01-11 01:55:34 +01:00
Jorge Aparicio
4044707e8c make tests functional 2018-01-11 00:02:59 +01:00
Jorge Aparicio
52c10fffa2 switch to crates.io release of nb 2018-01-10 19:39:02 +01:00
Jorge Aparicio
bbb96243a2 delay 2018-01-09 22:22:07 +01:00
Jorge Aparicio
5415ee164b blocking I2C traits 2018-01-08 23:45:41 +01:00
Jorge Aparicio
4773acb33e Default traits 2018-01-08 01:18:22 +01:00
homunkulus
db91212bb9 Auto merge of #22 - hannobraun:write-flush, r=japaric
Add `flush` method to `serial::Write`

As suggested previously here: https://github.com/japaric/embedded-hal/issues/3#issuecomment-325887412
2017-12-20 11:31:31 +00:00
Jorge Aparicio
0c260c16e9 add PwmPin to the prelude 2017-12-17 09:58:17 +01:00
Jorge Aparicio
2f0ac7804a add a single PWM channel trait 2017-12-17 07:11:25 +01:00
Jorge Aparicio
f3f8be5b2b add blocking SPI trait 2017-11-30 16:32:36 +01:00
Jorge Aparicio
560605a6d1 add OutputPin to the prelude 2017-11-29 07:42:43 +01:00
Jorge Aparicio
5c89ee37cc add OutputPin trait 2017-11-29 07:30:08 +01:00
Jorge Aparicio
41e9021aaf spi-up 2017-11-27 07:34:40 +01:00
Jorge Aparicio
d47c61830a blocking SPI API 2017-11-27 04:30:39 +01:00
Jorge Aparicio
43628a2b5c make wait take the receiver by mutable reference
`wait` has to clear the update flag which requires mutation
2017-11-21 16:07:50 +01:00
homunkulus
e9386f45e0 Auto merge of #23 - hannobraun:cargo-doc-warnings, r=japaric
Fix link in doc comment

This also fixes a whole bunch of warnings by "cargo doc".
2017-11-20 14:08:14 +00:00
Hanno Braun
edb9e9a4ab Fix link in doc comment
This also fixes a whole bunch of warnings by "cargo doc".
2017-11-20 08:19:21 +01:00
Hanno Braun
9238350077 Add flush method to serial::Write 2017-10-24 12:06:04 +02:00
homunkulus
5aa6d09bf4 Auto merge of #20 - hannobraun:mut-self, r=japaric
Change traits to take `&mut self`, where appropriate

This pull request supersedes #16, which seems stalled. It is based on #19. Only the last two commits are actually relevant to this pull request itself. I suggest merging #19 first, then I can rebase this one.
2017-10-17 18:17:24 +00:00
Hanno Braun
5e2c7331bc Update examples 2017-09-22 19:56:15 +02:00
Hanno Braun
b59f9e874e Change &self to &mut self, where appropriate 2017-09-22 19:55:17 +02:00
Hanno Braun
dbafdc79a0 Address review comment 2017-09-22 19:52:32 +02:00
Hanno Braun
81abc9c5b7 Improve "serial with periodic flushing" example
It still doesn't compile, due to the fake `Mutex` and `CircularBuffer`
types, as well as the ".." placeholders, but I've fixed the other
errors.
2017-09-15 08:00:27 +02:00
Hanno Braun
3359363945 Fix "blocking read with timeout" example 2017-09-15 07:26:54 +02:00
Hanno Braun
6d944247bf Fix "blocking whole-buffer write" example 2017-09-15 07:26:54 +02:00
Hanno Braun
24c8607801 Fix some issues with the futures example
Please note that it still doesn't compile, partly because parts of it
are pseudo-code, partly because of futures-related issues that I don't
understand, and don't currently have the time to get into.
2017-09-15 07:26:54 +02:00
Hanno Braun
6cb27ab120 Improve Mutex example
Fix some problems in the `Mutex` example. Please note that it still
doesn't compile, as it's obviously rather abstract and incomplete, in
order to demonstrate the principle.
2017-09-15 07:26:54 +02:00
Hanno Braun
3901140993 Fix STM32F103xx implementation example
Made the necessary changes to get this example to compile. This includes
replacing the ".." placeholders with comments. I also changed the
formatting of the `else if` block in `read`, to make it easier to
include a placeholder comment in there.
2017-09-14 07:37:03 +02:00
Jorge Aparicio
7d904f515d split the Serial trait in two: serial::Read and serial::Write 2017-06-28 12:16:46 -05:00