Downloads
fsusb
fsusb-0.1.11-2
Auf der Internetseite www.internetking.org von Rick Luddy gibt es, seit Jahren unverändert, die Urversion http://www.internetking.org/fsusb Nach den Angaben des Authors wird er fsusb nicht weiter entwickeln und betreuen.Diese Urversion ist exakt auf das Original Microchip PICDEM FS USB Demoboard mit dem darauf verbauten PIC 18F4550 Controller zugeschnitten. Es ist nicht möglich mit dieser unveränderten Version z.B. PIC Controller mit Sprut's ( www.sprut.de ) abgespecktem Bootloader zu beschreiben.
fsusb-0.2
Änderungen der Version 0.2
Diese Änderungen wurden mit fsusb-0.2 eingeführt:- fsusb kann jetzt auch von Usern ohne root Rechte benutzt werden.
- Ein Reset des PIC Controllers kann über fsusb durchgeführt werden. ( Hilfreich bei automatischem Ablauf des Firmware Updates ).
- Die fest einprogrammierten VendorID:ProductID's sind jetzt nur noch als Defaultwert vorgegeben.Diese ID's können durch die Option „--pic-id“ verändert werden.
- Die fest einprogrammierten Adressbereiche des PIC18F4550 sind jetzt nur noch als Defaultwert vorgegeben.Diese Adressbereiche können auf 2 verschiedene Arten verändert werden:
- Ab Version 0.2 gibt es in fsusb Definitionen für Adressbereiche der Typen 18F2455, 18F2550, 18F4455 und 18F4550 ( Es ist vorgesehen weitere PIC Typen in fsusb zu integrieren). Diese Definitionen können mit „--pic 18F2455“ auf einfache Weise selektiert werden.
- Um auch weitere PIC Controller mit anderen Adressbereichen bearbeiten zu können gibt es zusätzlich noch die Möglichkeit, die Adressbereiche per Konfigurationsdatei an fsusb zu übergeben „--device Dateiname“.
Command Line Interface
Wie fsusb von der Kommandzeile aus benutzt wird ist in der README beschrieben:fsusb: Software for "PICDEM Full Speed USB" demo board modified by <sig@sigvdr.de> [2011] to version fsusb-0.2 written by <rickluddy@gmail.com> version fsusb-0.1.11
fsusb command [<file>] [options]
commands: fsusb --program <file> [options] program board with <file> and verify fsusb --verify <file> [options] verify board against <file> fsusb --read <file> [options] read board, saving result in <file> fsusb --readboot <file> [options] read boot area, saving result in <file> fsusb --reset [options] reset board fsusb --pic-list list of mcu's (for option <pic>) fsusb --create <configFile> create a default configFile for 18F4550, modify this fsusb --connected [all|options] list connected USB devices
options: --usb-id <[VENDOR:]PRODUCT> define usb hardware id -(check id with 〈lsusb>) default: 04d8:000b --pic <type of mcu> default: 18Fx550 --device <configFile> other mcu's than <--pic-list> need to be defined
Usage Examples
ConfigFile
example for a configFile: do not use lowercase letters in a configFile[18F4550] EEPROM_BASE = 0x00 EEPROM_TOP = 0xff PROGRAM_BASE = 0x0800 PROGRAM_TOP = 0x7fff ID_BASE = 0x200000 ID_TOP = 0x200007 CONFIG_BASE = 0x300000 CONFIG_TOP = 0x30000d DEVID_BASE = 0x3ffffe DEVID_TOP = 0x3fffff
Changelog
2013-05-16
- added --connected
- List devices connected to USB
- added make.bat
- bugfix Makefile.Win32
- Build fsusb with mingw32
2011-05-11
- deleted fsusb <file>
- Programming MCU without command --program is not longer possible
- added --reset
- Reset MCU and run new program
- added --usb-id
- use fsusb with different vendorID's and od productID's, the default ID's are the original Microchip ID 04d8:000b
- added --pic / --pic-list
- select and list build in defined pic mcu's
- added --device / --create
- define config files for pic mcu's that are not defined in fsusb
Building
Linux
Just "make" ought to build it, assuming you have libusb and the associated headers installed. Debian users for example: apt-get install libusb libusb-dev
Windows
I used mingw32 on a Windows7 PC to build fsusb using libusb-win32-bin-1.2.6.0.zip Add path to mingw32 to global PATH variable Check INCPATH and LIBS in file Makefile.Win32, maybe you have to change INCPATH = -I"..\libusb\include" # path to lusb0_usb.h LIBS = -L"..\libusb\lib\gcc" -lusb # path to libusb.a Just "make.bat" ought to build it