Versaloon How-to
- Install and Update
- OpenOCD
- VSProg and VSGUI
- Script support
- About Script in vsprog
- script related options
- Run script
- Supported script commands
- comment
- hide current command
- generic commands
- target commands
- programmer commands
- Examples
- add user-defined scripts
- MCU support
- Generic option for MCU support
- xml configure files
- STM32 support(ISP/JTAG/SWD)
- LPC1000 support(JTAG/SWD)
- LM3S support(JTAG/SWD)
- AT91SAM3 support(JTAG/SWD)
- STM8 support(SWIM)
- AT89S5X support(ISP)
- PSoC1 support(ISSP)
- MSP430(without TEST) support(JTAG)
- C8051F support(JTAG/C2)
- AVR8 support(ISP/JTAG)
- LPC900 support(ICP)
- SVF support(JTAG)
- VSGUI
- USB_TO_XXX protocol
- DIY
- FAQ
About OpenOCD
OpenOCD is a Open On-Chip Debugger which supports many
target including ARM, MIPS, CPLD/FPGA(xsvf/svf) and so on. For more information,
visit http://openocd.berlios.de/web/.
In 0.5.0 release of OpenOCD, support to SWD interface will be
added.
Versaloon driver in OpenOCD
In 0.5.0 release of OpenOCD, original vsllink driver will be
removed, and USB_TO_XXX driver will be added.
Here is an preview patch for OpenOCD git head, which add
support to SWD, and use the latest Versaloon driver. Unzip the file to an empty
directory, and run ./openocd_update in bash. Note that basic packages for
building OpenOCD should be installed first. And if you are non-root, you should
edit openocd_update, find "SUDO=", change to "SUDO=sudo".
Click to
download(2010.08.21)...
To use SWD interface, add "swd_mode 2" in the configuration
file. For some targets, SWD should be slow down, try adding "swd_delay 2" in the
configuration file.
About VSProg and VSGUI
VSProg is VerSaloon PROGrammer, which is a GUI program
supporting many target using Versaloon as dongle.
VSGUI is GUI front-end of VSProg, which is based on Lazarus.
About Script in vsprog
There is a script framework in vsprog, it can maximize the
usability of Versaloon. For example, you can test a application after
programming; program multiple targets in one command; and so on.
About USB_TO_XXX
USB_TO_XXX is the protocol used by Versaloon. It defines a
unique and generic framework for different interfaces, and multiple interfaces
can be operated in one command. Under this framework, firmware and driver of
interfaces can be very simply implemented. With some special commands,
mass-product can also be simply supported.
After release of OpenOCD 0.5.0, original vsllink protocol
will be removed. And USB_TO_XXX protocol will be added to OpenOCD.
DIY
Check all the license before you start to DIY Versaloon. I
can only provide bug fix according to DIYer's report, but I cannot support more.
Hardware of VersaloonMiniRelease1 is available at
dongle/hardware/MiniRelease1. Open it using KiCAD. Note that KiCad.zip is the
library of Versaloon for KiCAD. You don't need to route the PCB, because the PCB
file is there, simply generate the Gerber files using KiCAD and send the Geber
files to the PCB maker. The released Schematics and PCB files is just the same
as what I sell. Note that, D84 should be removed for SWD and SWIM interfaces.
You should have basic knowledge about STM32 and have the
ability to debug the hardware. A USB bootloader is required to be downloaded
into STM32 first. DFU bootloader for STM32 from ST is recommended, make sure the
bootloader is less than 8KBytes in size, download the bootloader at 0x08000000.
Compile the firmware using Codesourcery G++Lite or IAR EWARM KickStart, IAR is
recommended because of higher efficiency. Download the firmware with the
bootloader and be happy
with it.
FAQ
1. SWD may fail on some targets(especially LPC1000 series).
-- SWD driver in Versaloon will use
the fastest speed by default, but for some targets, SWD CAN NOT be too fast. You
can add -W1 or -W2 to set the wait status of SWD. In Vsgui, you can add -Wn
option in ExtraParam editor. Note that, D84 in VersaloonMiniRelease1 should be
removed to enable the highest speed of SWD interface.