Language Selection

English French German Italian Portuguese Spanish

Hardware

Banana Pi BPI-M2 Pro is a compact Amlogic S905X3 SBC

Filed under
Hardware

Banana Pi has already designed an Amlogic S905X3 SBC with Banana Pi BPI-M5 that closely follows Raspberry Pi 3 Model B form factor, but they’ve now unveiled a more compact model with Banana Pi BPI-M2 Pro that follow the design of the company’ earlier BPI-MP2+ SBC powered by the good old Allwinner H3 processor.

BPI-M2 Pro comes with 2GB RAM, 16GB eMMC storage, HDMI video output, Gigabit Ethernet, Wifi & Bluetooth connectivity, as well as two USB 3.0 ports.

Read more

Asymmetric Multi Processing with Linux & Zephyr on the STM32MP1

Filed under
Hardware

In the embedded world, more and more vendors offer Arm-based System-on-Chips (SoC) including both powerful Cortex-A CPU cores, designed to run a full-featured OS such as Linux, and one or more low-power Cortex-M cores, usually found in microcontrollers, designed to execute bare-metal or RTOS-based applications.

[...]

While the Linux kernel can run on a wide range of devices, it requires a decent amount of memory (> 4MB), and therefore cannot be used on memory-constrained microcontrollers.

Enters Zephyr, a project initiated by Wind River, now developed as a Linux Foundation project.

Read more

Geniatech XPI-3288 Raspberry Pi lookalike features Rockchip RK3288 SoC

Filed under
Hardware

Geniatech XPI is a family of single board computers following Raspberry Pi 3 form factor. We first covered XPI-S905X SBC in 2018, which was followed by XPI 3128 board last year.

The company has now launched another model with Geniatech XPI-3288 SBC powered by Rockchip RK3288 32-bit quad-core Cortex-A17 processor coupled with 2G RAM and 16GB eMMC flash.

Read more

Arduino and Raspberry Pi Misc.

Filed under
Hardware

  • Arduino IDE 2.0 beta released with live debugger, revamped user interface

    Arduino programming language and the Arduino IDE are the most popular software development tools for the makers market, but it lacks some of the features found in professional tools like autocompletion and the ability to add breakpoints via a debugger, and that’s why the company announced its work on the Arduino Pro IDE in 2019. Work is now nearing completion with the release of the beta version of the Arduino IDE 2.0 based on the Eclipse Theia framework.

  • Host your website with dynamic content and a database on a Raspberry Pi | Opensource.com

    Raspberry Pi's single-board machines have set the mark for cheap, real-world computing. With its model 4, the Raspberry Pi can host web applications with a production-grade web server, a transactional database system, and dynamic content through scripting. This article explains the installation and configuration details with a full code example. Welcome to web applications hosted on a very lightweight computer.

    [...]

    The client could be a browser, a utility such as curl, or a hand-crafted program fluent in HTTP. Communications between the client and Nginx occur through HTTP, but then uwsgi takes over as a binary-transport protocol between Nginx and the application server, which interacts with request-handling code such as requestHandler.py (described below). This architecture delivers a clean division of labor. Nginx alone manages the client, and only the request-handling code interacts with the database. In turn, the application server separates the web server from the programmer-written code, which has a high-level API to read and write HTTP messages delivered over uwsgi.

    I'll examine these architectural pieces and cover the steps for installing, configuring, and using uwsgi and Nginx in the next sections.

  • François Marier: Creating a Kodi media PC using a Raspberry Pi 4

    Here's how I set up a media PC using Kodi (formerly XMBC) and a Raspberry Pi 4.

  • Make an animated sign with Raspberry Pi Pico

Star Labs Adds Coreboot Open-Source Firmware Support to Their LabTop Mk IV Linux Laptop

Filed under
Hardware

After several months of development, Star Labs’ engineers finally managed to provide Coreboot support for owners of the Star LabTop Mk IV Linux laptop, providing them now only with an Open Source firmware, but also with a lightning-fast and more secure boot experience.

Formerly known as LinuxBIOS, Coreboot is a firmware platform designed to replace proprietary firmware in most computers. Coreboot is known to be a lightweight firmware that puts the user in full control of the hardw`are and is designed to perform only the minimum number of tasks necessary to load and run a modern Linux OS.

Read more

Refund of pre-installed Windows: Lenovo must pay 20,000 euros in damages

Filed under
GNU
Linux
Hardware
Microsoft

In a historic judgment in Italy, in a case initiated by FSFE supporter Luca Bonissi, Lenovo was ordered to pay 20,000 euros in damages for abusive behaviour in denying to refund the price of a pre-installed Windows licence. In a motivating gesture for the Free Software cause, Luca donated 15,000 euros to the FSFE.

We all know how frustrating it is to buy a brand new computer and realise that it comes with a pre-installed proprietary operating system. Some companies have adapted their unfair behaviour and established clearer procedures for consumers to obtain the refund for paid licences of software they do not want to use. However, some computer manufacturers like Lenovo still make it very hard for consumers, forcing them to assert their rights in expensive and exhausting lawsuits. This is the successful story of Luca Bonissi, an Italian developer and long-term FSFE supporter and volunteer, in his relentless quest for getting a Windows licence refund, and how Lenovo was ordered to pay 20,000 euros for its unlawful behaviour during the court proceedings.

Read more

Building a Retro Linux Gaming Computer - Part 1: Dumpster Diving

Filed under
GNU
Linux
Hardware
Gaming

Before I begin, I feel I should state that this project is just a bit of fun. The goal is not to build the most powerful retro gaming computer I can, or to engage in any kind of serious analysis or benchmarking. All I want to do is play around with old hardware and software, explore what could be done with Linux back in the day, and maybe learn a thing or two about how far we have come along the way.

Older computing hardware is getting harder and harder to find. What would have been given away just five or ten years ago can now often only be found on websites such as eBay for inflated prices and heavy shipping costs, at least for Canadian buyers like myself. So when I noticed an interesting looking beige box ready to be recycled at my local dump, I did not hesitate to rescue it in order to see what was inside.

Read more

Also: Joan Fons is hired to work on Godot's rendering

Open Hardware: Arduino IDE, Raspberry Pi Pico/CM4, and More

Filed under
Hardware
  • Announcing the Arduino IDE 2.0 (beta)

    The Arduino IDE is the well-known software we all use to program our boards. Its development started in 2005 based on the graphical interface of the Processing project and has never stopped since. During these years, countless hours of development by the Arduino team with the help of a vibrant community made the Arduino IDE the de facto standard for electronics prototyping. Thanks to an extensible framework based on modular board support packages, the IDE supports more than 1,000 official and non-official boards; it’s translated in 66 languages, mentioned by more than 3,000 books, and is still growing: during the last year, it was downloaded more than 39 millions of times. More than ever.

  • A neat way to add a reset button to Raspberry Pi Pico

    The Raspberry Pi Pico is a nice little board, but if you program in C language, you’d need to disconnect the micro USB cable each time you’d like to flash the UF2 firmware. That’s not convenient and could damage your board over time. The Raspberry Pi Foundation even decided to write a blog post explaining how to add a reset button to your Raspberry Pi Pico using a breadboard circuit.

  • Raspberry Pi CM4 Carrier Board comes with RS485/Modbus, CAN, 1-wire interfaces (Crowdfunding)

    Another day, another Raspberry Pi CM4 carrier board. Just like the TOFU carrier board, CM Hunter carrier board for Raspberry Pi CM4 targets industrial applications, but in a different way, as it focuses on industrial communication protocols with Galvanically-Isolated RS485/Modbus, 1-Wire, CAN 2.0B, and together with more common interfaces like Ethernet, HDMI, USB, etc…

    [...]

    The project will be open-source hardware with Eagle Schematic and PCB design files, custom libraries, BOM, part numbers, and custom Raspbian Image with all Python libraries and instructions released once the crowdfunding campaign is over.

    The Raspbian (Raspberry Pi OS) image comes with the FBCP driver for the display, and a demo user interface based on Python 3.7, PySide2 5.12, and QML 5.12 to showcase and control the Modbus, CAN, 1-Wire interfaces respectively using python-can, modbus_tk, and Pyownet open-source libraries, as well as the RTC and the relay.

  • 3.5-inch Atom x6000E embedded SBC features 3x GbE, 2x SATA, 6x USB, and more

    Several Elkhart Lake SBC’s integrate two Ethernet ports including Avalue ECM-EHL 3.5-inch SBC or Congatec Conga-PA7 Pico-ITX board with the former equipped with 2.5GbE and GbE ports, and the latter two GbE ports.

    But if your industrial project requires more Ethernet ports, iBase IB836 3.5-inch Atom x6000E embedded SBC offers three Gigabit Ethernet RJ45 ports, as well as two SATA ports, six USB interfaces, plus various display options, as well as M.2 and mPCIe expansion sockets.

Arduino Intro and Homebrew Hakko 907

Filed under
Hardware
  • What Are the Differences Between Raspberry Pi and Arduino?

    Arduino hails from Italy, and it’s said that it was named after a bar where the developers usually meet to discuss the board. The first Arduino was developed in 2005 and aimed to provide students at Interaction Design Institute Ivrea in Italy with an inexpensive microcontroller board. Its cost and simplicity also piqued the interests of hobbyists and professionals; it wasn’t long until it reached a wider community of makers. Many other varieties of Arduino boards have been created since then. In 2013, around 700,000 Arduino boards were already sold [1].

    Raspberry Pi was born seven years after Arduino when Eben Upton invented a low-cost, modular, the single-board computer that will help improve the programming skills of his students. Like Arduino, it soon reached a wider audience due to its cost and versatility. The first Raspberry Pi board cost only $35, far less expensive than the existing computer boards that usually cost five times higher. The small board got even smaller and cheaper after the Raspberry Pi Foundation created the Raspberry Pi Zero, the smallest Raspberry Pi board to date, which costs only $5. Raspberry Pi progressed rapidly that millions of boards were already created from the initial target of just 10,000 boards years after its first release.

  • Arduino Blog » Homebrew Hakko 907 digital soldering station

    If you want to upgrade your soldering setup without spending a lot of money, then be sure to check out Angelo AKA TechBuilder’s DIY Hakko 907 station.

    This low-cost device features an Arduino Nano to read the iron temperature via an LM358 op-amp, and regulates power to the handle and tip under PWM control using an IRFZ44N MOSFET. A potentiometer is implemented as a variable temperature knob, with the actual and preset temperature displayed on a 16×2 LCD screen, while an LED indicates whether the heating element is active.

Benchmarks at Phoronix and Phoronix Test Suite

Filed under
Hardware

  • Vulkan Ray-Tracing Along With Other New/Updated Benchmarks For February - Phoronix

    Below is a look at all of the updates now available via OpenBenchmarking.org for Phoronix Test Suite users or if simply wanting to go to the test profile pages to gauge the CPU/GPU performance in the different real-world workloads. All these updates are available to Phoronix Test Suite users automatically if on an Internet connection when the metadata automatically updates or by running phoronix-test-suite openbenchmarking-refresh to force refresh.

  • The Phoronix Test Suite Gains Vulkan Ray-Tracing Benchmarks

    The versatile Phoronix Test Suite, developed and used by the Linux news website Phoronix, has gained profiles for benchmarking Vulkan ray-tracing performance using two different benchmarks as well as the JPEG XL benchmarks. There's also updates to many of the existing tests as well as a new 10.2.2 release of the Phoronix Test Suite software.

    [...]

    Michael Larabel has also updated many existing benchmarks, including the ones for the commercial closed-source games Portal 2, Insurgency and Civilization VI, blender, the libavif AVIF image encoder, the dav1d AV1 video encoder, GROMACS (GROningen MAchine for Chemical Simulations), ParaView, V-RAY (commercial), Pennant (OpenMP benchmark), NWChem and the free software platform game DDraceNetwork.

Syndicate content

More in Tux Machines

Python: Security and NumPy 1.20 Release

  • Python Package Index nukes 3,653 malicious libraries uploaded soon after security shortcoming highlighted

    The Python Package Index, also known as PyPI, has removed 3,653 malicious packages uploaded days after a security weakness in the use of private and public registries was highlighted. Python developers use PyPI to add software libraries written by other developers in their own projects. Other programming languages implement similar package management systems, all of which demand some level of trust. Developers are often advised to review any code they import from an external library though that advice isn't always followed. Package management systems like npm, PyPI, and RubyGems have all had to remove subverted packages in recent years. Malware authors have found that if they can get their code included in popular libraries or applications, they get free distribution and trust they haven't earned. Last month, security researcher Alex Birsan demonstrated how easy it is to take advantage of these systems through a form of typosquatting that exploited the interplay between public and private package registries.

  • A pair of Python vulnerabilities [LWN.net]

    Two separate vulnerabilities led to the fast-tracked release of Python 3.9.2 and 3.8.8 on February 19, though source-only releases of 3.7.10 and 3.6.13 came a few days earlier. The vulnerabilities may be problematic for some Python users and workloads; one could potentially lead to remote code execution. The other is, arguably, not exactly a flaw in the Python standard library—it simply also follows an older standard—but it can lead to web cache poisoning attacks. [...] [Update: As pointed out in an email from Moritz Muehlenhoff, Python 2.7 actually is affected by this bug. He notes that python2 on Debian 10 ("Buster") is affected and has been updated. Also, Fedora has a fix in progress for its python2.7 package.]

  • NumPy 1.20 has been released

    NumPy is a Python library that adds an array data type to the language, along with providing operators appropriate to working on arrays and matrices. By wrapping fast Fortran and C numerical routines, NumPy allows Python programmers to write performant code in what is normally a relatively slow language. NumPy 1.20.0 was announced on January 30, in what its developers describe as the largest release in the history of the project. That makes for a good opportunity to show a little bit about what NumPy is, how to use it, and to describe what's new in the release. [...] NumPy adds a new data type to Python: the multidimensional ndarray. This a container, like a Python list, but with some crucial differences. A NumPy array is usually homogeneous; while the elements of a list can be of various types, an ndarray will, typically, only contain a single, simple type, such as integers, strings, or floats. However, these arrays can instead contain arbitrary Python objects (i.e. descendants of object). This means that the elements will, for simple data types, all occupy the same amount of space in memory. The elements of an ndarray are laid out contiguously in memory, whereas there is no such guarantee for a list. In this way, they are similar to Fortran arrays. These properties of NumPy arrays are essential for efficiency because the location of each element can be directly calculated. Beyond just adding efficient arrays, NumPy also overloads arithmetic operators to act element-wise on the arrays. This allows the Python programmer to express computations concisely, operating on arrays as units, in many cases avoiding the need to use loops. This does not turn Python into a full-blown array language such as APL, but adds to it a syntax similar to that incorporated into Fortran 90 for array operations.

4 Best Free and Open Source Graphical MPD Clients

MPD is a powerful server-side application for playing music. In a home environment, you can connect an MPD server to a Hi-Fi system, and control the server using a notebook or smartphone. You can, of course, play audio files on remote clients. MPD can be started system-wide or on a per-user basis. MPD runs in the background playing music from its playlist. Client programs communicate with MPD to manipulate playback, the playlist, and the database. The client–server model provides advantages over all-inclusive music players. Clients can communicate with the server remotely over an intranet or over the Internet. The server can be a headless computer located anywhere on a network. There’s graphical clients, console clients and web-based clients. To provide an insight into the quality of software that is available, we have compiled a list of 4 best graphical MPD clients. Hopefully, there will be something of interest here for anyone who wants to listen to their music collection via MPD. Here’s our recommendations. They are all free and open source goodness. Read more

LWN on Kernel: 5.12 Merge, Lockless Algorithms, and opy_file_range()

  • 5.12 Merge window, part 1 [LWN.net]

    The beginning of the 5.12 merge window was delayed as the result of severe weather in the US Pacific Northwest. Once Linus Torvalds got going, though, he wasted little time; as of this writing, just over 8,600 non-merge changesets have been pulled into the mainline repository for the 5.12 release — over a period of about two days. As one might imagine, that work contains a long list of significant changes.

  • An introduction to lockless algorithms [LWN.net]

    Low-level knowledge of the memory model is universally recognized as advanced material that can scare even the most seasoned kernel hackers; our editor wrote (in the July article) that "it takes a special kind of mind to really understand the memory model". It's been said that the Linux kernel memory model (and in particular Documentation/memory-barriers.txt) can be used to frighten small children, and the same is probably true of just the words "acquire" and "release". At the same time, mechanisms like RCU and seqlocks are in such widespread use in the kernel that almost every developer will sooner or later encounter fundamentally lockless programming interfaces. For this reason, it is a good idea to equip yourself with at least a basic understanding of lockless primitives. Throughout this series I will describe what acquire and release semantics are really about, and present five relatively simple patterns that alone can cover most uses of the primitives.

  • How useful should copy_file_range() be? [LWN.net]

    Its job is to copy len bytes of data from the file represented by fd_in to fd_out, observing the requested offsets at both ends. The flags argument must be zero. This call first appeared in the 4.5 release. Over time it turned out to have a number of unpleasant bugs, leading to a long series of fixes and some significant grumbling along the way. In 2019 Amir Goldstein fixed more issues and, in the process, removed a significant limitation: until then, copy_file_range() refused to copy between files that were not located on the same filesystem. After this patch was merged (for 5.3), it could copy between any two files, falling back on splice() for the cross-filesystem case. It appeared that copy_file_range() was finally settling into a solid and useful system call. Indeed, it seemed useful enough that the Go developers decided to use it for the io.Copy() function in their standard library. Then they ran into a problem: copy_file_range() will, when given a kernel-generated file as input, copy zero bytes of data and claim success. These files, which include files in /proc, tracefs, and a large range of other virtual filesystems, generally indicate a length of zero when queried with a system call like stat(). copy_file_range(), seeing that zero length, concludes that there is no data to copy and the job is already done; it then returns success. But there is actually data to be read from this kind of file, it just doesn't show in the advertised length of the file; the real length often cannot be known before the file is actually read. Before 5.3, the prohibition on cross-filesystem copies would have caused most such attempts to return an error code; afterward, they fail but appear to work. The kernel is happy, but some users can be surprisingly stubborn about actually wanting to copy the data they asked to be copied; they were rather less happy.

Banana Pi BPI-M2 Pro is a compact Amlogic S905X3 SBC

Banana Pi has already designed an Amlogic S905X3 SBC with Banana Pi BPI-M5 that closely follows Raspberry Pi 3 Model B form factor, but they’ve now unveiled a more compact model with Banana Pi BPI-M2 Pro that follow the design of the company’ earlier BPI-MP2+ SBC powered by the good old Allwinner H3 processor. BPI-M2 Pro comes with 2GB RAM, 16GB eMMC storage, HDMI video output, Gigabit Ethernet, Wifi & Bluetooth connectivity, as well as two USB 3.0 ports. Read more