Skip to content

Instantly share code, notes, and snippets.

View ahogen's full-sized avatar

Alex H ahogen

View GitHub Profile
@ahogen
ahogen / putty_uart_rpi3.sh
Last active August 2, 2017 21:25
Launch PuTTY in UART mode with Raspberry Pi 3 default serial settings. Also set up a realistic text size for PuTTY. By default, it was ultra-tiny on my Linux Mint machine, so we change the font to a normal 12pt font. I figure most people should have the Ubuntu Mono font, so this should work well.
#! /bin/bash
###############################################################################
# File: putty_uart_rpi3.sh
# Author: Alexander Hogen (https://github.com/ahogen)
#
# This script assumes you have added your user to the appropriate group(s)
# to access serial devices without sudo access. The "dialout" group comes
# to mind... To add yourself to "dialout", run the following command...
#
@ahogen
ahogen / xTIMEcomposer_code_under_version_control.md
Last active March 8, 2018 12:39
A tutorial describing how to keep code and Eclipse workspace metadata separate.

xTIMEcomposer Code Under Version Control


Intro

Do you need to keep your code under source/revision control with a solution like Git, Subversion (SVN), Mercurial? Are you using an Eclipse-based IDE like xTIMEcomposer (XMOS) or Code Composer Studio (Texas Instruments) and hate all the /.metadata junk that should stay far away from your precous code?

That's exactly what I wanted. I literally wanted just my code sitting under version control (SVN in my case) and I needed to be able to pull and build that code on multiple machines. Putting your entire workspace folder under version control is a really bad idea (I tried it) because it's got a bunch of junk created by Eclipse that you never wanted. It also isn't portable. Making a pull on a new machine results in a bunch of Eclipse errors.

This was my answer to my own question I posted/asked on the XMOS forums. The original post is here. I d

@ahogen
ahogen / build_avdecc_lib.sh
Last active August 2, 2017 21:22
Download and build the AVB/TSN controller utility from Avnu Alliance (https://github.com/AVnu/avdecc-lib). Tested on Ubuntu 16.04.
#!/bin/bash
###############################################################################
# File: build_avdecc_lib.sh
# Author: Alex Hogen (@ahogen on Github)
#
# Download and build the AVB/TSN controller utility from Avnu Alliance
# (https://github.com/AVnu/avdecc-lib). Tested on Ubuntu 16.04.
###############################################################################
echo "Is the current directory where you want to download and compile avdecc-lib?"
@ahogen
ahogen / julia_async_tasks_semaphore_demo.jl
Last active August 2, 2017 21:21
A [Julia](https://julialang.org/) script, demonstrating the use of a semaphore to protect asyncronous data accesses.
###############################################################################
# File: julia_async_tasks_semaphore_demo.jl
# Author: Alex Hogen (@ahogen on Github)
#
# This is a demo script I made for myself just to see how Julia's
# syntax for semaphores looks. This script is a basic demonstration
# of a producer and consumer task using a semaphore to protect the
# code sections where the global data variable is accessed.
#
# I built and ran this script with Julia 0.6.0.

Just wanted to make a note that I'm running Linux Mint 18.1 (Mate desktop) in VirtualBox with xTIMEcomposer 14.3.0 and I was able to get the xTAG drivers working by simply running the provided driver install script. My Google searches only turned up results like the "Enable USB drivers on Linux" article, which is old. The solution listed there by XMOS does probably work for xTAG 2 devices, however, all of the new xTAG devices from XMOS are not shown in that tutorial, but are included in the new distrobution of xTIMEcomposer. For that reason, and the fact that it's probably just a better idea to use the tools that come with

@ahogen
ahogen / julia_busy_dots.jl
Last active November 12, 2017 02:27
Julia busy indicator with ADCII dots
###############################################################################
# File: julia_busy_dots.jl
# Author: Alex Hogen (@ahogen on Github)
#
# Print a little busy/waiting indicator to the screen.
#
# Start:
# $ julia julia_busy_dots.jl
# Stop:
# $ Ctrl+C
#!/bin/bash
###############################################################################
# Installs "libftdi" and its dependancies for Ubuntu 12.04/14.0.4 variants of
# Linux.
#
# This is just a copy of the Adafruit script in their tutorial. Go check them
# out over here:
# https://learn.adafruit.com/adafruit-ft232h-breakout/linux-setup
###############################################################################
#!/bin/bash
###############################################################################
# File: pull_all_git_branches.sh
# Author: Alex Hogen (@ahogen on Github)
#
# Iterate through all cloned git repositories in this directory and update
# (pull) all their branches to sync with their remote counterparts.
#
# In diagram below, if this script is executed from <this dir>, then all repositories
@ahogen
ahogen / wireshark-avb-capture.md
Created September 5, 2017 21:20
Commands to start Wireshark captures for AVB packets

Simple AVDECC (1722.1) only capture on selected interface.

tshark -f "ether proto 0x22f0" -i "AVB NIC" -w outfile.pcap