Electronics and DIY have been among my hobbies since primary school. I've always enjoyed taking things apart to figure out how they work, fixing them and putting them back together again. Already in elementary school, my hobbies included recycling discarded appliances and mining electronic components (at that time unavailable to me).
Aside from electronics, I was fascinated by the 8-bit computer era, and it was probably the one the famous concert of flickering colors and grunting sounds, which left its mark on me and determined my shift from playing games to analyzing and modifying their codes.
During my studies in high school, I was actively involved in electronics and programming and thus gained experience with programming languages Basic, Pascal, C++ and Assembler.
Thanks to my active interest, I was able to consult my successes and failures with more experienced programmers and thus I could move forward faster. After completing my studies, I got my first job opportunity and the opportunity to work on the development of remote control of intelligent controls and so the great tinkerer and handyman began to grow into a developer.
After several years of experience with 8-bit processors, I decided to try Delphi, Visual C++ and Windows application development. However, I soon left the commercial and closed Windows platform and began to devote myself to the development and programming of embedded devices, Linux and open source with a developer's enthusiasm.
An interesting experience in the field of embedded technologies was the temporary opportunity to work on the development of industrial television on Microblaze/Xilinx software processors.
The growing need to implement websites for a family business led me to the beginnings of web programming. Thanks to my experience with C++, it was not a big problem to get my bearings in PHP and Javascript.
I became so interested in web programming that I willingly started investing my time in it and learned to educate myself from available online and offline resources. With each new project comes valuable new experience. Today it is already more than 10 years, when I started working as a self-employed person.
Currently, I mainly work on web applications, embedded and IoT platforms, I manage my own VPS, where I host internet projects of various associations, enthusiasts, musicians and tinkerers.
I still enjoy discovering new things, directions and devices that make people's lives easier and breaking myths like "it can't be done".
If you are interested in cooperation, sharing experiences or just a friendly chat, I will certainly be happy if you contact me.
C++, Arduino
<ul> <li>Printing of classic labels or adhesive labels</li> <li>Connection to PC via USB</li> <li>Option to print using commands from the command line, bash script, web application or from your own application</li> <li>Option to enter text directly on the device</li> <li>Suitable for automating the printing of adhesive labels, price tags, labels, receipts, etc.</li> <li>Possibility of using larger external label discs</li> <li>Printing barcodes, QR codes, images</li> </ul>
Micropython, NodeJS
ESP32, ADC, Motor
<ul> <li>Měření vlkhosti půdy</li> <li>Připojení přes wifi</li> <li>Možnost volby mezi zavlažováním autonomním a manuálním (vzdáleným)</li> <li>Možnost fungování online nebo offline</li> <li>Hlídání minimální doby od posledního zalévání</li> <li>Časový omezovač doby zalévání</li> </ul>
NodeJS, JS
<ul> <li>Communication status display and communication response</li> <li>Monitoring of fault conditions</li> <li>Configuration of equiterm, TUV and other elements</li> <li>Remote controller restart</li> <li>Remote water supply to the system</li> <li>Integrated terminal for direct communication with the controller</li> <li>Terminal for bulk command processing</li> <li>Possibility of creating your own schemes</li> <li>Automatic disconnection of the user during inactivity</li> <li>Option to take over a running visualization</li> </ul>
C++, NodeJS, Websockets, Platformio, Arduino framework
ESP32, DS3231
The possibility of use, for example, as a collection device for an attendance system, or an access unlocking device <ul> <li>Support of 125kHz or 13Mhz RFID chips <li>Communication via Wifi or ESPNow</li> <li>Ability to add multiple Wifi APs with automatic switching</li> <li>Sending data to backup server</li> <li>Update the clock in RTC from the Internet</li> <li>Data backup in case of network failure to internal storage (SPIFFS) or SD card</li> <li>Battery, Wifi and mute indicators</li> <li>Prevention against code jamming (Watchdog)</li> <li>Scheduled restarts during downtime</li> <li>Integrated separate RTC with its own battery (in operation even when the main battery is discharged)</li> <li>Sending fault statuses to the administrator on mobile (for now only Android)</li> <li>Backup battery (4 hours of operation without deep mode)</li> <li>Voice confirmations of chip acceptance/rejection</li> <li>Voice warning when disconnecting power or losing Wifi connection</li> <li>Remote settings management</li> <li>Support for manually setting summer and winter time</li> </ul>
C++, NodeJS, Websockets, MQTT, Platformio, Arduino framework
ESP32
<ul> <li>Hardware and software development from "green meadow"</li> <li>Production of a printed circuit board prototype</li> <li>Development of UV illumination unit (ESP32)</li> <li>Test application</li> <li>Development of terminal device emulator for simulating network protocols</li> </ul>
<ul> <li>Using highly luminous LED panels with cooling strips</li> <li>Basically the same brightness of individual panels</li> <li>Inconspicuous routing of cables through structures</li> <li>Dismantleable and easy-to-assemble joints</li> <li>3 circuits, remote controls, amplifiers to change the brightness</li> </ul>
C++, Platformio, Arduino framework
ESP32
<ul> <li>Auto shut off timer</li> <li>Control via bluetooth from a mobile app or PC</li> <li>Easy setting of glow time on the command line</li> <li>Easy to remember time formatting - e.g. 40sec, 5min, 2h</li> <li>Display the currently remaining time</li> <li>Uninterrupted timer countdown when disconnecting/connecting mobile phone</li> </ul>
C++, NodeJS, Platformio, Arduino framework
ESP32, VPS
<ul> <li>Mobile door operator</li> <li>Opening doors using a web application</li> <li>By logging in users</li> <li>Possibility of operation online or offline</li> <li>Integration directly into an old or new home intercom</li> <li>User Management</li> </ul>
NodeJS, Websockets
<ul> <li>Display current information for visitors</li> <li>Save content for offline mode</li> <li>Displaying information from the corporate intranet</li> <li>Animated elements, attempt to use hw rendering (support not guaranteed by manufacturer)</li> <li>Possibility of direct display via HDMI (e.g. using RaspberryPI4)</li> <li>Originally designed for Rock64 (Raspberry Pi clone)</li> <li>Possibility of operation on the internal TV viewer</li> <li>Integrated SignageOS support (run in application)</li> <li>Display Timeline</li> <li>Remote control and supervision</li> </ul>
C++, Arduino framework, Platformio
ESP32
<ul> <li>Smart TV network protocol emulator</li> <li>Responds on network or serial port</li> <li>Implemented several basic reports from leading manufacturers (Samsung, Panasonic, LG, NEC, Philips)</li> <li>Shows information about connected devices and sent messages on the display</li> <li>Developed for testing communication devices</li> <li>Prints debug output to USB/serial port</li> <li>Contains a web environment with a terminal for a clearer log</li> </ul>
JS, NodeJS, Socket.IO
<p> The task editor was created as a disagreement with the user-unfriendly task editor. </p> <p> residents had to frantically click through several pages to achieve the creation or change of a task's status. </p> <p> At first it was more of a joke for the intranet author, but then it started to be used by the majority of intranet users, because it really saved sometimes tens of minutes a day. </p> <p> The plugin uses datatable and socket.io </p>
PHP, JS, MySQL, Wordpress
Automatic collector of content from social networks Facebook, Instagram, Twitter, Vimeo. New posts are saved as articles. Displaying content on the web. Update using Cron. Developed for ŠKODA AUTO a.s.
PHP, JS, MySQL
Manager for Prestashop <ul> <li>Allows you to edit orders faster</li> <li>Includes a campaign editor</li> <li>Import clients into the newsletter from CSV</li> <li>Search for duplicate product combinations</li> <li>copying images</li> </ul>
Borland C++ DOS, BIOS and DOS interrupt services
<p>The terminal was created as a debugging aid for a serial line.</p> <p> At the time (year 2002) it was problematic to use the serial port and control the communication in your own way. It was possible in Linux, but I didn't know it at that time. Although there was already a Hyperterminal in Windows, Windows did not allow direct access to the device and setting up the serial controller as needed. There was no chip management problem in DOS, but I couldn't find any ready-made tool.</p> <p> Thus, Terminal was born, originally a simple tool for monitoring messages on a serial line, which gradually grew into a tool used by several fellow programmers and thus deserved the development of its own visual environment. Among other things, the visual environment can also store background characters in dynamic variables before rendering the menu and restore the original characters after closing it.</p> <p> Today, Terminal, with its dependence on DOS, is rather a rarity. Of course, it is still possible to run it under DOS emulators, or emulated in Windows, but classic serial communication is gradually being replaced by USB and virtual serial lines, which it was not built for. Of course, it is possible that some emulators or versions of Windows can also emulate a serial controller, but it is very unlikely.<p> <p> If there are a few people who would like Terminal to make their life easier, I am thinking about transporting the Terminal to a Linux environment, to a web environment, but I am also thinking about a web version with ESP32. I already have some code fragments partially ready, so if anyone is interested, please get in touch. </p> <p> Many thanks to the authors of the SysMan application, where I could use the resident part to draw a lot of information on how to configure and control the serial controller. </p> <p> I make the code available as open source with the obligation to keep the author's name. </p>