-
Notifications
You must be signed in to change notification settings - Fork 0
/
readme.txt
127 lines (95 loc) · 5.65 KB
/
readme.txt
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
Lady Heather Version 4.0 (with Linux and macOS (OS/X) support)
To use this program on Linux, macOS, and FreeBSD:
1) Create a directory to install it in and switch to that directory.
2) Unzip the zip file into the directory
In the X11 distribution .ZIP file is a file "heathosx". This is a
pre-compiled executable for macOS (aka OS/X) (tested under El Capitan).
If you are using macOS install the XQuartz package from xquartz.org.
Note that you need to logout/login or restart your system after installing
XQuartz for it to work.
Then, from a terminal window:
unzip -q heatherx11.zip
cd heatherx11
mv heathosx heather
chmod +x heather
xattr -d com.apple.quarantine heather
Double-click the "heather" file to launch the program (depending upon your
system settings you might need to right-click it and select OPEN to allow it
to run)
If you don't rename the file, Heather will attempt to use "heathosx.cfg"
and "heathosx.cal" for its' configuration and calendar files. You could
also just rename those files.
3) Make sure you have the g++ compiler and libx11-dev packages installed:
sudo apt-get install g++
sudo apt-get install libx11-dev
For some Fedora Linux distros your may need to edit the makefile and
change "OS = g++" to "OS = gpp". Also the X11 development package is
called libX11-devel (with a capital 'X')
For macOS you will need to install the XQuartz package from XQuartz.org)
(note: their installer time remaining message is rather optimistic)
You will also need to install XCode from Apple (WARNING: it's HUGE).
If you use the "N" keyboard command to open the NANO text editor from
within Heather, you will need make sure that xterm is installed (Raspberry
Pi's don't have it installed by default).
sudo apt-get install xterm
4) Compile the code (the make file auto-detects Linux, macOS, and FreeBSD):
make clean
make
5) Edit the heather.cfg file to suit your needs. It sets the values of the
initial command line options to use. Place one command line option per
line, starting in column one. If a line does not start with a '/' or
a '-', the line is considered a comment. You can also use '@' lines in
a .cfg file to send what are normally keyboard only commands. All the '@'
lines are written to a temporary file which is then processed as a keyboard
.SCRipt file once Heather has finished initializing the hardware.
6) Run it:
./heather -1u (for ttyUSB0 serial input)
./heather -1a (for ttyACM0 serial input)
./heather -1 (for ttyS0 serial input)
./heather -id=device_name (for using a non-standard serial device name)
./heather -ip=addr:port (for internet connected server)
(macOS use /dev/tty.usbserial# for its USB serial port identifiers and
/dev/ttys# for hardware serial ports)
You can use a different digit for the -1 or -1u options if your are using
a different serial device.
Note: THE NUMBER THAT HEATHER USES FOR THE SERIAL DEVICE IS ONE GREATER THAN
THE OPERATING SYSTEM DEVICE DEVICE NUMBER. Sorry for the kludge... Heather
has its roots in Windows where com port numbers start from one and Heather
used port 0 to indicate that no serial port was to be used.
To run heather on Linux, the user must have access permissions
for the serial device. You can run Heather with sudo or
(much better idea) give the user access to the "dialout" group:
sudo usermod -a -G dialout user_name
You must reboot or log out and log back in for usermod to take effect.
You only need to run usermod once. Its setting is persistent between
boots. Some Linux distros use the "uucp" group instead of "dialout".
Under macOS, serial port device driver installers usually ask what users
to give serial port access permission to.
Known issues:
With some (older) Linux distros you may need to add a -lrt option to the
linker command in the makefile. This links in the the library for getting
and setting the system clock. Most distros have these functions in the
standard C library.
For the system clock setting functions to work, you need to have
root permissions. Since most Linux boxes have NTP running, you
probably should not be using the system time setting commands, anyway.
If you do a TS command from the keyboard, you should hear a beep (after a
few seconds) if the clock set command worked.
On macOS, if you go to full screen mode by clicking the maximize button,
clicking it again won't usually restore the window size to its previous
value. Also when resizing the window by dragging the lower right corner of
the window, make sure the mouse cursor has "caught up" with the window
corner before releasing the mouse button. Window resizing under XQuartz is
a bit laggy,
Beware of cheap Chinese USB-Serial converters. They often use iffy "clone"
chips that may not be compatible with standard Linux drivers. For example,
a lot of "CH3xxx" clones do not seem to let you set the baud rate under
Linux when using the drivers shipped with the Linux distro.
To use the TAPR TICC Arduino based time interval counter, your system will
need to have support for CDC ACM devices enabled. If your system does not
recognize the TAPR TICC USB port try:
sudo modprobe cdc_acm
to enable the CDC ACM driver. Also you will probably have to specify the
device id for Heather use. On my system I use the command line option:
/id=/dev/ttyACM0 -or-
/1a