The ANAVI Macro Pad 12 and ANAVI Arrows have received official certification from the Open Source Hardware Association (OSHWA). OSHWA, a non-profit organization based in the United States, manages the Certified Projects Directory and hosts the annual Open Hardware Summit. Notably, the summit takes place in different cities, and in 2024, it is scheduled to be held in Montreal, Canada.
The certification program by OSHWA ensures that a project’s understanding of “open source hardware” is in harmony with the wider community’s definition of open source hardware. Subsequently, OSHWA assigns a unique identification number (UID) to every certified hardware version. This UID commonly comprises a blend of a country code and a numerical sequence, ensuring that each certified hardware version possesses a distinct identifier. For our two new keyboards, the UIDs are:
The OSHW Certification Mark serves a dual role: not only does it display the project’s unique certification ID, but it also streamlines navigation and information retrieval. In this context, the “BG” prefix signifies the country code for Bulgaria, indicating that these mechanical keyboards are crafted in Plovdiv, the second-largest city in Bulgaria and the oldest continually inhabited European city with over 6000 years of history. What sets our keyboards apart is their complete adherence to open-source principles. This means that every facet of their design and functionality is open and freely accessible to everyone. Our dedication to openness extends to utilizing only free and open source software in various project aspects, including designing the printed circuit board, creating acrylic enclosures, developing firmware, and thoroughly documenting the entire process.
The printed circuit boards for ANAVI Arrows and ANAVI Macro Pad 12 were designed with the open source software KiCad on Ubuntu Linux distribution. Furthermore, we use open source firmware called KMK, written in CircuitPython. Soon QMK firmware will be also ported to both keyboards. Open source ensures transparency, sharing knowledge and hopefully fostering collaboration and innovation within the community.
I2C (Inter-Integrated Circuit) is a popular serial communication protocol that allows multiple integrated circuits to communicate with each other over a short distance, typically limited to a few meters. Each device on the bus has a unique address, identifying it and allowing it to communicate individually. The protocol was developed by Philips (now NXP Semiconductors) in the 1980s. Over the years it has become a standard for communication between various electronic components in embedded devices. I2C can be used to connect various peripherals, such as sensors, displays and EEPROMs. The mini OLED yellw-blue displays on our compact mechanical keyboards ANAVI Macro Pad 12 and ANAVI Arrows are connected to the Raspberry Pi RP2040 microcontrollers over I2C.
I2C is easy to use becase it requires only two wires for communication:
SDA (Serial Data) for transmitting and receiving data between devices
SCL (Serial Clock) for a clock signal to synchronizes the data transfer between the devices
The core component of our hot-swappable mechanical keyboards ANAVI Macro Pad 12 and ANAVI Arrows is Seeed Studio XIAO RP2040 module. This is actually a tiny development board suitable for surface-mount technology (SMT) assembly and equipped with a Raspberry Pi RP2040 32-bit dual-core ARM Cortex M0+ MCU, 264 KB SRAM, 2 MB Flash memory, 11 GPIO pins and USB-C connector. The I2C interface is located on pins D4 (for SDA) and D5 (for SCL) of XIAO RP2040.
A yellow-blue mini OLED I2C display is included in all kits with ANAVI Macro Pad 12 and ANAVI Arrows. It has 4 pins: GND (ground), VCC (supply voltage), SCL, and SDA. This display relies on SSD1306, a single-chip CMOS OLED/PLED driver with controller for organic / polymer light emitting diode dot-matrix graphic display system which consists of 128 segments and 64 commons. It is the same display we include in our other mechanical keyboards like the ANAVI Macro Pad 10 and ANAVI Macro Pad 8, Internet of Things devices like the ANAVI Thermometer and ANAVI Gas Detector, tools like ANAVI Fume Extractor, and Raspberry Pi add-on boards like ANAVI Info uHAT. This versatile mini OLED display is a great fit for many projects, You can pick one up at Mouser if you need a spare.
There is a dedicated slot for the display on the printed circuit board. Just plug the mini OLED display into it and then connect the mechanical keyboard to a computer. In every kit with ANAVI Macro Pad 12 and ANAVI Arrows, you will find four additional male-to-female jumper wires included, providing you with an exciting opportunity to get creative with your project. If you decide to design your own 3D printed case for the keyboard, these jumper wires may become handy. They grant you the flexibility to reposition the mini OLED display to a location of your choice within the case.
ANAVI Macro Pad 12 is compatible the two most popular open source firmwares for mechanical keyboards: KMK and QMK. KMK is written in CircuitPython and QMK in the C programming language. Both support OLED displays over I2C.
Makers with advanced skills have a fantastic opportunity to extend the capabilities of the keyboard project by adding more I2C peripherals. Using a breadboard and without any soldering, makers can easily connect additional I2C peripherals, such as sensors or other modules that communicate via I2C, to the existing setup. This allows them to expand the project’s functionalities and explore various creative ideas. Those seeking a more permanent and tailored extension can even design their own custom I2C add-on printed circuit board. The mini OLED displays included in the kits work out of the box, but it is important to be aware that incorporating any other I2C devices into the keyboard will require adjusting the KMK firmware to support the additions.
Support our crowdfunding campaign and get the open source mechanical keyboards ANAVI Macro Pad 12 and ANAVI Arrows with a mini OLED display for real-time notifications and customizable graphics at your fingertips. Learn how to use I2C and unleash your creativity by extending the keyboard with additional peripherals!
Huge thanks to Stefan for his valuable contribution to the upstream of KMK! If you own Macro Pad 10, Knobs 3, and Knob 1, please consider upgrading the KMK firmware on your mini mechanical keyboard to get his fix.
In other news: the GitHub pull request that adds support for ANAVI Knobs 3 was finally merged in QMK! QMK stands for Quantum Mechanical Keyboard. It is probably the most popular firmware for mechanical keyboards and supports literally hundreds of devices, including ANAVI Macro Pad 8 and our other mechanical keyboards. The source code is available under GPLv2 license and written in C. Initial support for the Raspberry Pi RP2040 microcontroller in QMK was added in September 2022. We started the porting efforts in October, and shortly after that, patches for ANAVI Macro Pad 10 and Knob 1 were merged. However, it took almost 6 months to merge the GitHub pull request for ANAVI Knobs 3. The long wait is over: now all of our mini mechanical keyboards are supported by QMK!
The community is very important and makes all the difference in any open source project. Thank you for supporting and improving our open source hardware mechanical keyboards!
By the way, “field report” is a program by Crowd Supply to highlight talented creators by publishing their projects, spreading the word among the community and also giving a $25 Crowd Supply credit. So if you are using any of our open source hardware products available at Crowd Supply don’t think twice and submit a Crowd Supply Field Report now 🙂
Meet ANAVI Macro Pad 2! It is an open source, programmable two-key mechanical keypad with backlighting. Each of the keys on ANAVI Macro Pad 2 can be reprogrammed for use as a macro or even as a dedicated shortcut key, making it perfect for a number of applications across various industries.
ANAVI Macro Pad 2 runs on a Microchip ATtiny85, which is a reliable, low-cost, 8-bit AVR RISC-based microcontroller. It has a gold-plated printed circuit board, Gateron red mechanical switches, 3mm red LEDs and translucent keycaps.
Out of the box, all kits of ANAVI Macro Pad 8 are powered by the popular open source QMK firmware.
QMK stands for Quantum Mechanical Keyboard and it is an open source community centered around developing various computer input devices. The project is hosted in GitHub. More than 1700 developers contributed to this open source firmware over the years. QMK supports more than 2000 keyboards and keypads brands.
Although QMK is very powerful and flexible, it might be a challenge to get used to it if you haven’t used it before. Over the next weeks and months, as part of efforts for increasing the documentation related to ANAVI Macro Pad 8, we will be rolling out updates related to QMK.
QMK offers several options to select, customize and flash a keymap for your keyboard:
Command-line interface – advanced but not very user friendly
QMK Configurator – an online tool used for easily creating firmware files for keyboards supported by QMK.
You can use QMK on MS Windows, MacOS and GNU/Linux distributions. To get started with the QMK firmware please explore this tutorial from the official documentation and install all required software suitable for the operating system on your PC.
KiCad – free software suite for electronic design automation which as used to design ANAVI Macro Pad 8,
Kodi – for the free and open source media player application,
OBS – for the popular open source video recording and live streaming software,
Zoom – for the popular video communication software.
Over the time we plan to extend the list with keymaps for other popular software applications. Please feel free to submit your favorite keymaps for ANAVI Macro Pad 8 to the QMK repository in GitHub!
Compile QMK for ANAVI Macro Pad 8
After installing QMK software on your computer, from the command line you can compile QMK firmware with the default keymap for ANAVI Macro Pad 8 using the following command:
qmk compile -kb anavi/macropad8 -km default
Flash QMK on ANAVI Macro Pad 8
Follow the steps below to flash the compiled QMK firmware to ANAVI Macro Pad 8:
Connect ANAVI Macro Pad 8 to your personal computer with USB to micro USB cable
Execute the following command in a terminal to flash the default keymap:
qmk flash -kb anavi/macropad8 -km default
Press the RESET button on ANAVI Macro Pad 8 when asked:
Detecting USB port, reset your controller now.....
Wait until the firmware flashes successfully:
avrdude done. Thank you.
The heart of ANAVI Macro Pad 8 is Microchip ATmega32U4. It is an 8-bit microcontroller part of the AVR family. QMK relies on avrdude as the utility to download, upload and manipulate the firmware of these microcontroller.
ANAVI Macro Pad 8 is available at our distributors Crowd Supply and Mouser. Please contact us if you are interested in wholesale orders or if you prefer shipping directly from the EU.
ANAVI Macro Pad 8 is an open source, programmable, eight-key keypad with backlighting, underlighting, and OLED screen. Following the successful crowdfunding campaign we manufactured the printed circuit boards in a small local factory in Plovdiv, Bulgaria, EU. We would like to explain in detail the whole manufacturing process.
The fabrication includes a procedure called panelization which groups together a number of PCBs on a larger board called a “panel”. In the case of ANAVI Macro Pad 8 the “panel” contains 3 boards. All of them are gold plated through electrolytic nickel-gold process. Gold is very expensive, especially at the moment, but it is still worth it. Gold-plated PCBs have excellent quality with high hardness, wear and oxidation resistance.
Sourcing parts in the COVID-19 time is a challenge but we work with trusted and reliable suppliers. We bought Microchip ATmega32U4 microcontrollers from Mouser. They arrived from the warehouse in Texas, USA. Each microcontroller is with TQFP-44 package that requires surface mount technology (SMT). The local factory has already assembled them alongside with all other SMT components.
The assembly of Gateron red mechanical switches and the red 3mm LEDs for all developer kits requires through-hole technology, a.k.a. manual soldering. This is a time consuming process. To simplify the work and to keep the mechanical switches on their places we created this plate that matches the size of the panels.
There are special holes on each mechanical switch for the 3mm LED. After soldering all of them, the leads of the LEDs have to be cut from the back side of the panel.
After all these steps, testing and packaging the developer kit will not require any soldering. However, people who enjoy soldering like me can order a maker kit and experiment with various mechanical switches and 3mm LEDs with different colors. Furthermore, the maker kit allows to perform a hot-swap upgrade as explained in the previous post.
After burning a the same bootloader as in Arduino Leonardo, flashing the open source QMK firmware and testing our mechanical keyboards are ready for packaging!
Have you already ordered our open source mechanical keypad ANAVI Macro Pad 8 from the recent crowdfunding campaign? It is powered by Microchip ATmega32U4: an 8-bit microcontroller with 32K bytes of ISP Flash, USB Controller and I2C. This microcontroller is part of the AVR family of microcontrollers developed since 1996 by Atmel and acquired by Microchip Technology in 2016.
Microchip ATmega32U4 is how ANAVI Macro Pad 8 connects to the USB port of a personal computer, shows graphics and text on the mini OLED display through I2C. Furthermore, this microcontroller has more than enough general-purpose input/output (GPIO) pins for the mechanical switches.
After several months of development, the crowdfunding campaign for ANAVI Macro Pad 8 has been launched at Crowd Supply!
ANAVI Macro Pad 8 is an open source, programmable, eight-key mechanical keyboard with backlighting, underlighting, and OLED screen. The popular open source QMK firmware allows you to easily configure custom keyboard layouts and macros, even directly in a web browser.
The crowdfunding campaign has a very modest goal of just $1. We have 3 stretch goals! If we raise $500 or more we’ll add super cool 32 transparent emoji keyboard stickers to all kits. You can stick them to the top or the sides of the key caps.
The crowdfunding campaign will help us manufacture it in a local factory in Plovdiv, Bulgaria, EU. We hope you’ll jump in and help us bring this entirely open source project to life!