Skip to content


LiPo battery finder

  • by

There are thousands of LiPo battery sizes for your project, but choosing the one that fits the best was no easy task until now. Meet the LiPo battery finder, which allows you to filter batteries based on x, y, and z sizes.

My tool contains a scraper that extracts the pages and subpages of and, creating a .mjs file as a result.

The .mjs file gets imported by the web application, allowing the scraped records to be searched interactively.

Easy KiCad PCB panelization with kicad-util

  • by

There are multiple panelizers available for KiCad, but only one is suitable for easily placing multiple oddly-shaped PCBs onto a panel: the kicad-util panelizer.

You simply place the PCBs next to each other and draw lines between them on the Eco1.User layer. Then run a kicad-util command voila; the lines are transformed into mouse-bites.

Unfortunately, kicad-util is not compatible with the updated PCB format of KiCad 6, so the drawn lines are not converted to mouse bites anymore.

Luckily, a merge request contains the fix, but the kicad-util creator is not available anymore. Although the contributor created his fork, the .jar file is not recompiled, so the fixed version is still quite inaccessible for most users.

Given the above, I recompiled the fixed kicad-util version with the mvn package command and made the .jar file available. I use it as:

java -jar ~/bin/kicadutil.jar pcb -f=myboard.kicad_pcb panel --inset=0 --hole=0.35 --pitch=0.7 --width=2.5 --fillet=1

Introducing Ultimate Hacking Keyboard

  • by

I want to take the opportunity to reveal the trailer video of the Ultimate Hacking Keyboard, a high-end mechanical keyboard of which I’m the founder and lead developer. Our keyboard will be kickstarted soon, so please share it, follow us, and subscribe to our list to get notified when our campaign starts. See you on!

How to rule remote shell sessions with tmux and mosh

If you’re like most ssh users when your connection breaks it’s bad news for you. Not only do you have to reconnect but your session gets destroyed and you have to make all the moves to restore the previous state. This doesn’t have to be that way. I’d like to say some words about two tools that solve these problems in the most elegant way possible.


tmux is a terminal multiplexer: it enables a number of terminals to be created, accessed, and controlled from a single screen. tmux may be detached from a screen and continue running in the background, then later reattached.

In the world of tmux there are windows and panes within windows. You can think of tmux windows as workspaces on the desktop that are aligned in a horizontal manner. It’s like having a number of virtual monitors next to each other each running different shell sessions. You can move across these windows as desired. With the use of panes you can split individual windows horizontally and/or vertically as desired, each pane housing a different session. This is pretty useful for tailing various log files in different panes and monitoring them at once.

You simply have to run the tmux command to create a new tmux session. Once a session exists upon reconnecting over ssh you have to invoke tmux attach to reconnect to your already existing session.

If you’re like me you may want to use tmux by default upon ssh’ing to servers. To make this happen you have to include export LC_TMUX_SESSION_NAME=yourusername into your ~/.bashrc and wrap scp on the client side and invoke tmux automatically on the server side. On a related note you can also take a look at my tmux.conf which I believe defines more intuitive shortcuts than the default configuration.

There are a number of alternatives to tmux that I’d like to list starting with the most powerful towards the least powerful. GNU Screen is yet another terminal multiplexer but its feature set, usability and configurability is rather limited compared to tmux. dtach is like a minimalistic tmux featuring one pane inside one window and it only provides a minimal set of options. Finally, with the use of the nohup command you can make your (typically long-running) script immune to hangups and hence it can survive ssh disconnects.


Remote terminal application that allows roaming, supports intermittent connectivity, and provides intelligent local echo and line editing of user keystrokes.

mosh is the other piece of the puzzle leading to the remote shell nirvana. After apt-getting mosh on the client and mosh-server on the server instead of invoking ssh invoke mosh From this point on you don’t have to worry about reconnecting to ssh or having to wait for the server to echo back your characters anymore.

My bias lighting setup

  • by

It should be no news for any well informed geek that bias lighting is good for your eyes. I’ve just recently implemented my setup which was surprisingly easy to put together. It only needed a self adhesive LED strip, an AC adapter, a switch and some wires. Click on the album below for your viewing pleasure!

bias-lightingClick to see the album

Ethernet cable labelling

Ever felt that you have too many cables in your home and don’t know which one leads where?  Welcome to my world!  Here’s my recipe to how to make the situation easier.

It all starts with a sticky tape.


Now comes the pen.


Let’s cut the tape with scissors.


At this point you should remove the protective foil from the back of the tape to expose the glue and shape a loop.


As a final move, pull the cable through the loop and push the tape against the cable to make it stick.


When doing all the above properly, you’ll get a of sight that makes the pants of any nerd wet.

Coder Keymaps closed

  • by

I’ve started Coder Keymaps a long time ago to create a special keyboard mapping that’s the best for me.  That idea is to map Hungarian characters in a special way using the Windows key.  Take the standard US layout, keep a Windows key pressed and press an alphanumeric key which produces an accented character on Hungarian keyboards and voila: the key will produce the relevant Hungarian character.

That was the basic idea but I went further about two years ago when I realized that hand travel distance is much longer than it’s supposed to be in many cases.  When writing code one’s right hand must move often between the alphanumeric keypad and the navigational keypad.  To alleviate this problem I decided to map the whole navigational block to the alphanumeric block through the Windows key.

I’ve used the above configuration with great pleasure and it improved my efficiency for almost two years.  Unfortunately the X keyboard drivers must have been changed in the last two Ubuntu releases because my xmodmap keymaps stopped working.  I knew it in the beginning that xmodmap is outdated and XKB is the future but it wasn’t really urgent to port Coder Keymaps to XKB so I didn’t do that.

Due to the pressing need to use my beloved mapping I’ve made some efforts and had some online chat with Sergey Udaltsov who is very knowledgable about XKB.

Long story short, it seems that it’s impossible to create such an exotic keymap on Linux.  Not that it’s not possible to create it with XKB, but various GUI toolkits, such as GTK+ interpret the mappings in strange ways and the mapping wouldn’t be consistent accross toolkits.  I’m sure that this can be solved by modifying the X keyboard driver or the toolkits but as you may suppose it’s a heroic work.  Not only that, but this is an OS-specific problem and there are no standard solutions that truly work.

I finally decided to attack the problem differently by creating a keyboard hardware that has limitless power regarding remapping.  It’s actually not a new idea of mine, it’s about two years old.  The prototype is in development and it’s very innovative in many ways.  I’ve gathered a small, but knowledgable team and we’re progressing rapidly.  I wanted to have a working prototype by the end of this year but I’m not sure we get there in time because rapid prototyping is expensive and the delivery of rare electronic components take time to arrive to Hungary.  But no matter how long it will take, we’ll never give up.

As a result of the above I don’t wanna devote any more time to Coder Keymaps.  The project has been closed.

Dohányzó buszsofőrök megbí­rságolása

  • by

Jópár alkalommal küldtem már levelet különböző Volán Társaságoknak amikor azt tapasztaltam, hogy valamelyik sofőrük dohányzott a buszon és a válaszlevélben tájékoztatni szoktak róla, hogy a sofőrt megrovásban részesí­tették.  Ez sosem töltött el igazán elégedettséggel, mert szerintem minimum egy párezer forintos pénzbüntetés szülne jelentős visszatartó erőt ahhoz, hogy az illető a jövőben se gyújtson rá arról nem is beszélve, hogy törvény alapján is pénzbüntetésben kellene részesí­teniük a sofőrt.

Az elmúlt hónapokban küldtem pár levelet bizonyos szervezeteknek, mint például a Levegő munkacsoportnak, és az Országos Dohányfüstmentes Egyesületnek, hogy hogyan lehetne elérni, hogy pénzbüntetést rójanak ki a sofőrökre.  Az illető szervezetek vagy tipikusan nem válaszolnak vagy egymásra mutogatnak.  Megértem, hogy nem ez a világ legfontosabb problémája, de amit meg tudok tenni azt megteszem az ügyben.

Az azért örömmel töltött el, hogy Wittich Tamás, a Fogyasztóvédelmi Hatóság vezetője válaszolt a feltett releváns kérdésemre.

Attól függetlenül, hogy nem mindig rónak ki bí­rságot a vétkező sofőrökre azért azt örömmel könyvelem el, hogy azokon a buszokon amelyeken utazni szoktam és egyszer már küldtem levelet, ott azután soha nem szembesültem dohányfüsttel újra, í­gy azt hiszem a megrovásnak is lehet visszatartó ereje.

Matias keyboards

  • by

There’s a pretty interesting comany I’ve heard about lately named Matias.  They create various products, but some of their keyboards are especially interesting because of the special layouts they’re using.

Their Optimizer layout that is used in the Matias Optimizer Keyboard really hits home for me.  The idea is very good, but they’re not the first to invent such a special layout and probably neither me.  I’ve seen a similar layout a long time ago on a site that I don’t remember, but a guy basically made a customized X Server layout with the core idea of using the JKLI keys and the Windows key as a shifting key to produce handy cursor navigation.  I’ve seen his work after I came up with the Ultimate layout which is similar to these layouts.  The core idea of the Optimizer layout is very good, but their implementation is suboptimal for a number of reasons which I won’t talk about now because I don’t wanna share the details yet.

On the other hand their Half-QWERTY layout that is used in Matias Half-QWERTY One-Handed Keyboard and Matias Half Keyboard is new to me and I haven’t heard about it yet.  It may truly be their own invention although it doesn’t take a genious to came up with such an idea I believe.  I think the Half-QWERTY layout works wonderfully in practice because it’s easy for the human mind to mirror the keys of one half of the keyboard.  One thing that is hard to understand for me is why these products are so bloody expensive.  They sell them about $600.  One reason I can imagine that the target audience is very limited and they cannot sell many of these and want to make additional profit with these products but such high prices are very discouraging for customers I believe.