Embedded Linux Conference & Open Source Summit 2019 Schedule

Embedded Linux Conference 2019 Schedule

In the last few years, I covered the Embedded Linux Conference and IoT Summit schedules since both were happening at the same time and in the same location. But the Linux Foundation have recently announced the Embedded Linux Conference will combine with the Open Source Summit, so the IoT Summit appears to have been phased out. The full schedule for the events taking place on August 21 – 23, 2019 at the Hilton San Diego Bayfront, USA, has also been released, so I’ll create a virtual schedule with some of the sessions most relevant to this blog. Wednesday August 21, 2019 11:30 – 12:05 – What’s New with U-Boot? by Simon Glass, Google LLC U-Boot is a widely used bootloader in embedded systems. Many users are unaware of the wide feature-set of U-Boot, particularly features added in the last few years. This talk aims to bring users (and prospective users) up to speed on the state of the art in …

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

Baikal T1 MIPS Processor – The Last of the Mohicans?

Last MIPS P5600 Development Board

CNXSoft: Guest post by Blu about Baikal T1 development board and SoC, potentially one of the last MIPS consumer grade platforms ever. It took me a long time to start writing this article, even though I had been poking at the test subject for months, and I felt during that time that there were findings worth sharing with fellow embedded devs. What was holding me back was the thought that I might be seeing one of the last consumer-grade specimen of a paramount ISA that once turned upside-down the CPU world. That thought was giving me mixed feelings of part sadness, part hesitation ‒ to not do some injustice to a possibly last-of-its-kind device. So it was with these feelings that I took to writing this article. But first, a short personal story. Two winters ago I was talking to a friend of mine over beers. We were discussing CPU architectures and hypothesizing on future CPU developments in the industry, …

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

How to Run Linux on RISC-V with QEMU Emulator

RISC-V open source architecture is starting to become more and more interesting thanks the growing RISC-V hardware & software ecosystem, and with the recent release of HiFive Unleashed, we even have a board capable of running Linux. The only problem: it costs $999. But luckily, it’s possible to experiment with Linux on RISC-V without extra hardware, just using your current PC. Imperas offers a commercial solution working on both Windows and Linux that relies on busybear-linux RISC-V Linux root filesystem comprised of busybox and dropbear SSH server. The rootfs also works with QEMU, so I tried it in Ubuntu 16.04. The instructions on Github are quite easy to follow. My computer is powered by an AMD FX8350 processor coupled with 16GB RAM, and the whole process took around 2 hours, so better use the fastest computer possible. It also requires around 26 GB of storage on your build machine. First, let’s create a working directory, and retrieve the RISC-V toolchain: …

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

Banana Pi M2 Ultra Allwinner R40 Development Board with SATA & GbE Sells for $46

Allwinner A10 and A20 processors have been quite popular in the past, since they could handle Fast or Gigabit Ethernet and SATA natively, included decent multimedia capabilities, and were found in low cost hardware such as Cubieboard 2 or MeLE A1000. Since then we’ve had a few boards with SATA using newer and faster processors without SATA IP, meaning it was usually implemented using a USB 2.0 to SATA bridge leading to mediocre to average performance depending on the implementation and selected bridge. Allwinner R40 is the successor of Allwinner R20 with a faster quad core Cortex A7 processor, but keeping Gigabit Ethernet, SATA, and most features of its predecessor. The good news is that Banana Pi has now launched the promised M2 Ultra development board based on the new processor for $45.80 + shipping on Aliexpress (Total for me: $48.35). Banana Pi M2 Ultra specifications: SoC – Allwinner R40 quad Core ARM Cortex A7 processor with ARM Mali-400MP2 GPU …

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

BusyBotNet is a Fork of Busybox with Security Tools

Busybox provides a lightweight version of common command line utilities normally found on “big” Linux into a single binary, in order to bring them to embedded systems with limited memory and storage. As more and more embedded systems are now connected to the Internet, or as they are called nowadays the Internet of Things nodes, adding security tools, such as cryptographic utilities, could prove useful for administrators of such system, and so BusyBotNet project wsa born out of a fork of Busybox. Some of the tools implemented include: fenc to encrypt stuff with salsa algo tsh. needs work, backdoor shell aes enc rathole backdoor shell, blowfish enc ssyn2 ddos tool sudp udp ddos tool jshon sh wrapper for json hydra prism userspace icmp triggered reverse shell backdoor You can access the source code and instructions on busyboxnet github repo. I’ve quickly tried it in my AMD x86 computer running Ubuntu 14.04 using BusyBotNet default settings: You could run make menuconfig …

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

DIY Stripboard/Veroboard Enclosure for Raspberry Pi (Part 2)

Following up my previous post entitled “DIY Modular Stripboard / Perfboard Casing for Raspberry Pi (Part 1)” where I explained how I created an modular enclosure made of perfboard, or the overall concept, I’ve now designed two “smart” sides for the enclosure: a 16-LED stripboard side, and a 5V relay stripboard side. Today, I’ll detail how I’ve done this, with details about electronics, soldering, assembly, the Linux distribution (built with Yocto), as well C programs, HTML page, and (CGI) shell scripts used to light up the 16 LEDs, and control a standard 220V lamp with a relay via my phone’s web browser. 16-LED Stripboard Top Schematics, Soldering, and Testing I had decided to design the top board of the enclosure with several LEDs, 3 LEDs on both side, and a Raspberry fruit (6 red LED) and 2 leaves (4 green LED) in the middle. Before getting started, I did some experiment on a breadboard, and quickly discovered that 5V LEDs …

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

12MB Minimal Image for Raspberry Pi using the Yocto Project

Last year, I wrote instructions and provided a download link about a minimal image for Raspberry Pi based on Raspbian. The compressed image is 84MB, and the good thing about it is that you can just use apt-get to install packages. The problem is that it’s not actually that small as once it is uncompressed the rootfs is still a massive 414 MB. So today, I’ll explain how to create a smaller (and custom) image using the Yocto Project, a platform that let you build an embedded Linux distribution matching exactly your project’s requirements. Other advantages are that the build is configurable with config files, so it’s easily reproducible with a few command lines, and it might turn out to be useful to learn more about the Yocto Project as many boards and SoC are now making use of the framework, including Freescale i.MX6 (Wandboard, Olinuxino-imx233, Sabrelite, etc…), the Beagleboard, and Minnowboard to name a few. If you just want …

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

Monkey, an Open Source High Performance Embedded Web Server

Some time ago, I mentioned 5 web servers (mathopd, thttpd, busybox httpd, boa and lighttpd) suitable for embedded systems (including those featuring no MMU processors) and low end machines. I’ve recently come across Monkey web server, a lightweight open source Web Server for Linux (2.6.29 or greater), which has been designed with focus in embedded devices. Monkey is currently supported on ARM, x86 and x64, although a quick analysis of the source code shows it forks, so it won’t be supported on processors that do not feature a memory management unit (MMU) without modifications. Monkey supports the following features: HTTP/1.1 compliant Virtual Hosts Asynchronous networking model (event-driven) Indented configuration Plugins Support C API Interface Other features through base plugins: SSL Security Log writter Directory Listing Shell: Command line The developers have benchmarked Monkey against busybox httpd and nginx on a now well-know ARMv6 platform: the Raspberry Pi. They used Siege v.2.72 benchmarking tool to perform the tests instead of Apache …

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