==== Winklepicker Reset Controller ====
{{:projects:winkle.jpg?200|Winklepicker}}
Winklepicker Reset Controller is a RS232 BREAK detector using either a PIC12F1501 or PIC12F1571 microcontroller.
It has been designed specifically for the [[:projects:cowboy|Cowboy]], [[:projects:oxford|Oxford]] and [[:projects:wellington|Wellington]] boot loaders and it works in conjunction with the [[:projects:easyloader|Easy-loader]] firmware upload utility.
=== Licence ===
Winklepicker Reset Controller is licensed under the GPL version 3.
=== Credits and Thanks ===
Winklepicker Reset Controller is developed by Darron M Broad.
=== Operation ===
Winklepicker monitors the serial Tx line between a host computer and a target device and will reset that device when a serial BREAK condition is detected.
This is used to enter the boot loader on the target, for firmware maintenance tasks.
Two modes of operation are available with Winklepicker. The mode is selected using a pin on the controller which is inspected at power-up.
==Mode 1==
The target device is reset after a BREAK condition is sent from the host with a duration of ~50ms. The target is taken out of reset when the BREAK condition ends.
This mode works with a large variety of UART devices which may only have Tx/Rx connections, some devices can be seen in the picture above.
==Mode 2==
The RTS output of the host computer is routed to the target device reset input, under BREAK condition control.
Routing is enabled when RTS is low during a BREAK condition and disabled when RTS is high during a BREAK condition.
This mode can be used to simply reset the device or allow fine grained control of the reset pin for ICSP. It has also been designed to allow RTS to perform regular serial duties when not routed through to the target reset pin.
=== Demonstration ===
Here is an example configuration for the [[:projects:oxford|Oxford]] boot loader.
{{:projects:winklepicker.png?200|Winklepicker}}
=== Checkout ===
hg clone http://hg.kewl.org/pub/winklepicker
cd winklepicker
make