Igot my lazy ass to write some dox

This commit is contained in:
[ Kristjan Komloši HomePC ]
2017-06-18 17:13:26 +02:00
parent 7326a8b74b
commit 688f049b74
2 changed files with 34 additions and 22 deletions

View File

@@ -2,7 +2,7 @@
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
# 1\. Introduction to TinI/O # 1. Introduction to TinI/O
## 1.1 What is TinI/O? ## 1.1 What is TinI/O?
@@ -14,7 +14,7 @@ TinI/O (or tinio) is a program that makes Linux computers with USB GPIO-capable
- It runs as a standalone program that can be easily integrated into other programs via system() calls - It runs as a standalone program that can be easily integrated into other programs via system() calls
- It consumes almost none of the host computer's resources, because it never runs in the background - It consumes almost none of the host computer's resources, because it never runs in the background
- It's compatible with almost every Linux system that has USB, including the embedded and older ones - It's compatible with almost every Linux system that has USB, including the embedded and older ones
- It operates over USB 1.1 that make TinI/O compatible even with the oldest of USB-enabled computers - It operates over USB 1.1, which makes TinI/O compatible even with the oldest of USB-enabled computers
## 1.3 How does it work? ## 1.3 How does it work?
@@ -22,9 +22,9 @@ TinI/O can't provide GPIO by itself. Its capabilites rely on its chip companion
## 1.4 Under what license can it be used? ## 1.4 Under what license can it be used?
TinI/O is licensed under the GNU General Public License, which is publicly available at [<http://www.gnu.org/licenses/gpl.html>] and in the COPYING file in the `docs` directory in the project's root. TinI/O is licensed under the GNU General Public License, which is publicly available at <http://www.gnu.org/licenses/gpl.html> and in the COPYING file in the `docs` directory in the project's root.
# 2\. Installing # 2. Installing
## 2.1 What you should know ## 2.1 What you should know
@@ -38,7 +38,16 @@ TinI/O requires some quite basic system requirements, so before you proceed, mak
## 2.2 Manual build ## 2.2 Manual build
_This chapter explains how to build TinI/O manually. If you don't feel comfortable or don't want to build it manually, skip this chapter._ The TinI/O build process is pretty common. It's automated with a makefile, common to most *nix build processes. It has 4 build targets: | **Target** | **Description** | |:----------:|:----------------| | _default_ | The default target. Calls _utils_ and _tinio_ | _This chapter explains how to build TinI/O manually. If you don't feel comfortable or don't want to build it manually, skip this chapter._
The TinI/O build process is pretty common. It's automated with a makefile, common to most *nix build processes. It has 4 build targets:
| **Target** | **Description** |
| -----------| ----------------|
| _default_ | The default target. Calls _utils_ and _tinio_ targets. |
| _tinio_ | Builds main TinI/O program. |
| _utils_ | Builds the flasher utility. |
| _install_ | Installs TinI/O and the flasher utility to /usr/bin and the flash files to /usr/bin/tinio/flashes |
### 2.2.1 Building the Library ### 2.2.1 Building the Library
@@ -54,7 +63,7 @@ Because some people don't like manual binary building, TinI/O comes with the `au
The `autobuilder`-automated build process is simple. You just need to run the script, which will do a typical TinI/O instalation. The `autobuilder`-automated build process is simple. You just need to run the script, which will do a typical TinI/O instalation.
# 3\. After the installation # 3. After the installation
After the installation of TinI/O, you actually don't need to do anything at all with _it_. The next step is to prepare the actual device you'll be using TinI/O with. After the installation of TinI/O, you actually don't need to do anything at all with _it_. The next step is to prepare the actual device you'll be using TinI/O with.
@@ -67,9 +76,12 @@ Cypress CY7C65211 can be flashed only from Windows with a dedicated Cypress util
## 3.2 A little more detail on the flash files ## 3.2 A little more detail on the flash files
_Here is a detailed description of the flash files configurations for the curious and other developers. It contains a lot of technical details, that aren't particularly useful in a typical TinI/O use case. A stripped-down version of the table below can be found at the end of the previous chapter "3.1 Flashing the chips"_
TODO Make a big ol' able with them config's The flash files that are included with TinI/O don't have a Linux-compatible editor and therefore can't be tweaked to fit one's needs ideally. However, this can be done in a Windows environment using a dedicated program from Cypress. With it you can modify the chip's configuration without being limited to the premade flash files. However, some USB-related settings are and **have to be** the same regardless of the use case to ensure compatibility with TinI/O program.
Use case independent properties:
| Max. Current drawn from USB | 350mA |
## 3.3 Flashing with the `cy-config` utility ## 3.3 Flashing with the `cy-config` utility