Skip to content

JIRA-624: I2C slave mode #218

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

Closed
wants to merge 4 commits into from
Closed

JIRA-624: I2C slave mode #218

wants to merge 4 commits into from

Conversation

xieqi
Copy link
Contributor

@xieqi xieqi commented Jun 20, 2016

added I2C controller slave mode support for Lakemont.

@xieqi
Copy link
Contributor Author

xieqi commented Jun 20, 2016

@SidLeung @linrjing @sgbhu
lakemont I2C controller driver, now it only finished master mode, because no I2C pin export, so just use bus scan sketch to verify the driver framework, will add slave mode support after we got Radon board.

return I2C_OK;
}
}
delay(1);
Copy link
Contributor

@eriknyquist eriknyquist Jun 20, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see some loops that have been "spaced out" using delay(1). That's fine, it shouldn't have any negative effects since I2C is quite slow anyway, but I don't think it will gain anything either. Remember, this is for a single-threaded MCU device.

@gpkc
Copy link

gpkc commented Jul 8, 2016

How is this going to work without a onReceive implementation?

@SidLeung
Copy link
Contributor

SidLeung commented Jul 8, 2016

Please note that the physical I2C slave mode interface is not available on the Arduino 101 hardware platform and, thus, it is not going to be part of Corelibs. This is done as a preparation for future products.

@gpkc
Copy link

gpkc commented Jul 9, 2016

Yes, I'm aware of that. I thought this was a software implementation or something like this. I'm not sure if this would be possible, though.

@xieqi
Copy link
Contributor Author

xieqi commented Aug 8, 2016

@SidLeung @eriknyquist @linrjing
update the code to full support I2C slave mode, please review the code, thanks.

@kitsunami kitsunami modified the milestones: Beta, Castor Aug 22, 2016
Xie,Qi added 4 commits August 24, 2016 09:17
1. added the I2C controller slave mode support for Lakemont.
2. limits to use the I2C slave driver:
   the I2C slave can receive max 32 bytes in a single transmission, so if the
   master want to transmit more than 32 bytes, please split the single
   transmission to multiple 32 bytes transmission.
@SidLeung
Copy link
Contributor

Please do not make any additional changes to this branch until further notice.

@SidLeung
Copy link
Contributor

SidLeung commented Sep 7, 2016

@bbaltz505 Please close this branch without merging it to the main trunk.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants