Debugging external connections

If you have connected sensors for external bells, or switches, to the PC's serial port control signals, and they are not behaving properly - for example, a bell may not ring at all, or perhaps it rings normally for a while but then starts to ring on the downpull - then you may need to use Abel's debugging feature. This is called the Port Monitor, and displays information about every serial port control signal that Abel receives for external bells and switches that you have configured.

To turn on the Port Monitor, click on the View menu and then on Port Monitor, or click on the icon on the toolbar. The Port Monitor is displayed:

Note: the port monitor is only displayed if you have one or more external bells or switches configured, and at least one of your external bells or switches uses serial port control signals. The port monitor has no relevance to use of the Multi Bell Interface.

You can move the monitor around the screen by clicking on its title bar and dragging it to its new position. You can also change its size by dragging the corners, as with other windows. By default, it appears in the middle of the screen.

As each signal arrives at the serial ports, one line of numbers and letters appear in the port monitor. For example, there could be four lines for each time a bell rings, corresponding to on and off signals as each of two activators on the wheel pass the sensor. To diagnose problems with sensors, you usually ring only one bell at a time, because of the volume of data.

Each line has the format:

tttt ps ox


is the time in milliseconds since the last signal arrived. Check signals for the bell are arriving regularly, that there aren't gaps or extra signals.
is the serial port number, i.e. 1 means COM1, 2 means COM2 etc.
is the signal identifer. C means CTS, R means RLSD, D means DSR and I means RI. Check that only expected signals are arriving.
is either 0 or 1 depending on whether the signal is now low or high
May be absent. If present, it is either 'b', or 't'. If it is 'b', then this signal arrived within a few milliseconds of the last one, during the debounce period. Abel treats such signals as most probably due to switch 'bounce' and will ignore them. If it is 't', then it means Abel has stopped assuming this is a bouncy signal and has accepted its current value.

Bounces should be very rare. If you find you are getting lots of them, you may need to improve your sensors or connections. Abel provides a certain amount of debouncing (configurable between 20ms and 100ms - see Configuring bell sensors), but very bouncy signals can exceed this, causing unexpected ringing of bells. If increasing the debounce period doesn't cure this, you will need to improve your sensors.

See also:

  Connecting external bells
  Configuring Abel to use external bells
  Configuring Abel to use external switches