WCH CH341 USB to Serial Chip Gets Linux Drivers to Control GPIOs over USB

USB to serial chips are often used as a debug interface either directly on the target board, or via a dedicated debug board. But some models have extra pins exposed, and one of those is WCH CH341, which also includes I2C & SPI interfaces and up to 8 GPIOs. But software support for those extra pins is not currently built-in into the drivers found in Linux mainline, and you’d also have to find a board that breakout the relevant pins. It turns out there are few of things including “CH341A ALL IN 1 USB to SPI/I2C/IIC/UART/TTL/ISP serial adapter” board going for $10 shipped on Aliexpress, and which Zoobab successfully used to control 6 (out of 8) GPIOs over USB. The board comes with a USB board to connect to your computer, several header for I2C, UART, SPI, some LEDs, and jumper to select I2C/SPI or UART mode and voltage (5V/3.3V). The board is recognized differently whether you use I2C/SPI or …

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

Getting Started with TinyLIDAR Time-of-Flight Sensor on Arduino and Raspberry Pi

TinyLIDAR is an inexpensive and compact board based on STMicro VL53L0X Time-of-Flight (ToF) ranging sensor that allows you to measure distance up to 2 meters using infrared signals, and with up to 60 Hz. Contrary to most other VL53L0X boards, it also includes an STM32L0 micro-controller that takes care of most of the processing, frees up resource on your host board (e.g. Arduino UNO), and should be easier to control thanks to I2C commands. The project was successfully funded on Indiegogo by close to 600 backers, and the company contacted me to provided a sample of the board, which I have now received, and tested with Arduino (Leonardo), and Raspberry Pi (2). TinyLIDAR Unboxing I was expecting a single board, but instead I received a bubble envelop with five small zipped packages. Opening them up  revealed three TinyLIDAR boards, the corresponding Grove to jumper cables, and a bracket PCB for three TinyLIDAR boards together with headers and screws. So I …

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

Flick HAT is a 3D Tracking & Gesture Expansion Board for Raspberry Pi Boards

Way back in 2012, I wrote about Microchip MGC3130 3D Gesture Controller with “GestIC technology” which allows you to make gesture up to 15cm from the surface and at lower power in order to control devices in a new way. At the time, the chip was said to sell for $2.26 in large quantities, and the evaluation kits went for $169 and up. I’m writing about MGC3130 about 5 years later, as Seeed Studio has started taking pre-orders for a $25.89 Flick HAT board based on the solution, and designed for Raspberry Pi boards, or other boards with a compatible 40-pin “GPIO” header featuring an I2C interface. Flick HAT 3D Tracking & Gesture HAT specifications & features: Chip – Microchip MGC3130 3D Tracking and Gesture Controller Tracking / Gesture Features 3D tracking Gesture sensing up to 15cm: Swipe (east to west, west to east, north to south, south to north), tap and double tap (center, east, west, north, south), airwheel …

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

Embedded Linux Conference & Open Source Summit Europe 2017 Schedule

The Embedded Linux Conference & IoT summit 2017 took place in the US earlier this year in February, but there will soon be a similar event with the Embedded Linux Conference *& Open Source Summit Europe 2017 to take up in Europe on October 23 – 25 in Prague, Czech Republic, and the Linux Foundation has just published the schedule. It’s always useful to find out what is being discussed during such events, even if you are not going to attend, so I went through the different sessions, and compose my own virtual schedule with some of the ones I find the most interesting. Monday, October 23 11:15 – 11:55 – An Introduction to SPI-NOR Subsystem – Vignesh Raghavendra, Texas Instruments India Modern day embedded systems have dedicated SPI controllers to support NOR flashes. They have many hardware level features to increase the ease and efficiency of accessing SPI NOR flashes and also support different SPI bus widths and speeds. …

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

Using GPIOs on NanoPi NEO 2 Board with BakeBit Starter Kit

NanoPi NEO 2 is a tiny 64-bit ARM development board powered by Allwinner H5 processor. FriendlyELEC sent me a couple of NEO 2 samples together with their BakeBit Start Kit with a NanoHat and various modules via GPIOs, analog input or I2C. I’ve already tested both Armbian with Linux 4.11 and Ubuntu Core Qt with Linux 3.10, and ran a few benchmarks on NanoPi NEO 2. You would normally prefer to use the Armbian image with Linux mainline since it provided better performance, but at the time I was told GPIO support was not there. Configuring NanoPi NEO 2 board with BakeBit library So this week-end, when I decided to test GPIO support and BakeBit Starter Kit, I decided to follow this advice, especially nanopi-neo2-ubuntu-core-qte-sd4g-20170329.img.zip image is still the recommended one in the Wiki. So I went with that image. I’ll use Python examples from Bakebit library, but if you prefer something similar to WiringPi, you may consider using WiringNP …

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

Getting Started with RabbitMax Flex IoT and Automation Hat for Raspberry Pi

At the beginning of the month I showed how to assemble RabbitMax Flex, a Raspberry Pi HAT compliant add-on board for Raspberry Pi boards with 40-pin header, that targets IoT and home automation project with its relay, IR transmitter and receiver, I2C headers for sensors, buzzer, RGB LED, and more.  Since I’ve already described the hardware, I’ve spend some time this week-end following the user’s guide to play around with the board using a Raspberry Pi 2 board, and try various features. The user’s manual explains that you need the latest version of Raspbian, but I’d not played with my Raspberry Pi 2 board for a while, so the kernel and firmware were quite old: So the first thing I had to do was to upgrade Raspbian. There are basically two options to upgrade, either downloading and dumping the latest Raspbian firmware image to your micro SD card, and update it from the command line, for example through SSH, and …

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

Board Bringup: You, Me, and I2C – ELCE 2012

David Anders, embedded systems developer at Texas Instruments, explains how to work with I2C in Linux based embedded systems at ELCE 2012. Abstract: Board bring up is one of the most under documented aspects of embedded development. I2C is such a powerful, low-cost, and ubiquitous method of communication, that a basic understanding of it’s usage is essential to the embedded linux developer to quickly bring up and debug embedded designs. This presentation will look at the various software and hardware aspects of working with I2C using simple case studies highlighting the implementation of an EEPROM and a GPIO Expander. Most embedded Linux developers at some point in their career will be handed a piece of hardware that is untested. This presentation intends to provide some information about core tools and methods for bring up of I2C interfaces and assorted I2C based peripheral devices. David Anders has previously presented at Embedded Linux Conference 2012 with “Board Bringup: LCD and Display Interfaces“. …

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