Send email to me.
My Old PGP key fingerprint is: 1B4B 4080 2CA4 96E6 9157 31F3 41E0 CB5A 2536 45BE
My New PGP key fingerprint is: 8C2C 6EC2 7DA7 E17F A152 9482 8684 10FF 2B47 09CB
Open-source projects participation
Physical location at Department of Control Engineering
Open Technologies Research Education and Exchange Services - ORG Wiki
Teaching Activities
School Related Documents
Goodies for Linux System
Linux/RT-Linux CAN driver and CANopen framework
uLan Field Bus
uLan Utilities Library (GAVL, HTIMER, etc.)
Embedded Systems - Motorola 683xx and Others
Project with Motorola M9328 MX1 (ARM 920T)
Utilities for Other MCUs
Combustion Engine Control
Miscellaneous Documents
Computer Architectures
(EN)
An official abstract for this subject can be found
here
and there for English variant.
Advanced Computer Architectures
An official abstract for this subject can be found
here
and there for English variant.
Open-source programming
An official abstract for this subject can be found
here
and there for English variant.
Real-Time Systems Programming
It is possible to entrol the course as part of the master programme
A3M35PSR or in frame of bachelor studies
and A4B35PSR. The English variants exist but may be unavailable for some school years
AE3M35PSR
and AE4B35PSR.
Design of Microprocessor Systems
An official abstract for Ph.D. version of these courses can be found
here.
Microprocessor Systems
This subject is has similar focus as Design of Microprocessor Systems, but it is
intended for less advanced pupils who need to gain basic skill to work and develop
software for 16 and 32-bit embedded systems.
An abstract for master grade version of the microprocessors teaching classes is
here.
Electronics Systems
I am participating on practical classes for this course sometimes.
Design of Electronics Devices
Some small number of lectures for this subjects and consultation/leading of some students projects.
Computers Systems and Computers for Control
Two or three lectures about 32 bit microcontrollers per semester for this subject.
An official abstract for this subject can be found
here
and there for English variant.
List of diploma and bachelors thesis works
They are example of of topic which can be work on when you chose me as tutor.
Projects Open for Participation
Potential topics for bachelor and diploma theses, summer works, indvidual works and gaining experience.
Topics for Team Projects
modified and other in the area of the interrest (open-source, technologies, HW design, communications) can be discussed.
Topics for Individual Projects
modified and other in the area of the interrest (open-source, technologies, HW design, communications) can be discussed.
Posters Published on Conferences (English)
Introduction in PLD ICs (Czech)
Adaptace s referencnim modelem (Czech)
Experimentální optimalizace
polohovacího servomechanizmu (Czech)
Návod k řídicí jednotce MARS 2 (Czech)
(also as PDF)
Motion Control Unit MARS 2 - USER GUIDE (English)
(also as PDF)
Návod k řídicí jednotce MARS 8 (Czech)
(also as PDF)
Read More about Motion Control Unit MARS 8 at www.PIKRON.com (English)
BlueBot Robot Control Toolbox pro Matlab (Czech)
The toolbox provides higher level API to MARS 8 units. The toolbox and MARS 8 units are used
in multiple education courses (A3M33IRO, A3B33ROB) together with
CRS A465 and
Bosch SR 450 robots.
DiskLess Debian/GNU Linux at DCE FEL CVUT.cz (PDF)
Slides about Linux dikless boot setup used at our department prezented at InstallFest 2011. The set of the mentioned patches is available as well.
The Linux Kernel by D.A.Rusling (PDF)
DMSDOS - Doblespace, Drivespace, Stacker access for Linux
mcdmsdos - utility to read DoubleSpace/Driverspace/Stacker
compressed volumes as Midnight Commander virtual filesystem.
Patches for XFig which enables to use XFig for figures with Czech Keyboard and Fonts
Simple utility to read/write (not only) physical memory areas (rdwrmem.c)
Linux daemon for Kyocera Scan System F (kyoscand-0.0.5)
This daemon replaces Windows only proprietary scanner support tools. It is used with Kyocera KM-1650
multi-function copier, but it should work with other Scan System F equipped machines. The daemon has been reported to work with Olivetti 2200MF (same as Kyocera TASKalfa 221) on Ubuntu 10.04 as well. Sources at GitHub https://github.com/ppisa/kyoscand.
CTU FEE CAN Bus Projects and CTU CAN FD Open-Source IP Core (http://canbus.pages.fel.cvut.cz/).
The OrtCAN project implements CAN and CANopen components which allows to implement EDS configured devices as well as access CANopen object dictionaries from Qt and JAVA applications. It is compatible with Linux kernel character API driver (LinCAN), SocketCAN and NuttX. The project is hosted by SourceForge.net (http://ortcan.sourceforge.net/). The CAN driver and other CAN related components have been founded in frame of the OCERA project - Open Components for Embedded Real-time Applications project. Short introduction to OCERA CAN components can be found in the Fifth Real-Time Linux Workshop article Open Source Components for the CAN Bus. The LinCAN driver documentation is included in the archive and can is readable in as separate file LinCANdoc-0.3.pdf. There is OCERA CANopen infrastructure user quide on this page ocera-canopen-ug.pdf. See LinCAN driver documentation for build instructions.
The currect development sources version can be found in
GIT repository of OrtCAN project:
http://sourceforge.net/projects/ortcan/
Komunikacni protokol uLan (Czech)
ul_drv - uLan RS-485 communication driver (also as PDF)
Version 0.7 of uLan RS-485 driver released (ul_drv-0.7.tar.gz)
Added some small utilities and driver updated for support of 2.6.x kernels. Driver should work out
of box on most 2.2.x, 2.4.x and 2.6.x kernels with or without devfs. Driver supports classical
UARTs, 82C510 UARTs and OX16C954 PCI cards. Preliminary USB converter support is included as well.
Sources moved to GIT repository on SourceForge site
The latest driver sources and core part of MCS51 sources with Keil and SDCC compatible interface
has been committed into SourceForge GIT (http://sourceforge.net/projects/ulan/develop/).
Next release of driver will include support for USB <-> uLan converter.
Project ChromuLan (Free HPLC Software for Everyone)
Local patches directory
uLan Utilities Library (ulut-090225.tar.gz)
This library contains more basic C constructions. There are basic item containers
partially resembling to C++ standard template library (STL).
There are lists, Generalized AVL trees (GAVL), hierarchical timers framework
(in the fact priority queues, HTIMER) and generic sorted arrays/collections (GSA).
SourceForge
download page.
uLan Utilities Library Documentation
Generic/Generalized AVL Tree Documentation
Attempt to modify GLIB to use GAVL algorithms
The GTREE
(AVL based tree) sources has been modified to use same algorithms as used in uLut library.
This leads to considerable speedup (15-50%) but income is not probably revolutionary enough
to cause propagation of the changes into official GLIB
sources. The code size is same as for original algorithms.
The algorithms are implemented without any need for recursive subroutines calls.
The negative side of the change is that GAVL requires additional parent pointer
in the node structures. Many of advanced features of GAVL algorithms cannot be exposed through
actual GLIB API: non-unique support, cut first, iterators, fast node delete for items with internal nodes,
resorting after compare function change, priority queues extension, etc.
GNU AVL - Another AVL and generic tree library written by Ben Pfaff
Hurd-L4 RB-Tree - written by Neal H. Walfield
The implementation reuses similar typesafe macro definitions as found in uLut library.
GNU vyvojovy retezec a m68332 (Czech)
(also as PDF)
Moderní mikrokontroléry - rozšířený předchozí dokument
zatím není zcela dokončen
(Only PDF version)(Czech)
BDM Driver for GDB and Linux (also as PDF)
BDM flash loader utility ver010117
This version contains first experiments for future project of building GPLed TPU
debugger. Current version autodedects next flashes "amd29f400", "amd29f800" in 16bit mode
and "amd29f040" in single 8 bit configuration. It should be an easy task to add more flash types and
configurations.
BDM driver 001129 (alpha state) (Compatible with 2.4.0 and DEVFS)
BDM flash loader utility ver010710
Added support for "amd29f010x2" suggested by John S. Gwynne for
EFI332 project. Implemented flash blank checking.
mc68332 BDM targed for GDB-5.1.1 patch 1
The archive contains BDM driver, which should be compatible with all 2.0, 2.2, and 2.4.0 kernels.
Flash programming commands was added to GDB (bdm_flash_setup, bdm_flash_check,
bdm_flash_erase, bdm_flash_remove). Command "bdm_load_use_lma" should be used
before flash programming to ensure right target address for initialized data
section. Important : when "csboot","cs?" or "auto" are used, flash must be
probed by "bdm_flash_check" command before actual programming.
Glibc-2 binary is also available here.
Precompiled version of Insight-5.1 debugger is also available here.
Older versions were removed to free space and to protect people against
bug caused by bad registers reads for targets without defined FPU registers in
m68k-tdep.c m68k_push_dummy_frame and m68k_pop_frame. Bug manifested
by crash of debugger when gdb call command was used.
mc68332 BDM targed for GDB-5.2.1 patch 1
Updated version of patches for GDB version 5.2.1. Binary of the debugger can be found
here.
New version of the BDM driver (bdm-driver-030502.tar.gz)
This driver contains support for Linux PARPORT subsystems. The enhancement contributed by Juergen Eder
BDM driver with 2.5.69+ support (bdm-driver-030518.tar.gz)
Support for latest 2.5 kernels has been added. This version should be usable for Linux kernels
from 2.0, 2.2, 2.4, 2.5,69+. The driver continues to support PARPORT and DEVFS.
The PARPORT support can be disabled at compile time to return to old behavior.
New version of CPU32/CPU32+ BDM flash loader (bdm-load-030815.tar.gz)
Integrated Josef Wolf's (jw at raven.inka.de) feature to support symbolic
startup address definition and other enhancements. Added support for
early 68360 MBAR register setup from commandline and scripts files.
CPU32/CPU32+ BDM patches for GDB-5.3 (gdb-5.3-bdm-683xx-patches.tar.gz)
Published updated version of CPU32 BDM debug tool-chain. Support added for 2.6.x kernels.
Driver file renamed to "m683xx-bdm.o" to better coexist with generic and more promising m68k BDM driver.
Please, look at SourceForge pages http://sourceforge.net/projects/bdm
for GIT repository of BDM development tools and Motorola m68xxx BDM discussion lists.
Compressed binary of BDM enabled GDB-5.3 can be found there (m68k-coff-bdm-gdb-5.3.gz).
Update of m683xx BDM driver for latest 2.6.x Linux kernels (m683xx-bdm-driver-040618.tar.gz)
The name of builded module has been changed from bdm.o/.ko to m683xx-bdm.o/.ko
to not collide with generic m68k BDM driver branch.
Chris Johns and Bernardo Innocenti have released new version of generic m68k BDM tools (m68k-bdm-1.3.0)
They seems to work correctly with m683xx targets as well.
BDM project at SourceForge http://sourceforge.net/projects/bdm.
The new GCC-3.4 based m68k-elf compiller can be found at uClinux pages
http://www.uclinux.org/pub/uClinux/m68k-elf-tools/gcc-3/
mx1-boot-usb-050914.tar.gz - M9328 MX1 side of USB loader
mx1-load-050327.tar.gz - Serial and USB loader for M9328 MX1
This loader enables to transfer above mentioned mx1-boot-usb to the MX1 eSRAM memory over MX1 ROM provided
serial protocol. The mx1-boot-usb then initializes UDC and MX1 board is enumerated by Linux host system.
mx1-load can be used then to load application or Linux kernel image to the MX1 board SDRAM memory
and start application or kernel. The latest version enables to build tag-image and setup arbitrary
Linux kernel tags list.
Next commands are used to prepare flash tag-image of Linux kernel and flash it into PiMX1 board. Flash has to be erased beforehand.
~/arm/mx1-load/mx1-load -H tagimage -d linux.tagimage "${KERNEL_IMAGE}" \ -O 0x08008000 -f binary -g 0x08008000 -P r1=664 -P r2=0x08000100 \ --atag-base=0x08000100 --atag-u32 core=0,0,0 \ --atag-u32 mem=0x02000000,0x08000000 \ --atag-str cmdline="console=ttySMX0,19200n8 root=31:4 rootfstype=jffs2" ~/arm/mx1-load/mx1-load -H usb -d dead:0101 -t 5 linux.tagimage -O 0x10040000 -f binary
kbd_mx1rtems.c - RTEMS matrix keyboard driver with UID interface
This is timer and interrupt activated keyboard driver for matrix keyboard directly connected to
M9328 MX1 GPIO pins. The driver supports Micro Input Driver (UID) interface and works with MicroWindows
GUI framework.
scr_mx1sl.c - M9328 MX1 MicroWindows screen driver
rtems-mx1-mmcsd-051212.tar.gz - MX1 MMC/SD driver for RTEMS
This is massively modified and cleaned up FreeScale Linux 2.4 MMC/SD driver version ported and integrated to RTEMS system.
Driver supports read/write of MMC and SD cards. The DOS FAT16/FAT32 filesystem can be created and mounted.
The driver works in the CPU data driven mode only (no DMA yet) and only 1-bit mode is supported for now.
The support and compatibility with MX21 has been considered during functions rewrite as well.
Texas Istruments MSC-1210 (MCS-51) initial Flash loader
Hitachi H8S/2633 initial serial and on-board flasher
This is part of COmponents for LAboratory and Medical Instruments (COLAMI) library developed
at PiKRON Ltd.
Podex - open HC12 BDM pod design
This is result of Marek Peca's work on support of some HC12 based projects ongoing
on RTLAB section of DCE department.
Doktorandske minimum - mereni a rizeni zazehoveho motoru (also as PDF)
Combustion Engine Control - introduction and overview (also as PDF)
Specimen for PGS English Exam - level II
My Resume - written for english exam
Photos: Selected ones from ppisa.rajce.idnes.cz, archive by years.
This file is:
http://cmp.felk.cvut.cz/~pisa/index.html