Skip to content

Loader and Debugger for Rabbit Semiconductor µC, such as the Rabbit 2000, Rabbit 3000, and Rabbit 4000.

License

Notifications You must be signed in to change notification settings

spth/OpenRabbit

Repository files navigation

What is OpenRabbit?

A free portable replacement for the Digi Rabbit Field Utility and an on-target debugger. This allows Rabbit development on OSes other than Windows. The on-target debugger currently only works with programs created using the non-free Dynamic C (which can be run .e.g via wine).

A free inital loader (coldload.bin) and secondary loader (pilot.bin) are included in OpenRabbit, but it will also work with loader binary blobs from Dynamic C 8 or 9.

See BUILD for how to build it.

Use:

OpenRabbit supports two modes:

* Rabbit Field utility mode, invoke as "openrabbitfu". Flashing only. Works with files from any source, including SDCC and Dynamic C.
* OpenRabbit mode, invoke as "openrabbit". Debugging support. Requires files from Dynamic C.

Example:

    openrabbitfu coldload.bin pilot.bin user.bin /dev/ttyUSB0

Will upload the user program user.bin onto the target via cable attached to /dev/ttyUSB0 and using initial loader coldload.bin, secondary loader pilot.bin.

Options:

--help       Show usage information summary.
--verbose    Increase verbosity (this option can be used up to 3 times, with each additional use increasing verbosity).
--slow       Workaround for tcdrain() driver bugs (see below for details).
--run        Run program immediately after programming.
--serialout  Display data from serial line at 38400 baud until EOT

History:

OpenRabbit was initially developed and maintained by Lourens Rozema. His latest release was 0.1.1.
The original homepage can be found at http://www.lourensrozema.nl/index.php/openrabbit.inc

This repository has been created by Philipp Klaus Krause (with endorsement by Lourens Rozema) to continue development.

Troubleshooting (if operation is unreliable, or it doesn't work at all):

* Check if you or your cable is using a full-speed USB-to-serial interface (e.g. the FT232R in the "USB Programming Cable") with a USB High-Speed or faster hub. This is often problematic. Suggested workaround: Do not use USB hubs, or use a high-speed USB-to-serial interface (e.g. FT232H).
* If you are using a serial programming cable with a USB-to-serial converter, try --slow to work around a Linux driver bug (https://bugzilla.kernel.org/show_bug.cgi?id=209359). Most, but not all USB-to-serial converters work when using the --slow option.
* If Openrabbit works without --serial, but is unreliable with --serial: this is a known bug: #22, no fix or worjaroundis currently known (other than just trying again).

About

Loader and Debugger for Rabbit Semiconductor µC, such as the Rabbit 2000, Rabbit 3000, and Rabbit 4000.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published