What has changed from ver. 06:
1. New control “TSerialSelector” - a combo box listing the serial ports.
2. New control “TSerialWatcher” - notifies when the presence of serial ports changes (plugged in/out, lost...)
3. New method (WMI) of listing the serial devices in Windows (the old one is also available). Is seems to return more reliable info for the devices.
4. New method of listing the serial devices in Linux (the old one is also available). Unlike the old one, it does not filter the busy devices.
5. Maybe it works better on Mac, no one seems to care.
6. TLazSerial: Custom baudrates are now available.
7. TLazSerial: Added event OnRemoved.
7. There is a new example in folder “Test1”.
Known issues:
1. “TSerialSelector” causes the Lazarus IDE to disappear sometimes when a serial device is plugged in/out. This behaviour was not observed in a standalone app. Something seems to go wrong when reading the windows registry... or I do not know, Lazarus likes to disappear quite often recently.
Possibly this is a Lazarus issue.
2. When Windows assigns the same COM number to more than one device, the friendly data is not retrieved properly. This should never happen, but Windows does it. Currently no intention to fix this issue.
Test scope:
1. Tested in Windows with all serial devices that I had around:
CH340G, PL2303 (Prolific), CP2102 (Silicon Labs), STM (Bluepill), FT232, GwInstek, Arduino Leonardo
2. Tested in Linux with CH340G and PL2303 (Prolific) on real HW and on more devices in a virtual machine.
Affected files from version 0.6:
1. lazsynaser.pas
2. lazserial.pas
3. The other changes are in newly added files.
Has anybody seen @Jurassic Pork recently?