Saturday, February 14, 2015

CoolTerm 1.4.5

CoolTerm 1.4.5 is now available for download and includes some feature enhancements as well as bug fixes. Here is what's new:

NEW/CHANGED FEATURES:

  • Added new option to handle Form Feed (FF, ASCII code 12) characters. When enabled, the reception of a FF character will clear the receive buffer and thus clear the screen.
  • Added new option to handle End Of Text (EOT, ASCII code 4) characters. Enabling this feature will prevent the display from updating until a EOT character is received, at which time the display is updated with the contents from the receive buffer.
  • Added code to present the user with the option to select a serial port if a loaded settings file includes an empty string for the port name. This allows the creation of generic settings files. 
  • [MAC] Additional retina support.

BUG FIXES AND STABILITY IMRPOVEMENTS

  • Code improvement to avoid ThreadAccessingUIException

Tuesday, October 28, 2014

Books that mention CoolTerm

Did you know that there is a host of interesting books out there that mention CoolTerm? Here is a snapshot of what appears to be a growing list:
Rob Faludi was kind enough to send me a copy of his book to review a few years ago when it came out. It's a nice read and a good way to get hooked on XBee. I can also recommend Tom Igoe's book (to which Rob contributed as well), which I ended up buying for myself.
I obviously can't afford to buy all the books on this list, especially if it keeps growing as it has, but I would certainly like an opportunity to read them. So, if you're one of the authors of the books above and would like to make a contribution to the "CoolTerm Library" by donating a copy of your book (a signed copy would be nice :-)), I would appreciate it very much.

Sunday, September 21, 2014

CoolTerm 1.4.4


CoolTerm 1.4.4 is now available for download and includes a handful of feature enhancements as well as some bug fixes. Here is what's new:


NEW/CHANGED FEATURES:

  • Added feature that shows the path to the current capture file (if a capture is currently active) when the mouse is hovered over the serial port status label at the bottom left of the CoolTerm window.
  • changed Enter key emulation settings to use popup menu and added the option use a custom sequence to emulate the enter key.
  • Added additional font sizes to preferences dialog.
  • Added option to reduce the terminal refresh rate to once per second in order to reduce the CPU load on systems where power consumption is critical.
  • Added text the the built in help to explain that reducing the size of the receive buffer can be used to reduce CPU power consumption.
  • [MAC] Compiling for Cocoa from now on.
  • [MAC] Added basic retina support.

IMPROVEMENTS

  • CoolTerm now properly remembers the last used folders (individually) for opening connection settings, capturing to text files, as well as sending text files.
  • Added DEL character (ASCII 127) to the routine that handles BS characters in ASCII view.
  • optimized code to reduce CPU load while sending text files.
  • stability improvement to the code of the circular receive buffer.

BUG FIXES AND STABILITY IMRPOVEMENTS

  • fixed code that could cause extended ASCII characters to sometimes be incorrectly translated from hexadecimal format to plain text.

Monday, September 02, 2013

CoolTerm 1.4.3


CoolTerm 1.4.3 is now available for download and includes a handful of feature enhancements as well as some bug fixes. Here is what's new:


NEW/CHANGED FEATURES:
  • Added preference setting to select the date and time format used for timestamps. The user can select between the SQL Date/Time format (YYYY-MM-DD HH:MM:SS) or the format determined by the users local system settings.
  • Added options to choose the timestamp type and modified the code to fix an bug where the millisecond count and the Date/Time timestamp could get out of sync. It is now only possible to capture timestamps with millisecond resolution when selecting the relative timestamp format.

BUG FIXES AND STABILITY IMPROVEMENTS:
  • Made various stability improvements to the code that updates the GUI while data is being sent and received.

Sunday, February 17, 2013

CoolTerm 1.4.2

CoolTerm 1.4.2 is now available for download. It includes a number of improvements.

Here is what's new:

NEW/CHANGED FEATURES:
- Added options to set the initial state of RTS and DTR when the serial port opens. These options will only have an effect if the respective hardware flow control is not enabled.
- Changed the behavior of capturing received data to file when timestamps are enabled. Instead of appending a time stamp at every occurrence of CR and/or LF characters by default, it is now possible to specify the termination string at which to split the data. Furthermore, CoolTerm will now wait until the specified termination string is received until the data is captured to file.
- Added option to convert received data to hex before capturing to a capture file.
- Enabled the "Close Window" short cut for the "Send String" window.
- Added Alt+ENTER short cut for toggling between ASCII and Hex mode in "Send String"
- Added Connection/Reset menu item to provide a way to reset the port and unlock it if XOFF is active.
- Changed the behavior of the text file capturing with regards to the state of the port. It is now possible to start capturing before the port is opened. In addition, capturing is no longer stopped automatically when the port is closed. This allows for capturing to remain enabled even when the connection state of the port changes.
- Added code to allow canceling of a text file transmission in progress if XOFF is active.
- Added option to the connection settings (Misc. Options) to automatically close the serial port when the window is being closed without showing a warning if the port is still open.
- Updated the built-in help with information on all menu items.

BUG FIXES AND STABILITY IMPROVEMENTS:
- fixed bug that would cause a NilObjectException in the Xmit routine in cases where the serial port is still transmitting or is hung while the port goes out of scope. This hopefully fixes the crash bug some users have experienced on occasion.
- Fixed bug that caused the transmit line delay setting to not properly be saved to connection settings files.
- Made improvements to receive buffer code to avoid resource conflicts.
Windows only:
- Changed file association on windows to work even on systems where the current user may not have administrative privileges.

APPLESCRIPT:
- Changed AppleScript commands to use unique terminal window IDs instead of the names when addressing windows.
- Added the following AppleScript commands
- WindowCount as integer
- WindowID(Index as integer) as integer
- WindowName(index as integer) as String
- IndexOfWindowID(ID as integer) as integer
- NewWindow as integer
- Quit
- ResetPort(ID as integer)
- FlushPort(ID as integer)
- BytesLeftToSend(ID as integer) as integer
- LastErrorCode(ID as integer) as integer
- GetCTS(ID as integer) as boolean
- GetDSR(ID as integer) as boolean
- GetDCD(ID as integer) as boolean
- GetRI(ID as integer) as boolean
- CaptureStart(ID as integer, FilePath as string) as boolean
- CapturePause(ID as integer)
- CaptureResume(ID as integer)
- CaptureStop(ID as integer)
- SendTextFile(ID as integer, FilePath as string) as boolean
- SendBreak(ID as integer)
- SetDTR(ID as integer, Value as boolean)
- GetDTR(ID as integer) as boolean
- SetRTS(ID as integer, Value as boolean)
- GetRTS(ID as integer) as boolean
- Added code to suppress error messages when CoolTerm is controlled by an AppleScript.
- Updated AppleScriptReadme.txt to reflect latest changes.

NOTE TO MAC USERS:
Version 1.4.x will be the last release of CoolTerm compiled as Universal Binary. Starting at version 1.5.x, CoolTerm will only be deployed for Intel based Macs.

Monday, November 21, 2011

CoolTerm 1.4.1

CoolTerm 1.4.1 is now available for download. This is a bug fix release that fixes some bugs that have popped up since the release of version 1.4.0. 


Here are release notes:

- Improved handling of exceptions if preferences or connection settings can not be read or written.
- Checking serial port for nil in the transmit thread to avoid NilObjectException exceptions. Not clear if this fixes the issue a few users have seen.
- Improved exception handling when serial port adapters are added or removed from the system while CoolTerm is running.
- Fixed a bug in the circular receive buffer that could cause an OutOfBoundsException when reading data.
- Improved handing of OutOfMemoryExceptions when attempting to set the receive buffer size to a value larger than the amount of memory available on the user's system.

Monday, September 12, 2011

Update: CoolTerm 1.4.0

I'm happy to announce the release of CoolTerm 1.4.0. This is a major release which includes many new features and improvements.
NEW FEATURES:


  • New Connection options window with multiple pages.
  • The connection options now display port information for the selected port.
  • It is now possible to change baudrate, byte format settings, and flow control settings while the port is open.
  • Added the option to specify additional baud rates via a "baudrates.ini" file. E.g. any baud rates that are known to be supported by the hardware that are not listed in the popup menu in the connection settings dialog can be added to a "baudrate.ini" file that resides in the same directory as CoolTerm.
  • Added the option to specify additional serial ports via a "ports.ini" file. E.g. any devices such as /dev/tty.xxx devices on OSX and Linux that CoolTerm can not enumerate can be added to a "ports.ini" file that resides in the same directory as CoolTerm.
  • Added the option to add timestamps to data captured to text files.
  • Added a keyboard shortcut to connect/disconnect.
  • Added option to replace TAB key presses with a configurable number of spaces (default = 4).
  • Added option to enable/disable capturing of local echo of transmitted data in capture files.
  • Added an option to keep the capture file open while capturing is in progress (default) or close it after writing and re-opening when new data arrives. This allows other applications to read the capture file while capturing is in progress.
  • Added status LEDs for TX and RX to indicate activity related to sending and receiving data.
  • Added preferences option to disable all menu shortcuts (on Windows and Linux only) in order to allow sending CTRL characters via the terminal. On Mac, the keyboard shortcuts use the Command key and thus don't interfere with CTRL characters.
  • [MAC] AppleScript BETA: Added basic AppleScript handling for the most important terminal operations such as loading a settings file, opening/closing ports, and reading/writing data. The AppleScript functionality, while included in CoolTerm 1.4.0, is currently in public BETA , to allow a broader audience to beta test this feature and provide feedback. Refer to the attached "AppleScript ReadMe.txt" file for more details.
  • [LINUX] Making LINUX version (unsupported) available.


IMPROVEMENTS:
  • Made significant improvements to the code that processes received data, including changing architecture of the receive buffer to a circular buffer to improve efficiency and stability.
  • Made significant improvements to the code that transmits data, including changing the architecture of the data transmission to be more asynchronous in nature to improve the responsiveness of CoolTerm during transmission of large text files, particularly with XON/XOFF flow control enabled
  • CoolTerm now opens a progress window whenever the length of the text to be transmitted exceeds a certain threshold, and not only when text files are sent. 
  • Flow control settings are now displayed in the terminal window as part of the port configuration string. For XON/XOFF the state is displayed, i.e. XON or XOFF.
  • Added error messages to alert the user of errors that occur while attempting to open the serial port.
  • Added check to warn the user if multiple files are dropped onto the CoolTerm window.
  • "Send String" windows can now be resized.
  • It is now possible to send CTRL characters when the terminal is set to Line Mode.
  • Improved code for Line Mode to ensure that a pressed key is captured even if the command line didn't have the focus.
  • Changed behavior of the status LEDs to better reflect the state of the signals. A green LED turned on now means that a signal is "active", the LED turned off means that it is "inactive".
  • Changed the default state of DTR when a port is opened to "active" to conform with common practice, with the exception of Windows platforms when DTR flow control is enabled, in which case the default is "inactive" in order to avoid serial port errors.
  • Improved handling of file IO errors when sending textile or capturing received data to textiles.
  • Improved handling of file IO errors when reading and writing settings files.
  • Improved error reporting. Crash reports will now include information about all open terminals.
  • Slight change to the behavior during setting the break signal in that no characters are being read from the receive buffer. Received characters will be read after the break signal has been cleared.


BUG FIXES:
  • Fixed a bug that would show an error message when the user chooses cancel in the capture file save dialog.
  • Fixed a bug that threw an exception when opening the connection settings on a system without serial ports installed.
  • Fixed a bug the displayed an error message when the user cancelled out of the "Send Textfile" dialog.
  • [WIN] Fixed a bug where the removal of a serial port adapter could cause an exception when starting a connection.
  • [MAC] Implemented a workaround for a known RB bug where the baudrates 3600, 7200, 14400, and 28800 baud would not be set correctly and default to 57600 baud instead.

Tuesday, January 11, 2011

Update: CoolTerm v1.3.1






Improvements:
  • Added a preferences option to automatically check for updates at startup.
Fixes:
  • Fixed a bug that caused a StackOverFlowException when serial port devices were unexpectedly removed from the system, e.g. when a USB serial adapter was unplugged while the terminal was connected to that device. The error handling for this situation has been improved.
  • Fixed a bug that caused an OutOfBoundsException when a serial port device failure occurred during enumeration.
  • Fixed a bug that resulted in incorrect formatting of long crash reports.

Thursday, December 23, 2010

Update: BatchTouch v1.2.0


What's New:



New Features:
  • It is now possible to have default settings loaded at startup. If a default.bts settings file exists in the application folder of BatchTouch, it will be applied at startup.
  • It is now possible to specify date offset in days, months, and years.
  • It is now possible to enter values for date and time manually.
  • Added special function "Set Modification Dates to Creation Dates".
  • Added special function "Set Creation Dates to Modification Dates".
  • Added a menu item to save current settings as default settings.
  • Added an option to automatically check for updates at startup.
Improvements:
  • Improved calendar display.
  • Improved GUI help tag texts.
  • Improved exception handling and error reporting
  • Improved handling of command line arguments.
Fixes:
  • Fixed a bug that retrieved incorrect settings from the GUI.
  • Fixed a bug which would cause user defined time values to be overwritten after selecting a new date via the calendar display.

Friday, October 29, 2010

Update: CoolTerm v1.3.0


I'm happy to announce that CoolTerm v1.3.0 has finally been released today. Many thanks to all the beta testers for the helpful feedback! Here is what's new:


New features:
  • Added a transmit line delay option which adds a specified delay after certain characters such as new line characters (configurable).
  • Added a transmit character delay option (configurable).
  • Added a "Connection/Send Break" menu item for sending serial breaks.
  • Added the option to play a notification sound after a text file has been sent.
  • Added auto-connect feature.
  • Added the .hex file extension to the "Text Files" file type set (for the "Send Text File" dialog).
  • It is now possible to have default settings loaded at startup and when a new terminal window is opened. If a default.stc settings file exsists in the application folder of CoolTerm, it will be applied to new terminal windows.
  • Added a menu item to save current settings as default settings.
Improvements:
  • Pressing ENTER or RETURN in the connection settings dialog now envokes the "Ok" button, even if a textfield is currently selected.
  • Pressing ESC in the connection settings dialog now envokes the "Cancel" button, even if a textfield is currently selected.
  • Pressing Shift+ENTER or Shift+RETURN now invokes the "Send" button in "Send String" windows.
  • Improved handling of command line arguments.
  • The values for "Receive Buffer Size" and the character and line delays are now limited to a range from 0 to a maximum value (2,147,483,647 and 10,000, respectively).
  • When a "Send String" window is opened, the text field now receives focus automatically.
  • Improved exception handling and error reporting.
  • Improved behavior of the command history buffer and menu.
  • GUI improvements.
Fixes:
  • Fixed a bug that allowed opening multiple "Save As..." for the same Terminal window dialogs on Windows.
  • Fixed a bug that could cause a StackOverflow on serial port errors due to calling port.flush
  • Fixed bug that could cause a crash when sending empty strings via a "Send String" window.
  • (Win) Fixed issue that would allow the terminal window to be activated via the taskbar when the connection options window is open.
  • Several minor bug fixes.
Get it at http://freeware.the-meiers.org

Friday, April 09, 2010

Update: BatchTouch v1.1.0



What's new:


  • Made the file list wider and added columns for modification and creation date.
  • The new columns show the modification and creation dates of each item after they are added to the list and after they were changed by BatchTouch.
  • Added preferences Window.
  • Added option to preferences window to show/hide the date columns in the file list.
  • Added option to preferences window to disable warnings before changing dates.
  • Settings can now be saved and retrieved.
  • It is now possible to drop a file or folder onto the "New date:" group box to set the new date and time automatically to the modification date and time of the dropped item.
  • It is also possible to drag and drop an item from the file list to the "New date:" group box to set the new date and time automatically to the modification date and time of the dropped item.
  • Added a "Special" menu to provide access to special functions.
  • Added a "Set Folder Date to most recent content" special function. This option sets the modification date of all the folders to the modification date of the most recent item inside them. This is done recursively, from the bottom to the top of the file hierarchy.
  • Added special function for pre-dating all items to the oldest item in the list.
  • Added special function for post-dating all items to the newest item in the list.
  • Improved the calendar display in the "Set date and time" dialog. There now separate up/down arrows for month and year.

Tuesday, February 23, 2010

CoolTerm featured in The Mac Observer

The Mac Observer's "Monday's Mac Gadget" column, which "highlights a compelling piece of Mac software or hardware the editors think their readers would enjoy", features CoolTerm this week.

Friday, February 19, 2010

Freeware Update: Coolterm v1.2.0



What's new:

- Added "Line Mode" to the communication settings. In "Line Mode" a line of typed text will not be sent to the serial port until the Enter key is pressed.
- Added "History" which is available in "Line Mode" the up and down arrow keys can be used to select previously typed lines.
- Added a receive buffer size limit option.
- Added handling of the bell character (ASCII code 7), which can be enabled through the communication settings.
- It is now possible to open the communication settings and edit certain options while the serial port is open.
- The viewer mode (plain or hex) is now saved as parameter in connection settings files.
- The size and position of terminal windows is now saved with connection settings.
- Fixed bug that converted occurrences CR+CR+LF strings to single spaces on Windows.

Monday, February 01, 2010

Governor Schwarzenegger at the Mann Biomedical Park in Sylmar, CA

I saw Arnold today at work. Too bad my cell phone camera sucks.

The video is here:
http://gov.ca.gov/multimedia
Go to the event from 2/1/2010

There are some photos too:
http://gov.ca.gov/photos/14328

Friday, January 08, 2010

New Freeware App: BatchTouch


BatchTouch provides an easy-to-use way to change the creation and/or modification date of multiple files and folders all at once. It offers enough flexibility to the user to choose which type of items to change, whether or not to process the contents of folders, and whether to change the creation date, the modification date, or both. Furthermore, it is possible to change just the time, just the date, or both. It is possible to apply both absolute values as well as offsets to both date and time. I.e. it is possible to add/subtract a specified number of days, hours, minutes or seconds to/from the creation and modification date of any item.

Thursday, January 07, 2010

Not "free" as in "beer", but "free" as in "frustrating"

SparkFun is a great resource for geeks and hobbyists who want to get their geek on and build something cool. Just before Thanksgiving 2009, they announced "Free Day" to be held on January 7th, 2010, where everybody can get $100 worth of stuff for free, not to exceed $100,000 altogether. Very cool idea (in theory), and very generous. Not many companies give away 100k just for fun.

Like countless others, I loaded up my shopping cart way ahead of time, and got ready to pull the trigger to check out at exactly 10am MST and get my free stuff and be happy. However, this did not turn out as the good guys at SparkFun had planned. Even on "Free Eve", I noticed the website loading times increasing quite a bit, and the site started to become sluggish. I didn't think much of it at first, but a lot of people must have been loading up their shopping carts the night before.

Of course, when the big moment came, the website didn't load at all. In the 1 hour 45 minutes that "Free Day" lasted, I was able to load a page 3 times. I never even got to log on to my account. The server was hopelessly overloaded, and the whole event, although meant well, turned out to be an epic fail.

In the fine tradition of looking a gift horse in the mouth, numerous people started ranting on Twitter and other sites about the people at SparkFun and announcing that they will never buy from SparkFun again. I'm guessing that these are the same people that would not have bought anything anyway, and that they just showed up for free stuff, just to never return in the future. Get a grip!

What was very frustrating to me is that I never got a chance to see the gift horse because I couldn't even get in the barn (or even close to it). Towards the end it even felt like someone burned the whole barn to the ground. I don't have a problem with getting beaten fair and square, but I feel I never even got a fair shot. I knew there would only be 1,000 lucky winners at the end, but the whole game was skewed towards the people with faster bandwidth and shorter latency. While I really applaud SparkFun for their gesture, there are probably better ways to give away $100,000 worth of stuff.

I'm not upset with SparkFun at all, but in my opinion the whole debacle really sucked. However, I don't hold a grudge, and I will continue to buy from them, starting in the very near future, because I still really need the stuff I had on my shopping list.

Friday, September 11, 2009

High-Speed Robot Hand

This is really amazing!

Friday, August 21, 2009

Freeware Update: Album Enabler for Cooliris(R) v1.1.1

What's new:

  • Changed application name to "Album Enabler for Cooliris(R)" and changed icon to comply with trademark usage and restrictions.

Friday, August 14, 2009

Freeware Update: MathSheetGenerator v1.2.0

What's new:
  • Added support for writing math sheets as PDF files.

Monday, July 20, 2009

One-Armed Clock

The Dutch design house Sander Mulder is currently making waves on the internet with their Continue Time creation, a very cool implementation of an analog clock.

Watch the YouTube video to see it in action.