Code, final versions, and information on the Sparkfun Graphical Datasheets

Overview

Graphical Datasheets

Code, final versions, and information on the SparkFun Graphical Datasheets.

Generated Cells Completed Graphical Datasheet
Generated Cells After Running Script Example Completed Graphical Datasheet

This repo includes the Python script used to help generate the graphical datasheets. It also includes the final .svg, and .pdf files as well as the .csv files use for development boards. The .csv files were used as a starting point and some text did change between the file and the final version. There is also a User Submitted folder for external contributions.

Setting Up and Running the Script via Notepad++

One method is to use Notepad++ to edit and a plug-in to run the script. Download and install Notepadd++ v7.7.1 on your computer. From Notepad++'s Plugins > Plugins Admin... menu, search for PyNPP plug-in and install. We used PyNPP v1.0.0. You may need to search online, download the plug-in, and manually install on Notepad++ from the Settings > Import > Import plug-in(s)... menu. This plug-in is optional if you want to run the script from Notepad++.

We'll assume that you have Python 2.7 installed. If you have not already, open up the command prompt. To check the version of Python, type the following to see if you are using Python 2 or Python 3. If you do not see Python 2, you will need to adjust your environment variables [i.e. System Properties > Environment Variables..., then System Variables > Path > Edit..., and add the location of your installed Python (in this case it was C:\Python27) to a field] to be able to use that specific version.

python --version

To manually install, download and unzip the svgwrite module (v1.2.0). In a command line, change the path to where ...\svgwrite folder is located and use the following command to install.

python setup.py install

Create a CSV of the pinout for your development board. You can also edit the CSV from any of the examples. For simplicity, copy the Pro Mini's file (...Graphical_Datasheets\Datasheets\ProMini\ProMini.csv ) and paste it in the same folder as the python script (...\Graphical_Datasheets). Open one of the tagscript.py scripts in Notepad++ and run the script from the menu: Plugins > PyNPP > Run File in Python.

A window will pop up requesting for the CSV file name. Enter the file name (like ProMini), it will output the SVG with the same name.

After running the script, open the SVG file in Inkscape (or Illustrator) with an image of your development board to align or adjust the pinouts! Feel free to adjust the script to format your cells based on your personal preferences. Have fun!

Setting Up and Running the Script via Command Line

You can use any text editor to edit the script. The following instructions do not require PyNPP. Additionally, it is an alternative method to install the svgwrite module and run the Python script via command line.

Again, we'll assume that you have Python 2.7 installed. If you have not already, open up the command prompt. To check the version of Python, type the following to see if you are using Python 2 or Python 3. If you do not see Python 2, you will need to adjust your environment variables [i.e. System Properties > Environment Variables..., then System Variables > Path > Edit..., and add the location of your installed Python (in this case it was C:\Python27) to a field] to be able to use that specific version.

python --version

Open a command prompt and use the following command to install the older version of svgwrite.

python -m pip install svgwrite==1.2.1

Create a CSV of the pinout for your development board. You can also edit the CSV from any of the examples. For simplicity, copy the Pro Mini's file (...Graphical_Datasheets\Datasheets\ProMini\ProMini.csv ) and paste it in the same folder as the python script (...\Graphical_Datasheets). Use the following command to execute the script.

python tagscript.py

A window will pop up requesting for the CSV file name. Enter the file name (like ProMini), it will output the SVG with the same name.

After running the script, open the SVG file in Inkscape (or Illustrator) with an image of your development board to align or adjust the pinouts! Feel free to adjust the script to format your cells based on your personal preferences. Have fun!

Required Software

Some software used to create graphical datasheets. At the time of writing, Python 2 was used to generate the cells. Note that support Python 2 has ended but the tools should still work if you are using archived versions of the plug-in and module. You may need to adjust the script to work with the latest NotePad++, NyPP plug-in, Python 3, and svgwrite versions.

  • Notepad++ v7.7.1 - Text editor to modify the Python script
    • PyNPP v1.0.0 - Optional plug-in to run Python Scripts
  • Python v2.7.13
    • svgwrite v1.2.0 - The script uses this version of svgwrite which is compatible with Python 2
  • Inkscape v0.92.4

Repository Contents

  • /Datasheets - CSV of pinouts and graphical datasheets for development boards
  • tagscript.py - Script to generate cells for graphical datasheets
  • tagscript_original-mshorter.py - Original script to individually modify each column attribute if necessary

Documentation

Owner
SparkFun Electronics
Building opensource widgets to make prototyping hardware easier since 2002.
SparkFun Electronics
Open Source Light Field Toolbox for Super-Resolution

BasicLFSR BasicLFSR is an open-source and easy-to-use Light Field (LF) image Super-Ressolution (SR) toolbox based on PyTorch, including a collection o

Squidward 50 Nov 18, 2022
Example scripts for the detection of lanes using the ultra fast lane detection model in ONNX.

Example scripts for the detection of lanes using the ultra fast lane detection model in ONNX.

Ibai Gorordo 35 Sep 07, 2022
Official Repsoitory for "Activate or Not: Learning Customized Activation." [CVPR 2021]

CVPR 2021 | Activate or Not: Learning Customized Activation. This repository contains the official Pytorch implementation of the paper Activate or Not

184 Dec 27, 2022
​TextWorld is a sandbox learning environment for the training and evaluation of reinforcement learning (RL) agents on text-based games.

TextWorld A text-based game generator and extensible sandbox learning environment for training and testing reinforcement learning (RL) agents. Also ch

Microsoft 983 Dec 23, 2022
PyTorch implementation of normalizing flow models

PyTorch implementation of normalizing flow models

Vincent Stimper 242 Jan 02, 2023
Use MATLAB to simulate the signal and extract features. Use PyTorch to build and train deep network to do spectrum sensing.

Deep-Learning-based-Spectrum-Sensing Use MATLAB to simulate the signal and extract features. Use PyTorch to build and train deep network to do spectru

10 Dec 14, 2022
RipsNet: a general architecture for fast and robust estimation of the persistent homology of point clouds

RipsNet: a general architecture for fast and robust estimation of the persistent homology of point clouds This repository contains the code asscoiated

Felix Hensel 14 Dec 12, 2022
Learning with Noisy Labels via Sparse Regularization, ICCV2021

Learning with Noisy Labels via Sparse Regularization This repository is the official implementation of [Learning with Noisy Labels via Sparse Regulari

Xiong Zhou 38 Oct 20, 2022
LeViT a Vision Transformer in ConvNet's Clothing for Faster Inference

LeViT: a Vision Transformer in ConvNet's Clothing for Faster Inference This repository contains PyTorch evaluation code, training code and pretrained

Facebook Research 504 Jan 02, 2023
Official Implementation of CVPR 2022 paper: "Mimicking the Oracle: An Initial Phase Decorrelation Approach for Class Incremental Learning"

(CVPR 2022) Mimicking the Oracle: An Initial Phase Decorrelation Approach for Class Incremental Learning ArXiv This repo contains Official Implementat

Yujun Shi 24 Nov 01, 2022
Trans-Encoder: Unsupervised sentence-pair modelling through self- and mutual-distillations

Trans-Encoder: Unsupervised sentence-pair modelling through self- and mutual-distillations Code repo for paper Trans-Encoder: Unsupervised sentence-pa

Amazon 101 Dec 29, 2022
Official implementation of "SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers"

SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers Figure 1: Performance of SegFormer-B0 to SegFormer-B5. Project page

NVIDIA Research Projects 1.4k Dec 31, 2022
PyTorch reimplementation of Diffusion Models

PyTorch pretrained Diffusion Models A PyTorch reimplementation of Denoising Diffusion Probabilistic Models with checkpoints converted from the author'

Patrick Esser 265 Jan 01, 2023
Yet Another Reinforcement Learning Tutorial

This repo contains self-contained RL implementations

Sungjoon 65 Dec 10, 2022
Official PyTorch Implementation of HELP: Hardware-adaptive Efficient Latency Prediction for NAS via Meta-Learning (NeurIPS 2021 Spotlight)

[NeurIPS 2021 Spotlight] HELP: Hardware-adaptive Efficient Latency Prediction for NAS via Meta-Learning [Paper] This is Official PyTorch implementatio

42 Nov 01, 2022
A 3D sparse LBM solver implemented using Taichi

taichi_LBM3D Background Taichi_LBM3D is a 3D lattice Boltzmann solver with Multi-Relaxation-Time collision scheme and sparse storage structure impleme

Jianhui Yang 121 Jan 06, 2023
[2021][ICCV][FSNet] Full-Duplex Strategy for Video Object Segmentation

Full-Duplex Strategy for Video Object Segmentation (ICCV, 2021) Authors: Ge-Peng Ji, Keren Fu, Zhe Wu, Deng-Ping Fan*, Jianbing Shen, & Ling Shao This

Daniel-Ji 55 Dec 22, 2022
Reinforcement-learning - Repository of the class assignment questions for the course on reinforcement learning

DSE 314/614: Reinforcement Learning This repository containing reinforcement lea

Manav Mishra 4 Apr 15, 2022
i-SpaSP: Structured Neural Pruning via Sparse Signal Recovery

i-SpaSP: Structured Neural Pruning via Sparse Signal Recovery This is a public code repository for the publication: i-SpaSP: Structured Neural Pruning

Cameron Ronald Wolfe 5 Nov 04, 2022