Language Selection

English French German Italian Portuguese Spanish

Login

Enter your Tux Machines username.
Enter the password that accompanies your username.

More in Tux Machines

Audiocasts/Shows: GamingOnLinux, The Linux Experiment and Coc Explorer

today's howtos

Hardware Targeting GNU/Linux

  • Kontron unveils Tiger Lake Type 6 module and SBCs

    Kontron announced a Linux-friendly “COMe-cTL6” COM Express Compact Type 6 module and “VX3060” VPX blade with Intel’s 11th Gen Tiger Lake CPUs. A 3.5-inch SBC is in the works.

  •  
  • No cost, license- and royalty-free graphics toolkit for Linux GUI design

    GUI toolkit for Linux from Microchip Technology enhances 32bit microprocessor capabilities for low- and mid-range- resolution graphical displays Graphical user interfaces (GUIs) and interactive touchscreen displays provide intuitive user experiences in applications from robotic and machine controls to medical user interfaces, automotive instrumentation and home and building automation systems.

  •  
  • Vizy AI camera runs Tensorflow, OpenCV, PyTorch on Raspberry Pi 4 (Crowdfunding)

    We previously covered Charmed Labs PIXY2 computer vision camera based on an NXP LPC4330 microcontrollers that worked with Arduino, Raspberry Pi, and other development boards. The company is now back with a fully integrated more powerful solution with Vizy AI camera featuring a Raspberry Pi 4 SBC with up to 8GB RAM.

  •   
  • SIOT-50 industrial IoT device Integrates ASUS Tinker Board S in rugged enclosure

    Stealth is a Canadian company that specializes in rugged displays, computers, and other ruggedized electronics for the industrial, defense, and marine markets. The company published a press release for a new rugged fanless mini PC equipped with a dedicated NVIDIA GeForce graphics card, and older Intel  6th and 7th Generation Core i5, i7 & Xeon processors.

  •  
  • IAR Systems facilitates building and testing of automotive applications in Linux-based environments for Renesas RH850 MCUs

    The growing complexity in embedded systems has accelerated the need for scalability and flexibility in today’s software development environments. This is especially true for the development of automotive embedded systems, where the Renesas RH850 MCUs are used. IAR Systems’ build tools for Linux streamlines the building and testing processes, making it possible for organizations to optimize resources when it comes to the time developers spend in their projects, as well as to manage and utilize licenses and servers in an optimal way. With the integrated static analysis tool C-STAT, developers can ensure code quality throughout the development and testing process. C-STAT proves code alignment with industry standards like MISRA C:2012, MISRA C++:2008 and MISRA C:2004, and also detects defects, bugs, and security vulnerabilities as defined by CERT C and the Common Weakness Enumeration (CWE).

  •  
  • Supporting a misbehaving NAND ECC engine

    Over the years, Bootlin has grown a significant expertise in U-Boot and Linux support for flash memory devices. Thanks to this expertise, we have recently been in charge of rewriting and upstreaming a driver for the Arasan NAND controller, which is used in a number of Xilinx Zynq SoCs. It turned out that supporting this NAND controller had some interesting challenges to handle its ECC engine peculiarities. In this blog post, we would like to give some background about ECC issues with NAND flash devices, and then dive into the specific issues that we encountered with the Arasan NAND controller, and how we solved them.

Python Programming

  • Multiple Selections in Wing Python IDE

    In this issue of Wing Tips we revisit how to use multiple concurrent selections in Wing's editor. These can be used to replace all occurrences of some text or to apply the same edits to any number of selections, for example surround them all with quotes or remove common surrounding characters. Multiple selections can be created from the keyboard, from the mouse, or by using commands that select all occurrences of some text found within a selected code.

  • Python 3.9 is around the corner

    Python 3.9.0rc2 was released on September 17, with the final version scheduled for October 5, roughly a year after the release of Python 3.8. Python 3.9 will come with new operators for dictionary unions, a new parser, two string operations meant to eliminate some longstanding confusion, as well as improved time-zone handling and type hinting. Developers may need to do some porting for code coming from Python 3.8 or earlier, as the new release has removed several previously-deprecated features still lingering from Python 2.7. Python 3.9 marks the start of a new release cadence. Up until now, Python has done releases on an 18-month cycle. Starting with Python 3.9, the language has shifted to an annual release cycle as defined by PEP 602 ("Annual Release Cycle for Python"). A table provided by the project shows how Python performance has changed in a number of areas since Python 3.4. It is interesting to note that Python 3.9 is worse than 3.8 on almost every benchmark in that table, though it does perform generally better than 3.7. That said, it is claimed that several Python constructs such as range, tuple, list, and dict will see improved performance in Python 3.9, though no specific performance benchmarks are given. The boost is credited to the language making more use of a fast-calling protocol for CPython that is described in PEP 590 ("Vectorcall: a fast calling protocol for CPython").

  • Tryton News: Newsletter October 2020

    We are now on the home straight leading up to the 5.8 release. However, there will be some more changes over the next few weeks.

  • Check Web App Security With Bandit - Building SaaS #74

    In this episode, I integrated the bandit static analysis tool to do automated security checking of my code before each commit. We talked about pre-commit and how to add in a new hook. After finishing that tool addition, we got deep into Django while removing some messages inserted by django-allauth on sign up. We began by talking about what the bandit tool does and how it works. Once I explained bandit, I focused on the bandit documentation to see how to add the tool. We found the pre-commit config hook in the bandit README docs.

  • Simple in-memory ChEMBL similarity search

    In the previous two essays I showed how to search chembl_27.fps to find records with similar fingerprints to a query fingerprint, then how to implement a nearest-neighbor search and replace Tanimoto similarity with cosine similarity. The final program took about 5 seconds. In this essay I'll show how to increase the search performance by shifting more of the work to a load step. This sort of precomputation can be useful if the load step is done once, with the extra overhead shared over multiple searches.