Be gentle -- I'm still very much a UNIX newbie. In the past, I've successfully installed and run the NCID package on my CYGWIN machine, and now I'm moving my NCID server to an extra Mac running stock 10.6.8 that I have lying around.
When I installed the OS X 0.85 build of NCID, I can launch NCIDD in terminal, but once I launch NCID in terminal, I get a persistent:
"Connecting to 127.0.0.1:3333
127.0.0.1:3333 - error reading "sock6": connection refused"
So I tried the following command to pull up the list of PIDs and open network sockets, looking to see if NCIDD is even active, and I can't see it listed there.
"sudo lsof -i -P"
Even after perusing the NCIDD and NCID config files, and rebooting a few times, nothing. So I'm guessing there's something wrong with the NCIDD app or something unique with my Mac, but I'm at a loss to figure out what it is.
Any suggestions?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I should point out that I just tried this again on another Mac of mine (running 10.7) to see if its a repeatable issue when launching NCID, and I can confirm the same issue on the other machine.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Started: 12/28/2012 17:08:55
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
Created CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 17:08:55
Started: 12/28/2012 17:13:02
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 17:13:02
Started: 12/28/2012 18:28:00
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:28:00
Started: 12/28/2012 18:36:00
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:36:00
Started: 12/28/2012 18:46:00
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:46:00
Started: 12/28/2012 18:49:58
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:49:58
Started: 12/28/2012 18:57:24
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
--osx-launchd
--pidfile /var/run/ncidd.pid
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:57:24
Started: 12/28/2012 18:57:35
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
--osx-launchd
--pidfile /var/run/ncidd.pid
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:57:35
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hmm... from my looking over this log file, it would appear that the issue is related to:
/dev/cu.modem: No such file or directory
As an FYI, I did test the USB modem (Zoom model) beforehand within Apple's network preferences and using Null Modem and Terminal mode to successfully send AT commands to the device (RING, caller ID showed up, etc.). I also tried a 3rd party caller ID program just to see the results, and it too worked fine with the USB modem.
Last edit: headcase99 2012-12-29
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for posting the log -- this helps a great deal.
You're correct that the /dev/cu.modem line is the problem. That's the default device name for internal Mac modems. Your challenge is to determine the correct /dev/xxxx name for your USB Zoom modem and then put it in /usr/local/etc/ncid/ncidd.conf.
I don't know what you mean by Null Modem as that's usually a way to connect two non-USB serial devices together.
Here are three ways you might be able to determine the /dev/xxxx name:
I don't have a Zoom USB modem on my Mac, but since you mention that Apple's network preferences recognize it, try this: Click on the main Apple logo in the top left corner, and choose About this Mac->More Info->(you might have to choose System Report here)->Network->Modems. You're looking for something that starts with "/dev".
When you used Terminal mode, what program did you use to send the AT commands? Whatever device name you used for that is probably the same you'll want to use for NCID.
My Dualcomm USB modem isn't recognized by Apple's network preferences so here's what I do to find out the /dev/xxxx name. Start up Terminal and type the following:
ls -lrt /dev
This will give you a list of devices on your Mac, including the USB modem sorted by date, with the most recently used device being listed last. There are usually two similarly named /dev files for modems. Here's what my Mac shows:
crw-rw-rw- 1 root wheel 18, 0 Dec 15 21:47 /dev/tty.usbmodem24680241
crw-rw-rw- 1 root wheel 18, 1 Dec 15 21:47 /dev/cu.usbmodem24680241
If you have both a tty.something and a cu.something, the cu.something is what you'll want to put in ncidd.conf.
Once you know the /dev/xxxx name, type this in Terminal:
open -a TextEdit /usr/local/etc/ncid/ncidd.conf
Find the line that says:
set ttyport = /dev/cu.modem
and change it to the /dev/xxxx for your modem.
I'll be interested in knowing what /dev/xxxx you end up using in case someone else uses the Zoom USB modem.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hey Todd -- thanks for the great help -- that did the trick. I simply pulled up the list of active interfaces via the ls -lrt /dev command, and I replaced the cu.modem with the specific name for my external Zoom USB modem, which was cu.usbmodem24680241
Two other things worth pointing out, in order to get NCID working properly on OS X:
1) There's a framing issue in the existing GUI for NCID, which came up consistently in various Macs I tested, so I had to disable the GUI within the NCID.conf script (via changing from 0 to 1 on line 66) to get beyond that issue. Given that most folks will likely send their called ID data to another program (eg. NCIDpop) or other clients, perhaps it would make more sense to make the default no GUI, as folks can simply see within Terminal the output during setup when no GUI is set that way.
2) Also within NCID.conf, I believe that line 18 requires a slash at the end, for it to be a directory -- correct? Seemed to work for me once I added the slash.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hey Hardcase - can you expand on the framing issues you experienced with ncid using its GUI? Maybe you can email todd a screenshot showing it. His sourceforge email addresses can be used from your computer and will forward properly. You can also email it to me if you like.
The ncid client has some major changes for the next release and Todd can email you the current client snapshot and configuration file for testing and using in the GUI mode. Your help in making sure the new client GUI works properly on Macs would be welcome.
Line 17 (not 18) in ncid.conf does not require a slash at the end. Adding a slash at the end will not effect how it is used.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Glad you got the modem working. I'd be curious to know if your "About this Mac..." Hardware->USB->USB Modem shows the same info as my Dualcomm modem:
USB Modem:
Product ID: 0x1329
Vendor ID: 0x0572 (Conexant Systems, Inc.)
Version: 1.00
Serial Number: 24680246
Speed: Up to 12 Mb/sec
Manufacturer: Conexant
Location ID: 0x04100000 / 2
Current Available (mA): 500
Current Required (mA): 100
As John has said, more info about the framing issue would be very helpful (especially a screenshot) so we can be sure it is looked at before the next release. And, shortly I'll be sending you the latest work-in-progress code John is talking about.
In regards to the trailing slash for this line in ncid.conf:
set ProgDir "/usr/local/share/ncid"
Could you remove the extra slash you added, restart ncidd, and make sure it still works? As John said, it should not matter, so maybe there's some other issue happening.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Here's the framing issue when using the GUI, which happens on some of my Macs, but not all of them, when using the same external USB modem from Zoom. It was happening before I added any slash to the NCID config.
dad-macbookpro:~ headcasey$ sudo /usr/local/sbin/ncidd
dad-macbookpro:~ headcasey$ ncid & [1] 43146
dad-macbookpro:~ headcasey$ invalid command name "frame"
while executing
"frame .fr -borderwidth 2"
(procedure "makeWindow" line 4)
invoked from within
"makeWindow"
invoked from within
"if {!$NoGUI} {
if {$NoExit} {set ExitOn do_nothing}
makeWindow
}"
(file "/usr/local/bin/ncid" line 835)
Last edit: headcase99 2013-01-01
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I believe your problem is that you do not have tk installed. Type "wish" in a terminal window and see if you get a blank GUI window and a "%" prompt in the terminal window. You will probably get "command not found". Install tk and the ncid GUI should work OK.
"frame" is a tk command and you seem to be running tclsh. When ncid could not find "wish" it defaulted to "tclsh". This should probably be fixed.
The current snapshot of ncid you received is not the version that will be released. It needs more work and some menu items along with the font window will be changed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for posting your modem info. I would be curious to know where you purchased it?
As far as the "frame" error, this is very strange as I don't remember having to install tk on any of the Mac's I have access to for NCID testing.
It would be helpful if you could detail which versions of OS X are able to run ncid GUI, and those which are not. The architecture (PowerPC vs. Intel) would also be helpful. You can use the "About this Mac..." menu item.
I'm able to run it on 10.4 PowerPC, 10.5 PowerPC, 10.7 Intel and 10.8 Intel.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The ncid client should always be started by "PATH/ncid" since it uses the shell to start. The shell determines if it should exec "wish" or "tclsh with the ncid --no-gui" option on itself. The shell code prevents the error headcase got in my testing.
If you do not set "NoGUI" in ncid.conf and then "tclsh PATH/ncid", you get the same error message headcase got using any version of ncid up to version 0.85 (the current NCID release).
Last edit: John L. Chmielewski 2013-01-02
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
John, perhaps there's something different on Macs then. If I launch from Terminal, I don't think I've ever specified the full path to ncid and it has always worked for me. When I try launching with "ncid &" as Headcase's example shows, it works without the "frame" error.
(Headcase's example)
dad-macbookpro:~ headcasey$ sudo /usr/local/sbin/ncidd
dad-macbookpro:~ headcasey$ ncid &
[1] 43146
dad-macbookpro:~ headcasey$ invalid command name "frame"
while executing....
Headcase had written that he had changed "set NoGUI" to 1 in ncid.conf in order to prevent the "frame" error.
Headcase, can you confirm you're launching with "ncid &" on all the Macs you've tried this on?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Macs work as normal. "ncid" works because sh, tcl, and wish are in the path,
but "sh ncid" or "wish ncid" or "tcl ncid" will fail, you need to include
the path to ncid.
As I posted, the error comes about if you "tcl ncid" but only in the 0.85
version of ncid. The current snapshot will fail differently. It fails
as soon as tcl encounters a tk command. Frame is a tk command. Tk
executes tcl commands, but tcl does not executes tk commands. The purpose
of NoGUI is to keep tcl from trying to execute tk commands.
The error message from headcase says tclsh is executing, not wish so you
need to find out why. Ncid.sh detects if wish is on the system so if
it does not find wish, it executes "tclsh ncid --no-gui" so the error should
not happen. Have headcase execute "sh -x PATH/ncid" to see why wish
is not called. Here is mine:
It you look at the start of ncid.sh you will see strange lines. Comments
ending in "\" and a shell command following it. The shell ignores a "\"
at the end of the line so the next line is a command it will execute.
Tcl/tk honors the "\" at the end of the line so the command line following
the comment becomes part of the comment. That makes it possible to start
ncid using the shell and then have the shell exec wish or tclsh on the same
code.
On Thu, Jan 03, 2013 at 03:56:27PM +0000, Todd Andrews wrote:
John, perhaps there's something different on Macs then. If I launch from Terminal, I don't think I've ever specified the full path to ncid and it has always worked for me. When I try launching with "ncid &" as Headcase's example shows, it works without the "frame" error.
Be gentle -- I'm still very much a UNIX newbie. In the past, I've successfully installed and run the NCID package on my CYGWIN machine, and now I'm moving my NCID server to an extra Mac running stock 10.6.8 that I have lying around.
When I installed the OS X 0.85 build of NCID, I can launch NCIDD in terminal, but once I launch NCID in terminal, I get a persistent:
"Connecting to 127.0.0.1:3333
127.0.0.1:3333 - error reading "sock6": connection refused"
So I tried the following command to pull up the list of PIDs and open network sockets, looking to see if NCIDD is even active, and I can't see it listed there.
"sudo lsof -i -P"
Even after perusing the NCIDD and NCID config files, and rebooting a few times, nothing. So I'm guessing there's something wrong with the NCIDD app or something unique with my Mac, but I'm at a loss to figure out what it is.
Any suggestions?
I should point out that I just tried this again on another Mac of mine (running 10.7) to see if its a repeatable issue when launching NCID, and I can confirm the same issue on the other machine.
Hi Headcase,
Could you post the contents of /var/log/ncidd.log (or send to me by email tandrews@users.sf.net if you prefer)?
If you're getting "connection refused" =and= the PID is not showing that ncidd is running, this usually means ncidd had a problem starting up.
Started: 12/28/2012 17:08:55
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
Created CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 17:08:55
Started: 12/28/2012 17:13:02
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 17:13:02
Started: 12/28/2012 18:28:00
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:28:00
Started: 12/28/2012 18:36:00
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:36:00
Started: 12/28/2012 18:46:00
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:46:00
Started: 12/28/2012 18:49:58
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:49:58
Started: 12/28/2012 18:57:24
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
--osx-launchd
--pidfile /var/run/ncidd.pid
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:57:24
Started: 12/28/2012 18:57:35
Server: ncidd (NCID) 0.85
Command line: /usr/local/sbin/ncidd
--osx-launchd
--pidfile /var/run/ncidd.pid
Logfile: /var/log/ncidd.log
Processed config file: /usr/local/etc/ncid/ncidd.conf
Verbose level: 1
Configured to send 'cidlog' to clients.
Configured to send 'cidinfo' to clients.
Processed alias file: /usr/local/etc/ncid/ncidd.alias
Leading 1 from a call required in an alias definition
CID logfile: /var/log/cidcall.log
CID logfile maximum size: 110000 bytes
Data logfile not present: /var/log/ciddata.log
Telephone Line Identifier: -
/dev/cu.modem: No such file or directory
Terminated: 12/28/2012 18:57:35
Hmm... from my looking over this log file, it would appear that the issue is related to:
/dev/cu.modem: No such file or directory
As an FYI, I did test the USB modem (Zoom model) beforehand within Apple's network preferences and using Null Modem and Terminal mode to successfully send AT commands to the device (RING, caller ID showed up, etc.). I also tried a 3rd party caller ID program just to see the results, and it too worked fine with the USB modem.
Last edit: headcase99 2012-12-29
Thanks for posting the log -- this helps a great deal.
You're correct that the /dev/cu.modem line is the problem. That's the default device name for internal Mac modems. Your challenge is to determine the correct /dev/xxxx name for your USB Zoom modem and then put it in /usr/local/etc/ncid/ncidd.conf.
I don't know what you mean by Null Modem as that's usually a way to connect two non-USB serial devices together.
Here are three ways you might be able to determine the /dev/xxxx name:
I don't have a Zoom USB modem on my Mac, but since you mention that Apple's network preferences recognize it, try this: Click on the main Apple logo in the top left corner, and choose About this Mac->More Info->(you might have to choose System Report here)->Network->Modems. You're looking for something that starts with "/dev".
When you used Terminal mode, what program did you use to send the AT commands? Whatever device name you used for that is probably the same you'll want to use for NCID.
My Dualcomm USB modem isn't recognized by Apple's network preferences so here's what I do to find out the /dev/xxxx name. Start up Terminal and type the following:
This will give you a list of devices on your Mac, including the USB modem sorted by date, with the most recently used device being listed last. There are usually two similarly named /dev files for modems. Here's what my Mac shows:
If you have both a tty.something and a cu.something, the cu.something is what you'll want to put in ncidd.conf.
Once you know the /dev/xxxx name, type this in Terminal:
Find the line that says:
and change it to the /dev/xxxx for your modem.
I'll be interested in knowing what /dev/xxxx you end up using in case someone else uses the Zoom USB modem.
Hey Todd -- thanks for the great help -- that did the trick. I simply pulled up the list of active interfaces via the ls -lrt /dev command, and I replaced the cu.modem with the specific name for my external Zoom USB modem, which was cu.usbmodem24680241
Two other things worth pointing out, in order to get NCID working properly on OS X:
1) There's a framing issue in the existing GUI for NCID, which came up consistently in various Macs I tested, so I had to disable the GUI within the NCID.conf script (via changing from 0 to 1 on line 66) to get beyond that issue. Given that most folks will likely send their called ID data to another program (eg. NCIDpop) or other clients, perhaps it would make more sense to make the default no GUI, as folks can simply see within Terminal the output during setup when no GUI is set that way.
2) Also within NCID.conf, I believe that line 18 requires a slash at the end, for it to be a directory -- correct? Seemed to work for me once I added the slash.
Hey Hardcase - can you expand on the framing issues you experienced with ncid using its GUI? Maybe you can email todd a screenshot showing it. His sourceforge email addresses can be used from your computer and will forward properly. You can also email it to me if you like.
The ncid client has some major changes for the next release and Todd can email you the current client snapshot and configuration file for testing and using in the GUI mode. Your help in making sure the new client GUI works properly on Macs would be welcome.
Line 17 (not 18) in ncid.conf does not require a slash at the end. Adding a slash at the end will not effect how it is used.
Hi Headcase,
Glad you got the modem working. I'd be curious to know if your "About this Mac..." Hardware->USB->USB Modem shows the same info as my Dualcomm modem:
As John has said, more info about the framing issue would be very helpful (especially a screenshot) so we can be sure it is looked at before the next release. And, shortly I'll be sending you the latest work-in-progress code John is talking about.
In regards to the trailing slash for this line in ncid.conf:
Could you remove the extra slash you added, restart ncidd, and make sure it still works? As John said, it should not matter, so maybe there's some other issue happening.
Hi Headcase,
I uploaded the work-in-progress version of ncid.sh to your personal project page: https://sourceforge.net/u/headcase99/wiki/Home/
Ok - I'm glad to help out by doing some testing of the new code for you guys. I'll give it a try.
Here's the framing issue when using the GUI, which happens on some of my Macs, but not all of them, when using the same external USB modem from Zoom. It was happening before I added any slash to the NCID config.
dad-macbookpro:~ headcasey$ sudo /usr/local/sbin/ncidd
dad-macbookpro:~ headcasey$ ncid &
[1] 43146
dad-macbookpro:~ headcasey$ invalid command name "frame"
while executing
"frame .fr -borderwidth 2"
(procedure "makeWindow" line 4)
invoked from within
"makeWindow"
invoked from within
"if {!$NoGUI} {
if {$NoExit} {set ExitOn do_nothing}
makeWindow
}"
(file "/usr/local/bin/ncid" line 835)
Last edit: headcase99 2013-01-01
Here's a snapshot on my Zoom USB modem from the About My Mac app:
USB Modem:
Product ID: 0x3095
Vendor ID: 0x0803 (Zoom Telephonics, Inc.)
Version: 1.00
Serial Number: 24680246
Speed: Up to 12 Mb/sec
Manufacturer: Conexant
Location ID: 0xfa140000 / 6
Current Available (mA): 500
Current Required (mA): 100
I believe your problem is that you do not have tk installed. Type "wish" in a terminal window and see if you get a blank GUI window and a "%" prompt in the terminal window. You will probably get "command not found". Install tk and the ncid GUI should work OK.
"frame" is a tk command and you seem to be running tclsh. When ncid could not find "wish" it defaulted to "tclsh". This should probably be fixed.
The current snapshot of ncid you received is not the version that will be released. It needs more work and some menu items along with the font window will be changed.
Hi Headcase,
Thanks for posting your modem info. I would be curious to know where you purchased it?
As far as the "frame" error, this is very strange as I don't remember having to install tk on any of the Mac's I have access to for NCID testing.
It would be helpful if you could detail which versions of OS X are able to run ncid GUI, and those which are not. The architecture (PowerPC vs. Intel) would also be helpful. You can use the "About this Mac..." menu item.
I'm able to run it on 10.4 PowerPC, 10.5 PowerPC, 10.7 Intel and 10.8 Intel.
The ncid client should always be started by "PATH/ncid" since it uses the shell to start. The shell determines if it should exec "wish" or "tclsh with the ncid --no-gui" option on itself. The shell code prevents the error headcase got in my testing.
If you do not set "NoGUI" in ncid.conf and then "tclsh PATH/ncid", you get the same error message headcase got using any version of ncid up to version 0.85 (the current NCID release).
Last edit: John L. Chmielewski 2013-01-02
John, perhaps there's something different on Macs then. If I launch from Terminal, I don't think I've ever specified the full path to ncid and it has always worked for me. When I try launching with "ncid &" as Headcase's example shows, it works without the "frame" error.
Headcase had written that he had changed "set NoGUI" to 1 in ncid.conf in order to prevent the "frame" error.
Headcase, can you confirm you're launching with "ncid &" on all the Macs you've tried this on?
Macs work as normal. "ncid" works because sh, tcl, and wish are in the path,
but "sh ncid" or "wish ncid" or "tcl ncid" will fail, you need to include
the path to ncid.
As I posted, the error comes about if you "tcl ncid" but only in the 0.85
version of ncid. The current snapshot will fail differently. It fails
as soon as tcl encounters a tk command. Frame is a tk command. Tk
executes tcl commands, but tcl does not executes tk commands. The purpose
of NoGUI is to keep tcl from trying to execute tk commands.
The error message from headcase says tclsh is executing, not wish so you
need to find out why. Ncid.sh detects if wish is on the system so if
it does not find wish, it executes "tclsh ncid --no-gui" so the error should
not happen. Have headcase execute "sh -x PATH/ncid" to see why wish
is not called. Here is mine:
It you look at the start of ncid.sh you will see strange lines. Comments
ending in "\" and a shell command following it. The shell ignores a "\"
at the end of the line so the next line is a command it will execute.
Tcl/tk honors the "\" at the end of the line so the command line following
the comment becomes part of the comment. That makes it possible to start
ncid using the shell and then have the shell exec wish or tclsh on the same
code.
On Thu, Jan 03, 2013 at 03:56:27PM +0000, Todd Andrews wrote:
--
John
HEADCASE: On one of the Macs where you get the 'frame' error, type the following:
And post the results here.
For comparison purposes, here's what I get on my Mac running OS X 10.7.5 (Lion):