Getting Started with Raspberry Pi Pico using MicroPython and C

Raspberry Pi Pico board was just launched last Thursday, but thanks to Cytron I received a sample a few hours after the announcement, and I’ve now had time to play with the board using MicroPython and C programming language. I went to the official documentation to get started, but I had to look around to achieve what I wanted to do, namely blinking some LEDs, so I’ll document my experience with my own getting started guide for Raspberry Pi Pico using a computer running Ubuntu 20.04 operating system. The instructions will be similar for Windows and Mac OS. Preparing the hardware In theory, we could just get started with the board alone, but since I got some headers with my board, I also took the opportunity to try out Pine64 Pinecil soldering iron powered by MINIX NEO P2 USB-C power supply. The soldering iron worked great for about one minute, and then I started to have problems with soldering… Looking […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Reading Vehicle OBD-II data through CAN within a containerized application in Embedded Linux

CNXSoft: This is a guest about OBD-II and CAN support in embedded Linux by Andre Márcio de Lima Curvello, Sr. FAE and Technical Evangelist, Toradex A connected world makes it possible to track your online orders being shipped to your home through your smartphone in real-time, and getting information about your vehicle such as tire pressure, outside temperature, and even details like if a lamp is broken – has begun to be possible via smartphones in modern vehicle models. But behind the magic of knowing where the truck carrying your package is at all times and other details of the vehicle, there is a very complex world made of embedded devices ‘talking’ to each other so the information makes its way from the device to you. In this article, you will learn how to create an application to communicate with a vehicle through CAN via the OBD-II standard. We use modern software containerization with Docker and Torizon, the state-of-the-art Industrial Embedded […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

How to develop Gstreamer-based video conferencing apps for RDK & Linux set-top boxes

CNXSoft: This is a guest post by Promwad that explains the basic steps to develop a video conferencing app with Gstreamer on TV boxes running Linux. The COVID-19 pandemic has become a catalyst for new online services. For example, Zoom became so successful that it overtook IBM in terms of capitalization this month. The software engineers at Promwad were inspired by this success and decided to go even further: what about implementing video conferencing on Smart TV and STBs? Then the users of such an application will have an opportunity to communicate not only at work but also to enjoy remote meetings with friends, cheer for a soccer team, watch a movie together, or do sports with a coach. For some reason, most digital TV operators do not have such a service, although, from an engineering point of view, all these features can be implemented on set-top boxes based on Linux/Android and RDK. Let’s analyze the architecture of a Zoom-like […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

How to Take a Remote Screenshot in Raspberry Pi over SSH

I recently reviewed a Raspberry Pi 4 laptop with a custom interface that made it impractical to take screenshots directly on the device. So instead I had to take screenshots remotely over SSH. It’s quite easy to do. Most of the steps can be reproduced in other Linux systems, and are not specific to Raspberry Pi. Enable SSH in Raspberry Pi First, enable SSH either with sudo raspi-config in a terminal window and selecting 5. Interface Options, then P2 SSH… If for some reason, you don’t have access to the terminal, take out the MicroSD card from the Raspberry Pi board, and from a computer create a new empty file named “ssh” in the boot partition. Now provided you have the username and password for your board, you can connect to SSH with the IP address from a terminal: or a program like Putty. Taking a screenshot remotely You’re now ready to take a screenshot as follows: scrot is the […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

3D Printer Retraction Calibration Vol II – Calibration Generator Program Release

Good day. Karl here. It has been a while since I have submitted any articles. I got burned out and my normal day job picked up considerably. I have been keeping busy but not with anything I would share by itself. I will start out with an update on what I have been up to. You can skip to the 3D printer retraction calibration section with the release of the Calibration Generator tool if you are not interested. What have I been up to? First, I have been doing a lot of gaming. Been playing Fortnite, Red Dead Redemption 2, and some other random games. I am trying hard to keep up with my son. Unraid OS. So many things to explore and learn. Docker, VM’s, and storage. There is so much goodness in this OS. I was able to consolidate several services into one box. I had a standalone NAS drive that I went way too long trusting my […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Getting Started with Qoitech Otii Developer Tool using ESP8266 and Raspberry Pi 4 Boards

Last month, I received Qoitech Otii Arc power supply, power meter, and DAQ unit that aims at helping hardware and software engineers develop energy-efficient products. I’ve now had time to test the unit with an ESP8266 board and Raspberry Pi 4 SBC, so I’ll show how to get started and my overall experience with the hardware and program. Requirements and Initial Setup The unit takes a 9V power supply or micro USB adapter as power input, but power output is done through banana plugs. I did not have any cables with banana plugs so I bought one on eBay for about $5 shipped. This cable is really convenient with output to USB (female connector), crocodile clips, and hook clips. However, as we’ll see below it may not be suitable for all types of loads, and you may have to make your own with a higher rated cable. You’ll need to download Otii program available for Windows 10 / 7 64-bit, […]

Support CNX Software – Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

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

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 cryptocurrencies, become a Patron on Patreon, or buy review samples

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

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 cryptocurrencies, become a Patron on Patreon, or buy review samples