Rob’s Tech Thoughts

  • robot with 3d printer

    Code to make real things – 3D printing by numbers.

    This blog is an introduction to using Python programs to design 3D printable objects. and uses Python Ansible Jupyter Labs Notebooks and CadQuery A lot of program code just affects what is on screen, though software controlls almost all aspects of our environment. One of the many ways this can happen is via 3D pinting.…

    READ MORE

  • Robot looking at a monitor by a window, and a penguin comes out of the monitor.

    My App becomes a better keyboard

    Its time to meet RoboKey, the open-source tool designed to put powerful keyboard automation within reach. a significant leap forward in transforming an Arduino Due into a “robot keyboard.” Automate sequences effortlessly: whether it’s for presentations, demos, or just to boost productivity. You can control a PC with a Stream Deck macro keypad connected to…

    READ MORE

  • Kotlin – Breaking out of the JVM

    1. Introduction: Ready to explore the full potential of Kotlin? It’s not just for Java! Kotlin is not limited to the JVM; this article will tell you about many ways Kotlin can talk to other languages. Kotlin has earned a stellar reputation for its concise syntax and seamless interoperability with Java. While it’s often seen…

    READ MORE

  • Python wrapped round letter K

    Simplifying Complex Numbers in Kotlin with Python-like Syntax

    Complex numbers are essential in many fields. However, working with them in Kotlin can sometimes feel cumbersome due to the lack of built-in support for complex numbers. Since I learned complex numbers in Electronic Engineering, I learned to refer to them as j, as Python does. Inspired by Python’s simplicity, I created a set of…

    READ MORE

  • Arduino Due Virtual Keyboard Upgrade: Enhanced Control and Interruptibility

    In my previous blog post,, I introduced My project where an Arduino Due acted as a virtual keyboard—I called the “RoboKeyboard”—controlled by a Kotlin PC program. This setup allowed for keyboard macros and testing by sending commands from the PC to the Arduino, which would then emulate keystrokes to a connected device. While the initial…

    READ MORE

  • Developing a Robot Keyboard PC Interface with Kotlin and Arduino

    In this post, I will walk you through the user interface and related parts of interesting project I developed: a Robot Keyboard PC Controller Interface. This interface uses an Arduino to emulate a virtual keyboard and a Kotlin client for communication. The primary aim is to provide a cross-platform solution that works on Windows, with…

    READ MORE

  • Arduino Robot Keyboard with an old Arduino Due

    Using StreamDeck on Linux via a Windows Machine: A DIY Solution As a fan of the StreamDeck macro keypad, I wanted to extend its functionality to my Linux setup. Officially, StreamDeck doesn’t support Linux, though there are some third party attempts, but I want something I can easily plug in with minimal configuration. I was…

    READ MORE

  • Java LTS versions evolution – 20 years since the first big change

    Since 2018 Java has used a model of L.T.S. (Long Term Support) releases with short lived interim releases. Before that there were certain key releases that made major changes. I am going to attempt to summarize the changes as its sometimes necessary to show what was implemented in what version of Java, A Look at…

    READ MORE

  • Exploring AntBuilder with Groovy – a simple automation tool

    In this post, I’ll walk you through an intriguing Groovy script that I wrote as part of a proof of concept. This script leverages the powerful AntBuilder to transform a custom .antcmd file into a Groovy script and execute it. This approach can be particularly useful for performing filesystem manipulations where using tools like Terraform…

    READ MORE