Mind Chasers Inc.

Developer Articles related to our work, open source, and Private Island


Architecture and Code Description for the Private Island System
A summary / concise reference of ECP5UM features and capabilities as applied to the Private Island project
A high level overview of the usage and configuration of the ECP5UM DCU (PCS/SERDES) for Private Island
We review the steps to use Git revision control with the Lattice Diamond IDE for ECP5 FPGA development on Windows 10.


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 and connections necessary to use both OpenOCD and an FTDI Mini-module as a JTAG debugger for a Kinetis K22 embedded on an FRDM-K22 board. Also, we build OpenOCD from source using the Git repo and run it on an Ubuntu 16.04 system.
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:

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...
Many sites are continuing to use third-party trackers (e.g., Google Analytics) on secure pages after you log in. This article discusses issues with this practice, ways to block third party trackers, and encourages you to ask your vendors and suppliers to disable tracking once you log in.
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.
A brief review of cloning, building, and debugging the master branch of the OpenSSL project along with stepping into the crypto library with GDB. More to come...,
We review some options and examples for use of tcpdump in network testing and probing.
Notes on switching from Ubuntu 16.04 maintained PostgreSQL 9.5 to release 10 built from source out of the official git repository. We remove the packaged version and configure & build the new version for development.
Use Python3 sockets to open and monitor a honey pot port to detect malicious activity on a network
A basic Python URL rewriter is developed and tested searching for both key words and expressions. The test configuration is also reviewed
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
Brief summary of configuring Linux Ubuntu 16.04 and gcc invocation for a simple OpenCV 3.2 video playback application
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.


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.

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)
BTC 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 will track its progress
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

previous month
next month