All Projects → zoobab → versaloon

zoobab / versaloon

Licence: other
JTAG Versaloon firmware for the STM32 Bluepill board

Projects that are alternatives of or similar to versaloon

ixo-usb-jtag
usb-jtag - Altera USB Blaster Emulation with a FX2
Stars: ✭ 49 (-48.42%)
Mutual labels:  openocd, jtag, urjtag
stm32-blue-pill-rust
Rust for STM32 Blue Pill with Visual Studio Code
Stars: ✭ 98 (+3.16%)
Mutual labels:  stm32, bluepill
BlueVGA
VGA library for STM32F103C (BluePill) that can manipulate a screen with 28x30 tiles with 8x8 pixels each, in a total resolution of 224x240 pixels with 8 colors using a very low footprint
Stars: ✭ 39 (-58.95%)
Mutual labels:  stm32, bluepill
stm32-tkg-hid-bootloader
A HID driverless bootloader and flash tool companion for the STM32F1 line
Stars: ✭ 30 (-68.42%)
Mutual labels:  stm32, bluepill
om5p-ac-v2-unlocker
Open Mesh OM5P-AC v2 Unlocker (U-Boot 1.1.4 based)
Stars: ✭ 32 (-66.32%)
Mutual labels:  openocd, jtag
fabooh
c++ template library for cortex-m0+ (lpc8xx), cortex-m0 ( lpc1114 ), cortex-m3 (bluepill), and msp430 ( small msp430 )
Stars: ✭ 28 (-70.53%)
Mutual labels:  stm32, bluepill
OpenOCD
STMicroelectronics customized version of OpenOCD supporting STM32 MCUs and MPUs
Stars: ✭ 34 (-64.21%)
Mutual labels:  stm32, openocd
vt100 stm32
VT100 Terminal Emulator for Arduino STM32
Stars: ✭ 27 (-71.58%)
Mutual labels:  stm32, bluepill
MPU6050
STM32 HAL library for GY-521 (MPU6050) with Kalman filter
Stars: ✭ 114 (+20%)
Mutual labels:  stm32, bluepill
MCUCapture
Utility for plotting array data from MCU RAM
Stars: ✭ 22 (-76.84%)
Mutual labels:  stm32, openocd
stm32 tiny monitor
A tiny external monitor for PC using STM32 and ST7789. Connects to PC over USB and displays the captured screen on ST7789 (240x240) display.
Stars: ✭ 61 (-35.79%)
Mutual labels:  stm32, bluepill
esm
Lightweight communicating state machine framework for embedded systems
Stars: ✭ 21 (-77.89%)
Mutual labels:  stm32, bluepill
platformio-libopencm3-freertos
Sample blinky project for PlatformIO using libopencm3 and FreeRTOS
Stars: ✭ 14 (-85.26%)
Mutual labels:  stm32, bluepill
esp8266-wifi-cmsis-dap
WIRELESS CMSIS-DAP USB/IP-SWD/JTAG HID adapter firmware for ESP8266 boards
Stars: ✭ 69 (-27.37%)
Mutual labels:  stm32, jtag
Modbus-STM32-HAL-FreeRTOS
Modbus TCP and RTU, Master and Slave for STM32 using Cube HAL and FreeRTOS
Stars: ✭ 272 (+186.32%)
Mutual labels:  stm32, bluepill
jaylink
A Rust library for talking to J-Link USB devices
Stars: ✭ 28 (-70.53%)
Mutual labels:  jtag
stm32 template
这是一个stm32f103 和 stm32f407单片机在Unix、Linux等系统下使用的模版,可以使用make编译、下载、调试。
Stars: ✭ 48 (-49.47%)
Mutual labels:  stm32
DHT11-DHT22-STM32-HAL
Библиотека для работы с датчиками DHT11/DHT22/AM2302/AM2301 на STM32
Stars: ✭ 26 (-72.63%)
Mutual labels:  stm32
EByte LoRa E22 Series Library
Arduino LoRa EBYTE E22 device library complete and tested with Arduino, esp8266, esp32, STM32 and Raspberry Pi Pico (rp2040 boards).. sx1262/sx1268
Stars: ✭ 67 (-29.47%)
Mutual labels:  stm32
drone-stm32-map
STM32 peripheral mappings for Drone, an Embedded Operating System.
Stars: ✭ 16 (-83.16%)
Mutual labels:  stm32

About

JTAG Versaloon firmware for the STM32 Bluepill board.

Build

Just a matter of make -j in the root folder if you have an ARM GCC toolchain installed on your computer. If you have docker, you can just run ./build.sh, it will build the firmware for you.

The produced binaries are the following :

Versaloon-STM32F103C8_BluePill.hex
Versaloon-STM32F103C8_BluePill.bin
Versaloon-STM32F103C8_BluePill.elf

Download

You can download the released firmware here: https://github.com/zoobab/versaloon/releases/tag/v1.0

Flashing

You can use st-flash with an Stlinkv2 adapter:

st-flash write Versaloon-STM32F103C8_BluePill.bin 0x8000000

Or alternatively, use an USB-serial adaptor, using the same method as for the DirtyJTAG project with the stm32flash tool (see the section "Via a USB-serial adaptor" in https://github.com/jeanthom/DirtyJTAG/blob/master/docs/install-bluepill.md ):

$ stm32flash -w Versaloon-STM32F103C8_BluePill.bin -v -g 0x8000000 /dev/ttyUSB0
stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (STM32F10xxx Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x0800d8ec (100.00%) Done.

Starting execution at address 0x08000000... done.

You can also do it via the docker container zoobab/stm32flash-docker, or use the flash.sh script:

$ export DEVICE="/dev/ttyUSB0"
$ export FILE="Versaloon-STM32F103C8_BluePill.bin"
$ docker run --privileged -v $DEVICE:$DEVICE -v $PWD:/mnt zoobab/stm32flash-docker -w /mnt/$FILE -v -g 0x8000000 $DEVICE
stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (STM32F10xxx Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x0800d8ec (100.00%) Done.

Starting execution at address 0x08000000... done.

$ 

lsusb

ID 0483:a038 STMicroelectronics

/!\ This is not a Versaloon reserved VID/PID, disconnect any STM32 dev board from your computer before trying to use OpenOCD /!\

Pin map

BluePill pin mapping is the same as MiniRelease1.h

TDI => GPIO B15
TDO => GPIO B14
TCK => GPIO B13
TMS => GPIO B4

OpenOCD config file

Create somewhere a file called my_vsllink.cfg with this content :

interface vsllink
vsllink_usb_vid 0x0483
vsllink_usb_pid 0x5740
adapter_khz 100
transport select jtag

Then you can launch OpenOCD with openocd -f my_vsllink.cfg :

Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
adapter speed: 100 kHz
jtag
Info : Versaloon(0x15)by Simon(compiled on Dec 20 2018)
Info : USB_TO_XXX abilities: 0x0000176E:0x010001EF:0xC0000007
Info : clock speed 100 kHz
Warn : There are no enabled taps.  AUTO PROBING MIGHT NOT WORK!!
Info : JTAG tap: auto0.tap tap/device found: 0x44002093 (mfg: 0x049 (Xilinx), part: 0x4002, ver: 0x4)
Warn : AUTO auto0.tap - use "jtag newtap auto0 tap -irlen 2 -expected-id 0x44002093"
Error: IR capture error at bit 2, saw 0x3FFFFFFFFFFFFFF5 not 0x...3
Warn : Bypassing JTAG setup events due to errors
Warn : gdb services need one or more targets defined

If you get the Error: Can't find USB JTAG Interface!Please check connection and permissions. error message, you may try to run OpenOCD as sudo.

Todo

Links

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].