<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/stmhal/usbd_cdc_interface.c, branch 2.x</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=2.x</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=2.x'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2017-07-19T03:01:22+00:00</updated>
<entry>
<title>stmhal: Clean up USB CDC/MSC files and remove commented-out code.</title>
<updated>2017-07-19T03:01:22+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-07-19T03:01:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c972c60dbe72d7448faff7f631dfb798b694093e'/>
<id>urn:sha1:c972c60dbe72d7448faff7f631dfb798b694093e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/usb: Use local USB handler variable in Start-of-Frame handler.</title>
<updated>2017-06-07T06:03:19+00:00</updated>
<author>
<name>Sylvain Pelissier</name>
<email>sylvain.pelissier@gmail.com</email>
</author>
<published>2017-05-04T07:39:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3bb69f645a29429be63756616d3019e889c1d355'/>
<id>urn:sha1:3bb69f645a29429be63756616d3019e889c1d355</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: Pass USB handler as parameter to allow more than one USB handler</title>
<updated>2017-06-07T05:50:26+00:00</updated>
<author>
<name>Sylvain Pelissier</name>
<email>sylvain.pelissier@gmail.com</email>
</author>
<published>2017-05-03T08:55:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=6adcf7bb8288fb6fd0e131f081735dd5cff16b86'/>
<id>urn:sha1:6adcf7bb8288fb6fd0e131f081735dd5cff16b86</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/usbd_cdc_interface: Change CDC RX to use a circular buffer.</title>
<updated>2017-04-04T06:23:25+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-04-04T06:23:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3b447ede78970df04e08eeb1cc549a574a733667'/>
<id>urn:sha1:3b447ede78970df04e08eeb1cc549a574a733667</id>
<content type='text'>
This should be a little more efficient (since we anyway scan the input
packet for the interrupt char), and it should also fix any non-atomic read
issues with the buffer state being changed during an interrupt.

Throughput tests show that RX rate is unchanged by this patch.
</content>
</entry>
<entry>
<title>stmhal/usbd_cdc_interface: Increase in-endpoint timeout to 500ms.</title>
<updated>2017-04-04T05:18:58+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-04-04T05:18:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9a8e7f7a8e93e9319d2ff5795f4b8a6b9e4ba5ad'/>
<id>urn:sha1:9a8e7f7a8e93e9319d2ff5795f4b8a6b9e4ba5ad</id>
<content type='text'>
The previous timeout value of 150ms could lead to data being lost (ie never
received by the host) in some rare cases, eg when the host is under load.
A value of 500ms is quite conservative and allows the host plenty of time
to read our data.
</content>
</entry>
<entry>
<title>stmhal: Use generic interrupt char code.</title>
<updated>2017-02-15T05:39:30+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-02-15T05:39:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e5cc681cb1b5163b9ae3453df85344326baf9759'/>
<id>urn:sha1:e5cc681cb1b5163b9ae3453df85344326baf9759</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: Use core-provided keyboard exception object.</title>
<updated>2016-12-15T04:51:34+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-12-15T04:51:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a770ba147edfab6cf060147f6ef47cf19c1c332b'/>
<id>urn:sha1:a770ba147edfab6cf060147f6ef47cf19c1c332b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/usb: Always use the mp_kbd_exception object for VCP interrupt.</title>
<updated>2016-12-15T01:45:56+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-12-15T01:45:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=979ab4e126dacca4d7fbbd0e71c849365ef2c947'/>
<id>urn:sha1:979ab4e126dacca4d7fbbd0e71c849365ef2c947</id>
<content type='text'>
There's no need to store a separate pointer to this object.
</content>
</entry>
<entry>
<title>stmhal: Make TIM3 available for use by the user.</title>
<updated>2016-01-29T22:31:56+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-29T22:31:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ea89b80ff4f842b010f9f8ec3280675f81bc6bc5'/>
<id>urn:sha1:ea89b80ff4f842b010f9f8ec3280675f81bc6bc5</id>
<content type='text'>
TIM3 is no longer used by USB CDC for triggering outgoing data, so we
can now make it available to the user.

PWM fading on LED(4) is now gone, but will be reinstated in a new way.
</content>
</entry>
<entry>
<title>stmhal: Make USB CDC driver use SOF instead of TIM3 for outgoing data.</title>
<updated>2016-01-29T15:21:43+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-09T21:59:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d3631339176b768ce1ffdc535223385245ff906b'/>
<id>urn:sha1:d3631339176b768ce1ffdc535223385245ff906b</id>
<content type='text'>
Previous to this patch the USB CDC driver used TIM3 to trigger the
sending of outgoing data over USB serial.  This patch changes the
behaviour so that the USB SOF interrupt is used to trigger the processing
of the sending.  This reduces latency and increases bandwidth of outgoing
data.

Thanks to Martin Fischer, aka @hoihu, for the idea and initial prototype.

See PR #1713.
</content>
</entry>
</feed>
