<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/stmhal/usbd_cdc_interface.c, branch v1.6</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.6</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.6'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2016-01-29T22:31:56+00:00</updated>
<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>
<entry>
<title>stmhal: Typo fix in comment.</title>
<updated>2015-10-24T18:58:58+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-10-24T18:58:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4a9c60cdfb509b61dd71dbaec36293239e6e53cc'/>
<id>urn:sha1:4a9c60cdfb509b61dd71dbaec36293239e6e53cc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: Break immediately from USB CDC busy wait loop if IRQs disabled.</title>
<updated>2015-06-07T22:48:07+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-06-07T22:48:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0aa5e7500047d869cc78e8914fc08b5d6a3f5994'/>
<id>urn:sha1:0aa5e7500047d869cc78e8914fc08b5d6a3f5994</id>
<content type='text'>
If IRQs are disabled then the USB CDC buffer will never be
drained/filled and the sys-tick timer will never increase, so we should
not busy wait in this case.
</content>
</entry>
<entry>
<title>stmhal: Remove some unnecessary declarations, purely for cleanup.</title>
<updated>2015-03-20T22:27:34+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-03-20T22:27:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7674da8057b5236373345350acd2a7513377d393'/>
<id>urn:sha1:7674da8057b5236373345350acd2a7513377d393</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: Add Python-configurable USB HID mode.</title>
<updated>2015-02-13T14:02:51+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2014-11-01T21:26:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d39c7aa517b722161a7dd792fafc5096d58beec8'/>
<id>urn:sha1:d39c7aa517b722161a7dd792fafc5096d58beec8</id>
<content type='text'>
Different HID modes can be configured in Python.  You can either use
predefined mouse or keyboard, or write your own report descriptor.
</content>
</entry>
<entry>
<title>stmhal: Add USB_VCP.setinterrupt method, to disable CTRL-C.</title>
<updated>2014-11-29T15:23:21+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2014-11-29T15:23:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=19fb1b4dd7173ad2cf4b2bb1b0f0c06498499bd2'/>
<id>urn:sha1:19fb1b4dd7173ad2cf4b2bb1b0f0c06498499bd2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: Reduce coupling between USB driver and readline.</title>
<updated>2014-11-27T16:58:31+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2014-11-27T16:58:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=5cbc9e0db0f01e1e643e8c091a536b54372df5bd'/>
<id>urn:sha1:5cbc9e0db0f01e1e643e8c091a536b54372df5bd</id>
<content type='text'>
This makes it easier to re-use readline.c and pyexec.c from stmhal in
other ports.
</content>
</entry>
<entry>
<title>stmhal: Add ioctl to USB_VCP object, so it works with select.</title>
<updated>2014-10-31T00:12:02+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2014-10-31T00:12:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9a41b32b3f58246cbe69db237877775b4d2fe920'/>
<id>urn:sha1:9a41b32b3f58246cbe69db237877775b4d2fe920</id>
<content type='text'>
This patch also enables non-blocking streams on stmhal port.

One can now make a USB-UART pass-through function:

def pass_through(usb, uart):
    while True:
        select.select([usb, uart], [], [])
        if usb.any():
            uart.write(usb.read(256))
        if uart.any():
            usb.write(uart.read(256))

pass_through(pyb.USB_VCP(), pyb.UART(1, 9600))
</content>
</entry>
<entry>
<title>stmhal: Improve REPL control codes; improve pyboard.py script.</title>
<updated>2014-10-26T15:39:22+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2014-10-26T15:39:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=bc1488a05f509cd5be8bfab9574babfcb993806f'/>
<id>urn:sha1:bc1488a05f509cd5be8bfab9574babfcb993806f</id>
<content type='text'>
Improvements are:

2 ctrl-C's are now needed to truly kill running script on pyboard, so
make CDC interface allow multiple ctrl-C's through at once (ie sending
b'\x03\x03' to pyboard now counts as 2 ctrl-C's).

ctrl-C in friendly-repl can now stop multi-line input.

In raw-repl mode, use ctrl-D to indicate end of running script, and also
end of any error message.  Thus, output of raw-repl is always at least 2
ctrl-D's and it's much easier to parse.

pyboard.py is now a bit faster, handles exceptions from pyboard better
(prints them and exits with exit code 1), prints out the pyboard output
while the script is running (instead of waiting till the end), and
allows to follow the output of a previous script when run with no
arguments.
</content>
</entry>
</feed>
