Mind Chasers Inc.
Mind Chasers Inc.

Open Source Network Security, Programming, and Hardware Design

Private Island / FPGA :

I2C Lab Exercise with Private Island, Open Source FPGA Network Processor using Reveal Inserter and Analyzer
A summary and concise reference of ECP5UM features and capabilities as applied to the Private Island open source project
Overview of the Private Island project for networking including highlights, goals, and a brief description of the development board.
Working towards a port of our open source networking project for the Lattice ECP5UM with Yosys on Ubuntu
We build the RISC-V software tools from their Git repositories and create & verify assembly instructions against the open source ISA specification for an RV32IM core.
We review use of Git with Lattice Diamond for ECP5 FPGA development on Windows 10 using the Private Island open-source network processor.
Architecture and Code Description for the Private Island Open Source, FPGA-based Network Processor
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
Use a Serial Peripheral Interface (SPI) Bus to access internal FPGA memory including Ethernet packets
A high level overview of the usage and configuration of the ECP5UM DCU (PCS/SERDES) for Private Island Open Source Project
Documentation of FPGA'S memory and register interface

Hardware / Darsena / Shields :

Gigabit data rate shields using standard 100-mil connectors for Arduino form-factor boards including Darsena. Our new SMA Shield design now released as open source.
An overview on our plans to offer M.2 shields for Darsena for WiFi and SSD expansion
This article describes the demonstration of an open source, FPGA-based Ethernet networking project shown at the Bay Area Maker Faire 2019 in Samtec's booth.
We review the design and PCB fabrication of our new GigE Ethernet Shield for our FPGA-based development board
A review of configurations and connector choices for systems that are compatible with an Arduino form factor.
Darsena FPGA Development Board for Open Source FPGA-Based Network Security Project
A quick start guide for working with Darsena, the Private Island development board for FPGA-based open source networking
A review of the Arduino UNO and MEGA Power Circuitry and PCB Layout
Take control of your network and obtain unprecedented visibility with this FPGA-based network processor and dual Gigabit Ethernet.

PHY / SGMII:

A review of Ethernet Management Bus basics, architecture, and design with the aid of oscilloscope screen shots for FPGA-based open source networking project
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 show how to build OpenOCD from source on Windows 10 using a Cygwin environment. The JTAG controller is an FTDI FT2232H on our Darsena development board for network security.
Example Python code is provided to perform basic remote operations with a Rohde and Schwarz RTO1044 Oscilloscope including waveform capture, display, and FFT.
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.
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:

Documenting how we build a Yocto Linux image from source on Ubuntu 18.04 with the NXP MCIMX8M-EVK for the i.MX 8MQuad processor.
Various Notes on Using and Managing a Linux System from the Command Line
A brief summary of getting started with cgit on Ubuntu Linux along with debugging a segfault we encountered
Various Notes and Examples for Using and Managing a Network from the Linux Command Line
This article reviews building a simple OpenCV 4 video playback application using the OpenCV Git repos with Ubuntu Linux 18.04.
We review basic steps to clone, build, and configure PostgreSQL Master Branch (12+) 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.
We show the steps to configure a proxy using macOS System Preferences Panel
A Step-by-Step cookbook to install Apache and Django using WSGI on Ubuntu Linux
Use public key authentication (asymmetric encryption) to automate your SSH login on LInux and macOS
A brief review of cloning, building, debugging, and experimenting with the master branch of the OpenSSL project. Includes stepping into the crypto library with GDB.
Article discusses a Python3 redirector for Squid for the purpose of filtering content. Example provides a starting point for developing a full content filter / ad blocker
Squid is a proxy and caching server. Also, it works with content filters to implement black lists that are used to block requests to undesirable web sites.
Configure a Linux host to act as a DHCP server and assign known IP addressees to the nodes on your network. Configuration and debug tips are provided for both Ubuntu 18.04 and Yocto systems.
We review some options and examples for use of tcpdump in network testing and probing.
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.
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.
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.
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.

Python:

A discussion and example of the use of Python3 and the http.server library to create a simple web server / framework / application for development and testing
We provide a simple Python script and examples to model and visualize square and triangle waves with applications to circuit design and test.

Privacy Related :

Federal Government Cybersecurity resources for Vulnerability Databases, Internet Crimes, Cyber Attacks by Foreign Governments, Legal Wire Tapping, and more.
Big Tech has had a long history of spying on us. It's in their DNA. If you have your doubts, then review this list of recent evidence.
We must stop trusting our private data to untrustworthy devices. This predicament requires us to call for fully open systems including its underlying hardware.
Testing shows that Don't Track doesn't work. However, identifying tracking sites and blocking them does...

Yocto:

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

Circuit Design:

We review issues that we have had with stencil design, paste transfer, and cleaning including a new stencil cleaning chemistry that we're using that is providing great results.
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.

Web Design:

Brief review of the use of the Javascript undefined and null primitives using the Debugger Console and ad blocking as an example
Using a script embedded in the page and the developer console, we review the use of objects, prototypes, and constructors to achieve inheritance.
Here's a way to have multiple HTML buttons call discrete functions on a Web Server with a single Javascript handler. We also show how to handle the call when using the Django Web framework.

Other / Miscellaneous:

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.
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 18.210.22.132

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