First steps of LibSWD and OpenOCD

The LibSWD and OpenOCD has just made its first steps into flash memory access and writing program code to the ARM Cortex-M3 based Stm32Primer2 device using cheap and generic FT2232H‘s based JTAG/SWD KT-LINK interface :-) The current connection speed is around 10sec/1kB but still I have some ideas on how to improve it, even with the USB bottleneck. The LibSWD is platform independent, so it can drive any other type of hardware (RLink, GPIO based, Parallel Port, etc), also it can be uploaded into dedicated hardware dongle if necessary :-) Feedback and testing are welcome :-)

You can get the code from remote GIT repository at http://repo.or.cz/w/openocd/libswd.git. The project implementation details and history is at http://stm32primer2swd.sf.net/.

%telnet localhost 4444
 Trying 127.0.0.1...
 Connected to localhost.
 Escape character is '^]'.
 Open On-Chip Debugger
 > halt
 target was in unknown state when halt was requested
 > flash probe 0
 device id = 0x10016414
 flash size = 512kbytes
 device id = 0x10016414
 flash size = 512kbytes
 flash 'stm32x' found at 0x08000000
 > stm32x mass_erase 0
 stm32x mass erase complete
 > flash write_image toggle.hex
 wrote 1936 bytes from file toggle.hex in 18.636387s (0.101 KiB/s)

KT-LINK interface driver for UrJTAG

I have sent patches with KT-LINK interface driver (FT2232H based, full-featured, low-cost, SWJ capable design by Krzysztof Kajstura) working in JTAG mode for UrJTAG low-level access software utility with GNU license. I have also created a dedicated fork of UrJTAG for LibSWD integration, which is open and available at http://repo.or.cz/w/urjtag/libswd.git. When the job on LibSWD error handling is finished and fully functional with OpenOCD, I will make a release of LibSWD that will be also integrated with UrJTAG using git submodule mechanism just as in my OpenOCD+LibSWD fork :-)

Serial Wire Debug for ARM

I have started my works on implementing the Serial Wire Debug (kind of JTAG alternative for ARM-Cortex Cores) for Open-Source OpenOCD and UrJTAG utilities. You can watch the progress at:

http://stm32primer2swd.sf.net

Project type: Open
Status: Work in progress…

STM32Primer2 SWJ R-Link pinout

Poniżej zamieszczam obraz wyprowadzeń układu STM32 oraz R-Link w zestawie uruchomieniowym STM32Primer2:

Typ: Otwarty
Status: Zakończony

OpenOCD on FreeBSD

My port of OpenOCD has just been committed. Enjoy Open On-Chip-Debugger on FreeBSD! =)

STM32Primer1 JTAG Pinout

Projekt miał na celu rozpoznanie ścieżek sygnałowych JTAG w zestawie uruchomieniowym STM32 Primer.

Read More

PWSAT EGSE

Jednym z projektów uczelnianych w tym semestrze, jest zestaw narzędzi testujących satelitę PWSAT na etapie projektowania i testów. Po zakończeniu prac, tutaj umieszczę finalną dokumentację, w międzyczasie zapraszam na stronę projektu: http://www.skik.pw.edu.pl/wiki/index.php/PWSAT_EGSE

 

WRT54GL mod dla zgoda.net

Linksys WRT54GL router hardware and software modification for www.zgoda.net company. Dedicated interface conversion board was designed and developed, RS232 as serial console port was added, 1wire interface was implemented for hardware and existing software utility was cross-compiled to run on router operating system.

Read More

Własne Sterowniki do Matlab

Tworząc nowe urządzenia czy systemy o dużym stopniu zaawansowania, musimy posiadać mechanizm weryfikacji wyników, którym może być MATLAB. Aby przesyłać dane do matlaba, można wykorzystać gotowe toolbox’y które obsługują jedynie standardowy sprzęt lub samemu napisać sterownik własnego urządzenia – co daje większe możliwości w dostosowaniu metody do potrzeb, nie wymaga też żadnych dodatkowych licencji.

Typ: Otwarty
Status: Zakończony

Read More

LIRC: Linux Infrared Remote Control

Wygodne sterowanie odtwarzaczem muzyki, filmu czy jakimkolwiek innym programem/funkcją komputera, przy użyciu praktycznie dowolnego pilota podczerwieni, jest sprawą zaskakująco łatwą – a to dzięki systemowi Linux Infrared Remote Control.

Read More

Verilog ALU

Proste ALU napisane w Verilogu, zadanie jednego z laboratoriów podstaw mikroelektroniki na WEiTI PW. Stworzone edytorem VIM, skompilowane kompilatorem CVER.

Read More

Detonator 2

Konsola do odpalania ładunków pirotechnicznych jest prostszą wersją sterowanego mikrokontrolerem detornatora. Urządzenie tworzone jest na zamówienie zielonogórskiego teatru ognia.

Read More

MIDI MC

MIDI MC, czyli modularny kontroler midi, jest urządzeniem które może sterować innymi urządzeniami poprzez magistralę MIDI (na przykład sprzętem muzycznym, programami komputerowymi albo sprzętem do wizualizacji). Największą zaletą urządzenia jest budowa modularna – układ może posiadać maksymalnie 16 modułów, po 16 przycisków i 16 potencjometrów (gałek/suwaków) każdy.

Read More

SSETI ESEO OBDH CAN BOARD

Projekt zespołowy Studenciego Koła Inżynierii Kosmicznej stanowiący część komputera pokładowego satelity SSETI ESEO. Moduł odpowiedzialny jest za stworzenie redundantnego medium komunikacyjnego wymiany danych pomiędzy podsystemami satelity poprzez magistralę CAN. Poniżej udostepniam dokumentację techniczną w języku angielskim.

Read More

świerszcz

Projekt zespołowy Studenciego Koła Inżynierii Kosmicznej do którego należę, miał na celu stworzenie charakterystyki temperatura-wysokość przy użyciu sondy balonowej.

Read More

VI-LAB

Na stronie tej zamieszczam algorymy, którymi poszerzam listę obsługiwanych układów progrmatora VI-LAB firmy ACS Elektronik z Szydłowca, a których nie ma (jeszcze) na liście standardowo obsługiwanych układów.

Read More

Detonator

Celem tego projektu było stworzenie urządzenia odpalającego ładunki wybuchowe na potrzeby filmu tworzonego przez studencką grupę filmową. Całkowity czas realizacji to niecałe trzy tygodnie – od pomysłu do wykonania i wykorzystania. W tym projekcie miałem przyjemność współpracować z moim dobrym przyjacielem Kubą “Mos-Fet” Brachem.

Read More

Price-Checker

Projekt dla sieci supermarketów miał na celu zbudowanie urządzenia terminalowego którym możnaby sprawdzać stany magazynowe, zgłaszać zapotrzebowanie itp. Niestety ze względów ekonomicznych (mała opłacalność produkcji) został porzucony.

Read More