Network Caller ID (NCID) is an open-source client/server network Caller ID (CID) package.[1]

Network Caller ID
Developer(s)John L. Chmielewski
Stable release
1.16 / April 11, 2024 (2024-04-11)
Written inC, Perl, Tcl, Unix Shell
Operating systemCross-platform
TypePlain Old Telephone Service (POTS) and Voice over Internet Protocol
LicenseGNU General Public License
Websitehttp://ncid.sourceforge.net/

NCID consists of a server called ncidd (short for NCID daemon), a universal client called ncid, and multiple client output modules and gateways. The server, ncidd, monitors either a modem, device or gateway for the CID data. The data is collected and sent, via TCP, to one or more connected clients.

Many devices, including smartphones, and services can detect caller ID information. An NCID gateway collects CID data from these other sources and passes it on to the main NCID server. From there the CID data is distributed to all connected clients, just like CID data collected from a traditional modem. One example of a non-modem device is a VoIP (Voice over IP) service that collects CID data as SIP packets. Another example is the Whozz Calling series of Ethernet Link devices that obtain CID information from multiple POTS (Plain old telephone service) lines.

NCID supports messages. Clients can send a one line message to all connected clients.

The client can also be used to push CID to other computers and devices with output modules.

Various clients are available on numerous platforms, including Android, iOS, Linux, macOS and Windows.[2]

Protocol

edit

The NCID protocol is simple, human-readable ASCII text consisting of field pairs—a field label and its field data—using the asterisk character as a delimiter.[3] Transmission between the NCID server and its clients is done via TCP/IP, usually over port 3333. Additional field pairs have been added as the NCID server has been enhanced with new features and support for more devices. Here is an example of the minimum of caller ID data.

CID:*DATE*09182012*TIME*1320*LINE*POTS*NMBR*4075551212*NAME*John on cell*

List of input sources

edit

Hardware that can supply caller ID data to the NCID server, either by the NCID server accessing the device directly (RS232 serial port or USB) or indirectly via NCID Gateways (scripts and programs included with the NCID package).

Modems

edit

[4] AT-compatible modems expect Telcos to send caller ID data as either Single Data Message Format (SDMF) or Multiple Data Message Format (MDMF). The modem then decodes the data stream into human readable text, which the NCID Server then parses. If a modem supports it, the NCID Server can also decode the raw SDMF or MDMF data stream.

Manufacturer Model Status NCID Features
Supported (Note A)
Type Country
Tested
Country
Code (AT+GCI?)
Chipset Manufacturer
(AT+FMI)
Chipset Query
Result (ATI3)
Chipset Firmware
Patch Version (AT-PV)
Vend:Prod
ID (if USB or PCI)
Notes Owner(s)
3Com Corp (U.S. Robotics) 3CP2976 (US) Partial CID, VOICE PCI US ERROR U.S. Robotics 56K Voice U.S. Robotics 56K Voice INT V5.20.1 12b9:1008 Use AT#CID=1. See also Note D.
Apple Jump Working CID, FAX Internal US B5 ERROR Motorola SM56 1.3.9 ERROR ATI4 gives "Apple Internal Modem" taa
Apple MA034Z/A Broken USB US B5 ERROR Motorola SM56 USB 1.5.10 ERROR 05ac:1401 ATI4 gives "Apple USB Modem". See also Note H. taa
Dell RD02-D400 Broken RING USB US ?? ERROR CX93001-EIS_V0.2002-V92 F10574 0572:1324 Reported broken here. See also Note G.
Dualcomm USB Adapter/Modem for Caller ID Display (old model) Working CID, FAX, VOICE USB US B5 Conexant (Rockwell) CX93001-EIS_V0.2002-V92 F1053 and F10539 0572:1329 taa
Dualcomm DCID-300 (newer model) buy Untested USB
Hiro HiRO H50113 V92 56K External USB Data Fax Dial Up Internet Modem don't buy Broken ?? USB US ?? ?? ?? ?? ?? Not recognized by Linux Ed
LB-LINK BL-UM03B buy Working CID, FAX, VOICE USB US B5 Conexant Systems (Rockwell), Inc CX93001-EIS_V0.2013-V92 0572:1340
MultiTech Systems MT5656ZDX-V Working CID, VOICE, FAX Serial, external US B5 ERROR ACF3_V2.000E-V90_P21_FSH
Phoebe CMV1456VQE FAX modem Working CID, FAX Serial, External US only ?? ?? ?? ??
Rosewill RNX-56USB Working CID, VOICE USB US B5 Conexant Systems (Rockwell) CX93001-EIS_V0.2002-V92 0572:1321 Some reports of no CID
Sewell SW-29644 Working CID, FAX, VOICE USB Italy B5 Conexant Systems (Rockwell) CX93001-EIS_V0.2013-V92 0572:1340 Working FAX and VOICE with AT+VCID=1 eikaff
Sewell SW-29644 buy Working CID, FAX, VOICE USB Canada B5/20 Conexant CX93001-EIS_V0.2013-V92 0000000000 0572:1340 Tested CID and VOICE hangup with AT+VCID=1 Ed
StarTech USB562KEMH Working CID, FAX, VOICE USB US B5 Conexant Systems (Rockwell) CX93001-EIS_V0.2002-V92 F10539 0572:1329 See Note F Ed
TrendNet TFM-561U Working CID, FAX, VOICE USB US B5 Conexant Systems (Rockwell) CX93001-EIS_V0.2002-V92 F1054D 0572:1329 See Note E
TRIXES TRIXES buy Broken RING USB UK B4 Conexant CX93001-EIS_V0.2002-V92 0572:1329 Reports RING, sometimes Caller ID. See also Note B.
U.S. Robotics 5637 (UK) buy Partial CID, VOICE USB UK ?? ?? U.S. Robotics 56K FAX USB V1.2.23 0baf:0303?? Use AT#CID=1. See also Note C.
U.S. Robotics 5637 (US) Partial CID, VOICE USB US ?? ?? U.S. Robotics 56K FAX USB V1.2.23 0baf:0303 Use AT#CID=1. See also Note C.
U.S. Robotics 5686E Working CID, FAX serial US ERROR Conexant CX93010? Use AT#CID=1. Reported working here
Zoom 3090 (US) Broken ? USB US ? ? ? ? 0803:3090 Windows only, softmodem
Zoom 3095 (UK) Working CID, FAX, VOICE USB UK B4 Conexant CX93001-EIS_V0.2002-V92 F105C7 0803:3095 Use AT+VCID=1. See also Note B.
Zoom 3095 (US) buy Working CID, FAX, VOICE USB US B5 Conexant CX93001-EIS_V0.2002-V92 F10572 0803:3095 See also Note B.
  • Note A: RING means ring only, no Caller ID, no hangup. CID means Caller ID and simple hangup. FAX and VOICE mean their respective hangup options. Unless otherwise noted, the presence of VOICE indicates the modem will use the default NumberDisconnected.rmd (raw modem file) distributed with NCID.
  • Note B(1): Zoom and TRIXES. Prior to NCID version 0.89, FAX hangup was not a configurable option, and two blog/forum posts (here and here) have patches to add FAX hangup. Starting with NCID version 0.89, FAX hangup is now a configurable option so the patches are no longer necessary. The NCID developers have been unable to contact the author at Murphy 101 Blog to have the blog updated.
  • Note B(2): Zoom 3095 USB modems appear to be particularly sensitive to power levels. A common reported symptom is having to unplug and re-plug the modem into the USB port to get it to work. A more detailed discussion can be found here.
  • Note C: US Robotics 5637. Tested with Fedora, Raspberry Pi and Ubuntu. Connected to the UK British Telecom and US caller id systems. FAX hangup will not hangup the line, will disconnect the modem and will abort ncidd. Several users report problems using this modem with the Raspberry Pi in particular.
  • Note D: 3Com 3CP2976. Linux utility lspci reports "04:01.0 Serial controller: 3Com Corp, Modem Division 56K FaxModem Model 5610 (rev 01)".
  • Note E: Works on several Linux distros. Confirmed to work on Raspberry Pi 3 running Ubuntu Mate and Pi 3-B Raspbian Jessie—but does not work if the Raspberry power supply can't do 2 amps
  • Note F: Works on several Linux distros. Curiously, StarTech says it has a Conexant CX93010 chip, but the one tested responds with CX93001.
  • Note G: CallerID intentionally disabled by vendor in EEPROM patch. CallerID can be reenabled in any CX93001-based modem via simple RAM patch after ATZ command: AT!4886=00 for Bell FSK countries, AT!4886=01 for V23 FSK (Japan), AT!4886=02 for ETSI FSK (France, Italy, Spain), AT!4886=03 for SIN227 (UK), AT!4886=05 for ETSI DTMF. Sometimes additionally AT!4892=FF may be required.
  • Note H: This modem was released October 12, 2005 and discontinued in September 2009. It does not work on any modern version of macOS or Linux.

NIETO

edit
  • Thomas Glembocki's entry [5] won Honorable Mention[6] in the 2007 Circuit Cellar Wiznet Ethernet design contest for his project NIETO: An NCID and NTP Client [7][8][9][10][11]

NCIDdisplay (A large homebrew LED display for NCID (Network Caller ID)

edit

[12] [13] [14] [15] [16] [17]

Consumer network routers with embedded NCID Server

edit
Manufacturer Model Supported NCID server version according to Manufacturer
Zyxel or Telekom Speedlink 5501 0.74 page 13
AVM Vodafone Easybox 602 screenshot on page 146 ?
AVM Vodafone Easybox 802 screenshot ?
AVM Vodafone Easybox 803 screenshot ?
AVM Vodafone Easybox 904 screenshot ?
AVM Vodafone Fritz!box ?

References

edit
  1. ^ Meyer, Gordon (2004). Smart Home Hacks: Tips & Tools for Automating Your House. "O'Reilly Media, Inc.". p. 117. ISBN 978-0-596-55386-9. Retrieved 29 July 2020.
  2. ^ "NCID Addons".
  3. ^ "Ncid Api".
  4. ^ "NCID User Manual".
  5. ^ Glembocki, Thomas (May 2008). "WIZnet iEthernet Design Contest 2007" (PDF). Circuit Cellar. p. 35. Retrieved 2020-08-03.
  6. ^ Glembocki, Thomas (May 2008). "NIETO: An NCID and NTP Client" (PDF). Circuit Cellar. p. 13. Retrieved 2020-08-03.
  7. ^ Glembocki, Thomas (May 2008). "WIZnet iEthernet Design Contest 2007" (PDF). Circuit Cellar. p. 35. Retrieved 2020-08-03.
  8. ^ "WIZnet Product Guide" (PDF). WIZnet. November 2008. p. 25. Retrieved 2020-08-03.
  9. ^ "WIZnet Product Guide" (PDF). WIZnet. Feb 2012. p. 30. Retrieved 2020-08-03.
  10. ^ "WIZnet iEthernet ::". wiznet.tistory.com. Archived from the original on 2008-04-05.
  11. ^ ncid.sourceforge.net/lcd.html
  12. ^ "Build a Network Caller ID LED Screen".
  13. ^ "NCIDdisplay".
  14. ^ "Build a Network Caller ID LED Screen".
  15. ^ "Build caller id led screen room house".
  16. ^ "Build a Network Caller ID LED Screen". 14 June 2014.
  17. ^ "Build a Network Caller ID LED Screen".
edit