Jeffrey Worley Posted August 31, 2019 Share Posted August 31, 2019 Earlier this week I got my Lantronix UDS1100. It promises to accept modem commands, but it doesn't respond at all to any AT command I give it. This means it won't work for my bbs. I've contacted Lantronix and they haven't been much in the way of help. I can connect to the UDS1100 by telnet -- so can you actually, telnet to techccs.net 10001 and you will be typing chars on my terminal screen in Bobterm at 9600 baud. I can enter the setup from the Atari by powering the UDS1100 and at the appropriate moment entering the xxx escape sequence to put it into monitor mode for configuration. I can also configure it via the application or by the web server the uds1100 has. So the thing works fine, it just doesn't act like a modem. Does anyone have experience with this thing and a bbs on the Atari? I just want to be able to enter "ATH" and have it say "no carrier", "ata" and it say "connect 9600" or just "connect" would be ok. Since I plan to use Carina, the responses I need can be tailored to whatever the thing produces, but right now that is nothing. It silently connects via telnet and starts passing chars. If the USER on the other end of the telnet connection were to type "RING" and then "Connect 9600", the bbs would know what to do, but that is not going to work. I need the Lantronix to act like a modem on the serial line. Any help would be appreciated. BTW, we have a hurricane coming, so for the next few days connectivity may be flaky. ** TNM ** Quote Link to comment Share on other sites More sharing options...
Marius Posted August 31, 2019 Share Posted August 31, 2019 For me it has been a VERY long time since I worked with the UDS series. I remember the Lantronix can operate in two ways. Menu driven over telnet, and in modem-emulation mode. It does -in a very very limited way- act/respond like a modem. From what I remember with BBS Express PRO!fessional (the one I used) ... it needed a slightly modified Waitcal. (That was the Program/CMD that was running all the time, waiting for callers). Out of the box, it almost worked, except for the fact that users had to hit enter/return several times (while they did not know or were aware they should do that). Later I got myself the Lantronix MSS100 (or something like that?) and that one worked slightly better. It needed a nullmodem (female/female) cable instead of a regular male/female rs232 cable. the best way of testing this is running Bobterm (or equal) program on your atari side, and connect to it from a PC/Mac using telnet. And see how the UDS responds in Bobterm. I can not help you much further at this moment. Perhaps later (not sure when). I do only have experience with UDS10 and with MSS100, and with BBS Pro!fessional. You might want to contact Stephen J. Carden. He is a true expert, and author of a lot of the BBS Pro! Stuff. It is a nice guy, and knows literally EVERYTHING about BBS-ing on atari 8bit. Quote Link to comment Share on other sites More sharing options...
+DrVenkman Posted August 31, 2019 Share Posted August 31, 2019 3 hours ago, Marius said: Later I got myself the Lantronix MSS100 (or something like that?) and that one worked slightly better. It needed a nullmodem (female/female) cable instead of a regular male/female rs232 cable. I can’t address much of the original poster’s issues, but I use an MSS100 through my P:R:Connection for connecting to Telnet-like services online. It requires a 9-pin to 25-pin cable Atari “Terminal Cable” to connect the 9-pin R1: RS232 port on the P:R:Connection and the 25-pin RS232 connector on the MSS100. It *does* also require a 25-pin female-female gender changer on that end of the cable. Having said that, last I checked a couple years back, the Lantronix site still had PDF manuals for all its old late-90s/early 00’s Ethernet/serial devices like these still archived. The MSS100 manual has a whole section on how to enable modem emulator, which commands are supported, etc. Might be worth a try to try to find that manual, reset the UDS to factory defaults and see if working from the steps outlined in the manual gets things working as expected. Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted August 31, 2019 Author Share Posted August 31, 2019 (edited) 22 minutes ago, DrVenkman said: I can’t address much of the original poster’s issues, but I use an MSS100 through my P:R:Connection for connecting to Telnet-like services online. It requires a 9-pin to 25-pin cable Atari “Terminal Cable” to connect the 9-pin R1: RS232 port on the P:R:Connection and the 25-pin RS232 connector on the MSS100. It *does* also require a 25-pin female-female gender changer on that end of the cable. Having said that, last I checked a couple years back, the Lantronix site still had PDF manuals for all its old late-90s/early 00’s Ethernet/serial devices like these still archived. The MSS100 manual has a whole section on how to enable modem emulator, which commands are supported, etc. Might be worth a try to try to find that manual, reset the UDS to factory defaults and see if working from the steps outlined in the manual gets things working as expected. I actually did all of those things. The device is still made by Lantronix and the manuals are online. I've done all it says but it still doesn't respond to modem commands ( I'm using bobterm in As cii to test), and it is really frustrating. I'm beginning to thing that the firmware (which I've since updated to the latest version in hopes of resolving this problem) is broken for this function. Best, Jeff Edited August 31, 2019 by Technoid Mutant Quote Link to comment Share on other sites More sharing options...
Bikerbob Posted August 31, 2019 Share Posted August 31, 2019 No Jeff, if you were able to update.. the device is good. Its in the configuration of the device. I just went through all this with UDS and MSS devices. SO.. here is the thing to note. A UDS device is a END device a MODEM.. an MSS is a SERVER device. You have a UDS - SO.. you need to use a STD (ATARI wired) MODEM cable.. - NOT a NULL modem cable.. BUT - since you have people calling and their typing shows up.. ITS WORKING.. so the cable is FINE. IT is in the configuration.. - ON AA - go to clubs - you will see BBS GURU's club.. look in there.. you will see a configuration posted for a UDS10 from John Polka. Follow that. John uses his to run bbs's The 1100 is just a faster device. If you can run deviceinstaller see the device and telnet to it to see the config.. its working.. - its just getting the config correct. James 2 Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted August 31, 2019 Share Posted August 31, 2019 (edited) +++ATH0 is a terrible way to hang up... if any sequence of +++ happens on the bbs side or the users side the device ends up in command mode... then it will either stay there for eternity or timeout and eventually hang up... this method of disconnection was so problematic back in the day, that some manufacturers tried to make it time sensitive in that you had to send the sequence faster than the average person could type. They also added the ability to turn +++ off. That was wonderful. The services then added hang up or disconnect to their user menu. The caller selected that option and the system dropped dtr and ended the call. Most terminal software has the hang up option as well. You guessed it, drops dtr. almost any BBS has the ability to drop dtr and this is how almost all dial up devices and their replacement things truly disconnect a call. if you dig up one so old that doesn't chances are it's written in basic and you can replace the +++ ath0 with the appropriate command line control to drop dtr. as for the uds 1100 set up, if you find yourself with patches of hair missing, you can pm me... I'll help you set it up either through remote entry or via some video capable messenger or another.... that way you can see it all and then do it. Edited August 31, 2019 by _The Doctor__ Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted August 31, 2019 Author Share Posted August 31, 2019 That was a sore point between Hayes, the initiator of the smarmodem command set that became the instant standard. A Hayes modem insisted on a 'guard time' between the initiation of the first + in a +++ escape sequence and a guard time after the last +. This made it impossible for a string of three consecutive + chars from initiating an escape to command mode under almost any conceivable circumstances but a deliberate entry. Other manufacturers were prohibited from using this guard time by patent and Hayes defended this vigorously. From practical experience, I never had trouble with any other smartmodem in this regard. I made this point clear in my message to lantronix: Hi Sayed, I'm sorry to say your response is unhelpful. I know the settings are correct. The uds1100 passes characters along to a pc connected via telnet, and receives them as well, passing them on to the rs232 port. I have enabled modem mode, as you can see in the screenshots. I can also put the UDS1100 into configuration mode and configure it from the keyboard on my serial device, so local communications are possible and working. My problem is that the uds1100 does not respond to modem commands at all. It does not produce modem responses either numeric or 'verbose' (textual). If I type "ATH" or "+++ATH", the uds1100 simply passes those chars through to the telnet client at the other end of the network line instead of processing them as a command to terminate the connection. The appropriate response if it were to do so would be 'NO CARRIER'. The UDS1100 is not behaving as a smartmodem should, as the documentation says it should. Page 57 of the manual, with which I'm quite familiar at this point, is therefore of no help. I have, after many years working with smartmodems, a great deal of experience in programming for the Hayes command set and manipulating modems for this sort of application over real phone lines, leased or otherwise. I'm beginning to think that the Lantronix firmware is broken in this regard. There may be a misunderstanding of the hayes set on the part of your firmware coders. '+++ATH' is not a valid Hayes command string. I iterate the proper strings below. '+++' is the escape sequence. It is only given alone, with dead time at beginning and end. Else, the modem will not enter command mode and will rather pass the string on to the equipment connected to it by phone line. So '+++' followed by 'ATH' is valid, and '+++ATH' is not and will not produce the desired results with a Hayes-compatible modem. All this is of course academic since this device does not respond at all to any Hayes commands. For some reason, on connect via telnet, on the telnet client, I do occasionally but not always see that the lantronix uds1100 is sending of its own accord the commands 'ATX3' and ATD . This is not the direction these commands are supposed to go, nor is the Lantronix supposed to generate them. I'm supposed to generate these commands from the serial device connected to the lantronix uds1100. In my scenario, a client connects by telnet to the lantronix uds1100, the uds1100 then generates the Hayes response 'RING' on it's serial port. My serial device receives and interprets this 'RING' and generates an 'ATA' command, and sends it to the 'modem' by the serial port. The UDS1100 receives this 'ata' command and responds with 'CONNECT 9600', or whatever the baudrate of the DCE to DTE connection is. A simple 'CONNECT' would be fine. I can just fix the baudrate. The above handshakeing simulates a modem initiating a connection with a remote device. When the transaction over the connection is complete, my device generates the Hayes escape code '+++' and sends that over the serial port, to which the uds1100 should respond by entering command mode and issuing the response 'OK' on the serial port, . My serial device then issues the command 'ATH' to disconnect the session (hang up the phone). The literature claims the uds1100 does interpret and execute basic Hayes-compatible modem command strings and generate the appropriate responses but it does not. Best, Jeff Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted August 31, 2019 Share Posted August 31, 2019 (edited) General AT command cheat sheet. A) The Immediate Command Mode is AT followed by B) The Basic Command Set is a capital character followed by a digit. For example, M1. C) The Extended Command Set – An "&" (ampersand) or dollar sign ($) and a capital character followed by a digit. This extends the basic command set. For example, &M1. Note that M1 is different from &M1. D) The Proprietary Command Set – Usually starting either with a backslash (“\”) or with a percent sign (“%”); these commands vary widely among modem manufacturers. E) The Register command set where Sr=n ... r is the number of the register to be changed, and n is the value that is to be assigned. F) The Online Command Mode is plus plus plus (+++), plus pause plus plus pause (hayes), or other escape sequence followed by a limited command set ATH ATH0 ATO ATA etc. (useful for line reversal), and on some devices ATC will put you in online command mode. G) The Terminator or Return. AT (return key) means Attention, the modem may respond with OK, or a number. or nothing at all depending on config. I have used a great many Lantronix devices over the years, and some do have quirks... however, I have been able to get just about anyone having difficulties up and running. It is almost always a configuration issue. This often comes down to a difference of terminology in the way some of the documentation is written or they way we remember it should be. I dug up and fired up a UDS 1100 and called a couple boards and turned the dreaded +++ function back on, it worked as it should. I was able to drop DTR and it hung up... and I was able to +++ATH and it disconnected you don't want +++ active during an ATASCII movie with fight sequence though.... click! I am checking the users guide and am on page 57... most of this kind of thing is on the pages before this page. I'll have to dig around for a different reference material that they might have supplied. Here's the guide I was perusing ... UDS1100_UG.pdf are we using the same book? Edited August 31, 2019 by _The Doctor__ Quote Link to comment Share on other sites More sharing options...
Bikerbob Posted August 31, 2019 Share Posted August 31, 2019 (edited) I have no idea if he is having issues making connections and disconnecting them in the command mode _The Doctor_ his specific issue it getting it to respond to commands from a remote connection. To either connect.. OR disconnect when the command is coming from an external connection. I am going to be doing this with my UDS100 as well. Will start with JPs config and go from there. James Edited August 31, 2019 by Bikerbob spelling Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted August 31, 2019 Share Posted August 31, 2019 (edited) from the users guide.... Hangs up the connection (Entered as +++ATH ). so it's not following the outline he provided +++ OK ATH click it follows +++ATH click easy enough to fix in a basic program... but... I'd just use DTR. If he isn't receiving a call he can change the software to accept either connect or ring depending on what the UDS is sending Edited August 31, 2019 by _The Doctor__ Quote Link to comment Share on other sites More sharing options...
Bikerbob Posted August 31, 2019 Share Posted August 31, 2019 3 minutes ago, _The Doctor__ said: from the users guide.... Hangs up the connection (Entered as +++ATH ). so it's not following the outline he provided +++ OK ATH click it follows +++ATH click easy enough to fix in a basic program... but... I'd just use DTR. If he isn't receiving a call he can change the UDS 1100 yeah.. but his point is.. its NOT doing that. I think he knows what its supposed to do by his letter to Lantronics.. what he is saying it aint happn. James Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted August 31, 2019 Share Posted August 31, 2019 (edited) well there are two modem modes per se.... one is modem emulation on the lantronix the other is connecting a real modem to the serial port of the lantronix. In any event it works as it should on the uds 1100 here so... I still suspect the setup up is a bit off in the config... the niggle is he says it doesn't respond to 'ANY' AT commands.... sounds like it's always in connect mode... this makes me think he has it set to connect to some ip or port automatically... Edited August 31, 2019 by _The Doctor__ Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted August 31, 2019 Share Posted August 31, 2019 (edited) got me wondering so I did an EDS as well to see... EDS1100 works with pause +++ pause enters online command mode ato back to bbs ath hangs up so thats great for the eds1100 uds1100 worked either way Edited August 31, 2019 by _The Doctor__ Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted September 1, 2019 Author Share Posted September 1, 2019 On 8/31/2019 at 3:36 PM, _The Doctor__ said: well there are two modem modes per se.... one is modem emulation on the lantronix the other is connecting a real modem to the serial port of the lantronix. In any event it works as it should on the uds 1100 here so... I still suspect the setup up is a bit off in the config... the niggle is he says it doesn't respond to 'ANY' AT commands.... sounds like it's always in connect mode... this makes me think he has it set to connect to some ip or port automatically... That's right. It is always in connect mode, never in command mode and the +++ sequence doesn't break me into command mode. So I can't use AT commands at all. I receive no 'connect 9600' or 'ring' at connect, so I have nothing to hang my waitcall module on at all. If it gave ANY indication of connection when it connects I could modify waitcall to use that indication, but there is none and the thing promises to pretend to be a modem. It is really frustrating. Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted September 1, 2019 Author Share Posted September 1, 2019 SOLVED! The problem is that the web configurator for the UDS1100 is broken in regards to the modem connect mode. I entered the setup via the serial port of my Atari and entered "D6" for 'Connect mode' and saved the configuration. The UDS1100 now acts like a modem. I will probably have to mod the waitcall a little bit to tailor it for the lack of a baudrate report on connect and for the fact that 'connect' immediately follows the 'ring' response messages, but this is child's play now that I have the thing working. Thanks for all your advice guys. Best, Jeff 3 Quote Link to comment Share on other sites More sharing options...
Kyle22 Posted September 2, 2019 Share Posted September 2, 2019 1 hour ago, Technoid Mutant said: SOLVED! The problem is that the web configurator for the UDS1100 is broken in regards to the modem connect mode. I entered the setup via the serial port of my Atari and entered "D6" for 'Connect mode' and saved the configuration. The UDS1100 now acts like a modem. I will probably have to mod the waitcall a little bit to tailor it for the lack of a baudrate report on connect and for the fact that 'connect' immediately follows the 'ring' response messages, but this is child's play now that I have the thing working. Thanks for all your advice guys. Best, Jeff Do you have (or can you make) a waitcall.cmd that plays nice with Pro! 4.0b and a UDS device? I'm looking for one that prompts the user to press RETURN a few times. The one I have doesn't do that. Somehow it passes ATA through to the caller, but no welcome message or instructions to PRESS RETURN. Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted September 2, 2019 Author Share Posted September 2, 2019 2 minutes ago, Kyle22 said: Do you have (or can you make) a waitcall.cmd that plays nice with Pro! 4.0b and a UDS device? I'm looking for one that prompts the user to press RETURN a few times. The one I have doesn't do that. Somehow it passes ATA through to the caller, but no welcome message or instructions to PRESS RETURN. Carina, my planned bbs, is in Basic with machine language io routines, so I'm able to mod the waitcall (I'm pretty good in Atari Basic). Pro is in machine language, so that's another story. I notice a couple of differences now between the uds and a real modem and one is pretty big, waitcall-wise. In a normal waitcall setup, the board sets the port baudrate, sends commands to the modem, and waits for a 'ring' from the modem. The modem autoadjusts to the baudrate the port is communicating on. The UDS does not. So you need to set your waitcall to set the baudrate of the port at the same rate you have your uds configured for (in my case, 9600bps right now). Else, there will be a dce to dte rate mismatch between and there will be garbage on the line instead of readable data when waitcall attempts to talk with the modem. A waitcall would manifest this particular error, probably, by just hanging, waiting for an OK from the modem that never comes. When the modem handshakes with the remote modem, they negotiate a baudrate. When the modem has a connection, it reports to the serial port 'CONNECT XXXXXX', where XXXXXX is an integer number reflecting the baudrate negotiated, 300, 1200, 2400, 19200, etcetera). When waitcall gets this information, it takes that integer number and configures it's serial port to the baudrate given in the connect message. Since this is not supported by the UDS, the baudrate is fixed, so you need to nail the waitcall to the same baudrate you have set for sending configuration messages and to which you set the UDS in its configuration mode. Somewhere in the waitcall will be a set of integer numbers you can see with a hex editor. You can change all of these to the baudrate you want, 9600 in my case, thus no matter what the waitcall decides, the result will be configuring the port to the baudrate you want, 9600. This allows the negotiation logic to remain active, but takes away the actual decision-making from it by pegging all the selections to one rate. This is especially important as 'CONNECT' alone, in normal modem parlance, and what the UDS gives only, is interpreted by most waitcalls as 'CONNECT 300', a 300bps connection! So getting the thing to work at this rate may be as simple as selecting 300 bps for DCE to DTE communications and configuring the UDS for 300bps in it's configuration menu.... I'm just sayin'/ From recent experimentation, the UDS will answer OK to just about any configuration message it receives whether it processes it or not. For example, ATM1L1X11=37&D2&C1X1 will generate an OK response even though the uds supports almost none of those commands. This is good and normal for modems to do, but means that you can't rely on the config AT commands in waitcall to setup the connection to what you want. In short, pick a baudrate, configure your uds1100 for that rate, and then nail every setting in your software to that baudrate. I will have a whole lot more information soon, as I've just started experimenting, but for now this is what I do know. best, Jeff Quote Link to comment Share on other sites More sharing options...
Kyle22 Posted September 2, 2019 Share Posted September 2, 2019 Sorry, I forgot you were Carina. I wish Pro! made the source code for waitlall.cmd available. It would be so simple to make custom versions specific to the individual users MODEM. Hopefully, someone will disassemble and comment it. :) Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted September 2, 2019 Author Share Posted September 2, 2019 Just now, Kyle22 said: Sorry, I forgot you were Carina. I wish Pro! made the source code for waitlall.cmd available. It would be so simple to make custom versions specific to the individual users MODEM. Hopefully, someone will disassemble and comment it. I'd load the .cmd you have for your working board into a hex editor and look for those numbers, load the other .cmd file and look for differences, compare them. Manually edit the new .cmd file to reflect the same changes. This is probably all the original author did. It probably supports only a small set of the possible baudrates, so you can look for 300, 1200, 2400, 9600... and that will be where you need to stick your numbers. Best, Jeff Quote Link to comment Share on other sites More sharing options...
Kyle22 Posted September 2, 2019 Share Posted September 2, 2019 I only have 3 characters that it spits out "ATA". There is code crammed right in after it, so no space to add text. Quote Link to comment Share on other sites More sharing options...
Kyle22 Posted September 2, 2019 Share Posted September 2, 2019 This should have been done same as most common CP/M Terminals and utilities. Simply provide Well Documented 'Patch Areas' for the necessary strings. But, NO... They didn't. :( Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted September 2, 2019 Author Share Posted September 2, 2019 7 minutes ago, Kyle22 said: I only have 3 characters that it spits out "ATA". There is code crammed right in after it, so no space to add text. I just validated some of what I mentioned in my previous post. I set the UDS1100 to 300baud in it's telnet configuration program and saved the settings. Then I set Syncterm on my PC to 300bps and loaded up BBS express! ( a very old non-pro version ). I'm able to log on to the board now, but only at 300 baud. Try this and see if your new pro version works. We can work from there to force a higher fixed baudrate. Best, Jeff 1 Quote Link to comment Share on other sites More sharing options...
Jeffrey Worley Posted September 2, 2019 Author Share Posted September 2, 2019 (edited) That means that YOU can log on to my board at 300 bps. Just gotta set the baudrate on your term and you are in like flynn. at least temporarily I'm playing with this version of express the address is techccs.net 10001 Edited September 2, 2019 by Technoid Mutant Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted September 2, 2019 Share Posted September 2, 2019 (edited) what is your disconnect mode in telnet settings screen? Edited September 2, 2019 by _The Doctor__ Quote Link to comment Share on other sites More sharing options...
Bikerbob Posted September 3, 2019 Share Posted September 3, 2019 23 hours ago, Technoid Mutant said: That means that YOU can log on to my board at 300 bps. Just gotta set the baudrate on your term and you are in like flynn. at least temporarily I'm playing with this version of express the address is techccs.net 10001 Yeah Jeff that is exactly the system I am playing with and getting it to work. BTW I am using it through APE at the moment. It does autonegotion for you, so pretty fast conneciton. I want to use the UDS though.. so going to try a non specific Express! and see if I can get that working.. I think the one I would like to run because no one does is FOREM.. XL or XE James Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.