Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework #5

Merged
merged 91 commits into from
Jun 19, 2022
Merged

Rework #5

merged 91 commits into from
Jun 19, 2022

Conversation

YruamaLairba
Copy link
Contributor

Hi, since a while, i'm working on a full rewrite of this crate. It's because i've found many issue making it too easy to use it incorrectly and difficult to use correctly.

This is still a work in progress, for example i plan to "type state" more the system to prevent doing meanless things like reading data register while being in transmit mode, but i didn't yet determined what extactly to put in the "type state" system.

I'm currently trying to validate a proof of concept by using it on stm32f4xx-hal and implementing an example using a master and a slave through interruption.

 - rename I2s to I2sDriver and Instance to I2sPeripheral to avoid confusion
with mcu hal.
 - delete many thing. it will be reimplemented differently
almost nothing remain from v0.2
@YruamaLairba YruamaLairba marked this pull request as ready for review May 30, 2022 14:32
@YruamaLairba
Copy link
Contributor Author

Ready for a review, sorry for the big chunk of commits, as i said, i was working on another branch. I didn't (yet) fix previously mentioned problems, i just documented them

@samcrow
Copy link
Owner

samcrow commented Jun 2, 2022

I'm glad to see that this is ready. In about 7 days, I'll have enough time to fully review it.

@YruamaLairba
Copy link
Contributor Author

I already found a issue with "transfer", i have a channel inversion when i'm using "master transmit" + "slave receive". I don't know what's wrong.

@samcrow
Copy link
Owner

samcrow commented Jun 10, 2022

Now that I've had some time to look more, this looks like a great set of changes. I'm ready to merge this whenever you think it's ready.

@YruamaLairba
Copy link
Contributor Author

unfortunately not ready. Since I found the "channel inversion" issue, i realized my test wasn't rigorous enough. I was just testing with my pcm* ADC and DAC devices but having sound does mean everything is right. So I started a project dedicated to test. The main idea is to use 2 I2s perpipheral, write few data with the first and read those data with the second. This makes me discover another issue.

@YruamaLairba
Copy link
Contributor Author

Errors fixed ! I did a project dedicated to test to find them

@samcrow samcrow merged commit 4ac6db9 into samcrow:master Jun 19, 2022
@samcrow
Copy link
Owner

samcrow commented Jun 19, 2022

Released as 0.3.0

@YruamaLairba YruamaLairba deleted the rework branch May 10, 2023 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants