How to Build KiCad on Ubuntu 18.04 and Import Altium PCB Files

BeagleBone Black Altium KiCad

KiCad open-source EDA (Electronics Design Automation) suite software is now very popular, and many new projects are designed with the utility. AFAIK, some companies like Olimex switched all their new designs to KiCAD. But since many schematics and PCB layouts have been designed with other tools like EAGLE, Orcad Allegro, or Altium PCB design tools, it would be nice to be able to import those designs into KiCad. Converters have been around for a long time but when I tried to convert Beagleboard-xM OrCAD schematics to import them in KiCAD back in 2012, the results were really awful and unusable. But I recently saw a tweet saying it’s now possible to import Altium files into KiCAD. Finally, importing #altium boards into #kicad is only one click away (in the developer version). This allows to view and edit #opensource #hardware which was designed with #proprietary software, and thus, in fact, not open for everyone. pic.twitter.com/oogiJeyynW — Thomas Pointhuber (@Chaos_Robotic) April 4, …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

How to Detect STM32 Fakes

Real vs Fake STM32

STMicro STM32 microcontrollers are very popular, and it’s a well-known fact there are some fakes on the market. What I did not know is that many don’t even pass the blinky test. I learned this in Greaseweazle Github repository, a “tools and USB interface for accessing a floppy drive at the raw flux level”, where keirf explains how to detect STM32 fakes, notable clones of STM32F103C8 found in Bluepill board. The photo above shows a real STM32F103C8T6 microcontroller, and all should have the similar top marking and only one circular depression on the bottom left to indicate pin 1. keirf goes on to show two boards that are sold as STM32F103C8T6 Bluepill boards, and it’s fairly straightforward to point out the differences by just looking at the chips. The ugly part is that both fail the blinky sample. The first one is very easy to spot since the part number starts with “STM32FEB”, and it does not appear to be …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Updating the BIOS (System Firmware) from the Device Manager in Windows 10

Device Manager: Firmware->Acer Inc System Firmware

I recently started having problems playing YouTube videos in Firefox and Chrome in Ubuntu 18.04. The video would load, and I could see frames at any time, but it would just not play. I soon discovered that killing PulseAudio, and the video would play without audio. I also noticed I had Dummy Output in Sound settings. I tried all usual tricks to fix this, but still no luck. Then I discovered I had audio just after booting my computer, but after a while, there would be no audio at all. This seems to match the time by which the AMD GPU drives crashes (just warning), something that had happened ever since I installed Ubuntu on my Acer laptop. After more failed attempts, I decided to try to update the BIOS using Windows 10. A 10-minute task, right? I would just have to replace the hard drive with one pre-loaded with Windows 10 (I got one from warranty service a few …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Raspberry Pi Imager Makes Flashing OS Images Easier on Windows, macOS and Ubuntu

Raspberry Pi Imager Write

Most regular readers of this blog will probably find flashing operating system images to a MicroSD card to be child play. Just download the latest OS image, install balenaEtcher, select the image, the MicroSD card and you’re done. But people who have never used such tools may find it a bit confusing, so the Raspberry Pi Foundation has developer and now released a tool – Raspberry Pi Imager – working on Windows, macOS, and Ubuntu that makes it even easier. You’ll find the tool for your OS of choice on the Download page on Raspberry Pi website. I’ve given it a try in Ubuntu 18.04. Click on Operating System will bring you a list of the latest supported operating systems, an option to fully erase the MicroSD card, and another to install your own – already downloaded – custom image. I’ve selected Raspbian 2020-02-13, inserted my SD card and selected it. To get started simply click on the Write button, …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Getting Started with RT-Thread Nano RTOS on RISC-V Processors

GD32V Project Eclipse

CNXSoft: This is a guest post by RT-Thread explaining how to create your first program running on their real-time operating system using a GD32V  RISC-V MCU board as an example. This article describes how to “port” RT-Thread Nano to the RISC-V architecture, using the Eclipse IDE, GCC toolchain, and a basic project for the Gigadevice GD32V103 MCU. Foreword RT-Thread is an open-source embedded real-time operating system. RT-Thread has a standard version and a Nano version. The standard version consists of a kernel layer, components and service layer, and IoT framework layer, while the Nano version has a very small footprint and refined hard real-time kernel, better suited to resource-constrained microcontroller units (MCU). The main steps for porting Nano are as follows: Prepare a basic Eclipse project and get the RT-Thread Nano source code. Add the RT-Thread Nano source code to the base project and add the corresponding header path. Modify Nano, mainly for the interrupt, clock, memory, and application, to …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

How to Build & Run Linux on Kendryte K210 RISC-V NOMMU Processor

RISCV64 NOMMU Menuconfig

A few months ago, we wrote that Western Digital was working on Linux & BusyBox RISC-V NOMMU, and managed to boot a minimal Linux OS on Kendryte K210 powered Sipeed Maix Go board. RISC-V NOMMU support was scheduled for Linux 5.5, and now that the new kernel has been released, Damien Le Moal has pushed the code allowing to build Linux and a busybox based roofs for RISC-V 64-bit NOMMU platforms using buildroot. I could start the build following the instructions on Github, but it failed as a Linux 5.6 RC1 tarball was missing. But I noticed “Vowstart” picked up on Damien’s work, and wrote detailed instructions. So let’s try the build out using a machine running Ubuntu 18.04. We’ll have to make sure dependencies are installed first: Then we can retrieve the source code and do some preparations (e.g. extract Linux 5.6 RC1 tarball): The next step is to build the toolchain. It will take a long while because …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

How to Recover from a Bad Firmware Upgrade on Anet ET4 3D Printer

How to flash Anet ET4 Firmware

Hey, Karl here with a really quick how-to. This how-to is to help everyone who has bricked their Anet ET4 printer after upgrading firmware on the printer. Anet reached out for a review of the ER4 and I recently gave one printer to a buddy of mine and he showed a lot of enthusiasm. I thought it would be interesting to do a review from someone less experienced. I asked him if he would like to do it and he accepted. I wanted to help him with unboxing and initial setup so we fired up a YouTube Livestream. The build went smooth but because the UI is lacking finish I went searching for updates. It is not uncommon to flash firmware, and after a little googling I found updated firmware and was hoping to fix the UI. We followed the directions but the machine got hung at the logo after rebooting. Damn. After a little more searching found directions from …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Build & Customise OpenWrt for Raspberry Pi

OpenWrt Raspberry Pi Subtarget

OpenWrt is an open source operating system based on Linux especially designed for embedded & networking devices. This OS is well known for its lightweight footprint, standardized configuration approach (using LUCI interface), easy to build images, as opkg packages. At the core of OpenWrt is a writable root file system, where the users can add and/or remove packages, modify configs etc…. without having to re-flash the entire firmware/operating system. This is achieved by overlaying a read-only compressed SquashFS file system with a writable JFFS2 filesystem using OverlayFS. You can install pre-built packages from OpenWrt repo (which contains approximately 3500 packages) using opkg package manager. The Build Process Below steps cover the required pre-build environment and how to build OpenWrt from the source tree for Raspberry Pi board. Even though OpenWrt recommends Debian for the build machine, I built it successfully on Ubuntu 18.04 Desktop. Setup Build Environment Build OpenWrt Fetch the source tree from Openwrt git repo Move to OpenWRT …

Support CNX Software – Donate via PayPal or become a Patron on Patreon