Mind Chasers Inc.

Developer Articles related to open source, FPGA-based networking

Darsena / Hardware :

A quick start guide for working with Darsena, the Private Island development platform
Board Walkthrough and Circuit Description [DRAFT]
A review of configurations and connector choices for systems that are compatible with an Arduino form factor.
With the power of Arduino and the Darsena shield, take full control of your network and obtain unprecedented visibility with an open-source FPGA-based compute engine and dual Gigabit Ethernet.

FPGA :

We examine the fields within an Ethernet packet and discuss how they are processed by an open source FPGA network processor.
A description of the open source Verilog source for a SPI Slave implementation used on the Private Island Network Processor Project
A high level overview of the usage and configuration of the ECP5UM DCU (PCS/SERDES) for Private Island Open Source Project
Using the Serial Peripheral Interface (SPI) Bus on Private Island to access internal FPGA memory including Ethernet packets
Documentation of FPGA'S memory and register interface
Architecture and Code Description for the Private Island System
A summary and concise reference of ECP5UM features and capabilities as applied to the Private Island open source project
We review the steps to use Git revision control with the Lattice Diamond IDE for ECP5 FPGA development on Windows 10.

PHY / SGMII:

An examination and review of Ethernet Management Bus basics with the aid of oscilloscope screen shots
The Serial Gigabit Media Independent Interface (SGMII) is a popular Gigabit Ethernet PHY interface, and it holds various advantages over both GMII and RGMII. This article reviews some of the core SGMII concepts with the help of oscilloscope screen shots from our Rohde & Schwarz RTO1044.

Debug / OpenOCD / FTDI:

We review the steps necessary to use OpenOCD with Darsena on Linux. Also, we build OpenOCD from source using its Git repo and run it on an Ubuntu 16.04 system making use of an Eclipse-based IDE.
Example Python code is provided to perform basic remote operations with a Rohde and Schwarz RTO1044 Oscilloscope including waveform capture, display, and FFT.
Although a Lattice programming cable is relatively low cost, there is an even lower cost option available: FTDI FT2232H Mini Module. This tiny module is available for approximately $20 from distributors like Digi-Key and Mouser, and it can be used directly as a programming adapter for Lattice devices (and others) by following the setup described in this article.

System / Linux / Networking:

Article discusses using Python with sockets to create and deploy a honey pot for the purpose of detecting malicious activity on a network. A sample Python 3 script is provided.
A basic Python URL rewriter is developed and tested searching for both key words and expressions. The test configuration is also reviewed
We review some options and examples for use of tcpdump in network testing and probing.
A brief review of cloning, building, and debugging the master branch of the OpenSSL project along with stepping into the crypto library with GDB.
A Step-by-Step cookbook to install Apache and Django using WSGI on Ubuntu Linux
We review basic steps to clone, build, and configure PostgreSQL Release 11 on Ubuntu Linux 18.04. PostgreSQL is one of the most advanced and popular relational databases in the world. And best of all, it's open source.
This article reviews building a simple OpenCV 4 video playback application using the OpenCV Git repos on Ubuntu Linux 18.04.
Big Tech has had a long history of spying on us. It's in their DNA, and updated privacy policies aren't going to change a thing...
Configure a Linux host to act as a DHCP server and assign predefined IP addressees to the supported hosts on our network. Configuration and debug tips are provided for Ubuntu and Yocto systems.
For some Python packages, we prefer to work with the Git repos in the cloud, but there can be some issues in setting it up.
Bare metal / no-stack implementation of ICMP ECHO ( ping ) based on insight from the implementation of ping on Linux
Review of steps to create a local Git repo and clone it into a bare, centralized Git repo (git clone --bare)
Use Java to determine whether another host is present and responsive on a network. Two approaches are provided: low level and layer 4, connection oriented. The lower level approach will result in a ping if used with the right permissions.
Use asymmetric encryption ( public / private keys ) to automate logins to servers via ssh
Each working command and option presented during Pablo's talk is executed on a live Linux embedded system
A high level overview of a home or small business network utilizing a Linux server to perform functions such as filtering, reporting, intrusion detection, management, and segmentation.
Testing shows that Don't Track doesn't work. However, identifying tracking sites and blocking them does...
Squid is a proxy and caching server. Also, it works with content filters like SquidGuard to implement black lists that are used to block requests to undesirable web sites.
Brief writeup on mounting an ISO image locally without having to burn it to CD
Iptables enables you to block traffic entering, exiting, or being forwarded across your network. Iptables is extremely powerful, and with its power comes complexity. This article discusses its installation and use on an Ubuntu Linux 12.04 machine.

Yocto:

We show an example of the use of DNF package manager along with supporting notes with our Yocto-built t1040rdb development board.
Summary of steps used to install and boot embedded Linux image on an SSD. Image was built with Yocto Project using mainline Linux kernel and custom image.

Manufacturing:

BTC packages with thermal pads present a myriad of challenges. A recent approach to BTC PCB land pattern design is the use of an SMD Window. This article shows the construction of such a land pattern and results after reflow.
An analysis of pattern recognition's dependence on search window size and error minimization during a pick & place operation with a 7 mm2 QFN device is discussed.

Other / Miscellaneous:

USA Federal Government Resources applicable to Online Privacy and Security work including CVE databases.
Tables and a python script to make life a little easier in converting board designs to all metric (mm)
We review settings for configuring Eclipse CDT to work with Matlab Engine on Ubuntu Linux.
Review of recovering an Apple iPad Air from Activation Lock with the help of Apple.
We must stop trusting our private data to untrustworthy devices. This predicament requires us to call for fully open systems including its underlying hardware.
Review of how cloud based email accounts are being hacked and what you can do to prevent it
Discussion on why you shouldn't use the same username and password across the Internet and how to manage and keep secret a large set of unique usernames and passwords.

Your IP address is 54.226.36.60

previous month
next month
Su
Mo
Tu
Wd
Th
Fr
Sa
loading