summaryrefslogtreecommitdiff
path: root/ao-tools/ao-bitbang/ao-bitbang.1
blob: 4bf2949b450cfe99b5dc221db767c2056fb613d3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
.\"
.\" Copyright © 2009 Keith Packard <keithp@keithp.com>
.\"
.\" This program is free software; you can redistribute it and/or modify
.\" it under the terms of the GNU General Public License as published by
.\" the Free Software Foundation; either version 2 of the License, or
.\" (at your option) any later version.
.\"
.\" This program is distributed in the hope that it will be useful, but
.\" WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
.\" General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public License along
.\" with this program; if not, write to the Free Software Foundation, Inc.,
.\" 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
.\"
.\"
.TH AO-BITBANG 1 "ao-bitbang" ""
.SH NAME
ao-bitbang \- Low-level cc1111 interface diagnostic tool
.SH SYNOPSIS
.B "ao-bitbang"
.SH DESCRIPTION
.I ao-bitbang
connects through a CP2103 usb-to-serial converter and uses the GPIO
pins to communicate with the debug port on a cc1111 device. It
provides raw access to the debug pins to help debug the lowest level
communication path.
.SH USAGE
.I ao-bitbang
reads a sequence of bit manipulations from stdin, sends them to the
device and reports status on stdout.
.P
Each line on stdin should contain a single letter command for each of
the three debug lines on the cc1111 -- clock, data and reset. Each bit
can be in one of three states -- on (C, D or R), off (.) or tri-state
(-) for input. Empty lines, or lines starting with '#' are
ignored. Anything beyond the last bit in a line is also ignored. The
bits must be listed in the correct order, and the 'on' values must
match the desired bit.
.SH EXAMPLE
.IP "Reset the target device"
.nf
 # reset
 C D R
 C D R
 C D R
 C D R
.fi
.IP "Get Chip ID"
.nf
 #
 # Debug mode - drive RESET_N low for two clock cycles
 #
 C D R
 . D .
 C D .
 . D .
 C D .
 . D R

 #
 # GET_CHIP_ID

 C . R	0
 . . R
 C D R	1
 . D R
 C D R	1
 . D R
 C . R	0
 . . R

 C D R	1
 . D R
 C . R	0
 . . R
 C . R	0
 . . R
 C . R	0
 . . R

 #
 # start reading again
 #

 C D R
 . - R
 C - R
 . - R
 C - R
 . - R
 C - R
 . - R

 C - R
 . - R
 C - R
 . - R
 C - R
 . - R
 C - R
 . - R

 C - R
 . - R
 C - R
 . - R
 C - R
 . - R
 C - R
 . - R

 C - R
 . - R
 C - R
 . - R
 C - R
 . - R
 C - R
 . - R

 C D R
.fi
.SH AUTHOR
Keith Packard