db_ran.ini       random_toolchanger
db_nonran.ini nonrandom_toolchanger

Each config starts with:
  tool numbers 10--19

A number of tools are set with identical
tool diameters to demonstrate tool selection
based on accrued tool time.

The config runs separate tasks to
  a) modify a tool parameter
  b) add/remove tool numbers

Usage (for db_nonran.ini):

1) In a terminal, start as
$ linuxcnc ./db_nonran.ini
F1 --------- Estop off
F2 --------- Machine On
Ctrl-Home -- Home All
R ---------- Run program

You can also experiment with MDI for the relevant
commands (TnM6, T0M6, G10L0, G10L1, G10L10, M61)

The default program runs a loop that a) loads tool
T10 and applies its offset (G43), b) displays the
zoffset, c) pauses, d) unloads the tool, e)
reloads the tool data.

The display will show different zoffsets at each
tool change since the tool data includes several
tools with the same diameter but different
zoffsets and the applied database rule selects the
tool with the minimum time usage.  Since the pause
time is nominally the same for each tool offered,
the database will select different tools for T10
with each reload.

To watch the tool data changes and tool usage time
accrual, use the following command  in a separate
terminal (source rip_environment for RIP builds):

$ watch -n 0.2 cat /tmp/db_nonran_file
or
$ watch -n 0.2 cat /tmp/db_ran_file

The M parameter in the /tmp/db_nonran_file
accounts for tool time measured in minutes

To get more information (stdout):

1) export DB_SHOW=
   show 'g' (get) command

2) export DB_DEBUG=
   show more database info
