603,864 active members*
5,364 visitors online*
Register for free
Login
IndustryArena Forum > MetalWorking > MetalWork Discussion > Bandit Serial Connection
Page 1 of 2 12
Results 1 to 20 of 35
  1. #1
    Join Date
    Aug 2006
    Posts
    281

    Bandit Serial Connection

    Anyone know the baud rate etc. for a Bandit?

    I made a normal db9 connector which in theory is connected correctly. Trying to connect through hyperterminal didn't give me anything.

    Is there anything I should know regarding syntax?

    My guess is something like this
    X-1.0
    Y-1.0
    /X-1.0
    /Y0
    But, how do you fire a [start] command?

    Anyone? Any resources?

  2. #2
    Join Date
    Mar 2004
    Posts
    1527
    Bamdit had several models. I ran an old one for a little while. I think it communicated at 300 baud. I only remeber that command syntax was different than Fanuc. You're going to need the manual to have a chance at this thing.

    Personally, I'd just upgrade to Mach or another fine control. This is a really obsolete control.

    Karl

  3. #3
    Join Date
    Mar 2003
    Posts
    4826
    The Bandit is hardware handshake only. Is that what you have Chris? Where did you get the pinout for the cable?

    I think the Bandit had a DIP switch setting that may set the baud rate...but I'm not sure. You should call Albright cnc, they would know. Depending on the firmware, the Bandit could transmit at up to 4800. DNC was more limited, I think maybe 1200.

    If you've got the correct cable, you should get a character or two to come across before you get an error light. Then it is just a matter of trial and error to set the sending software correctly to match baud rates. Start slow, as Karl suggested.

    To receive, I think you just switch the knob to "EXT" and hit the start button yourself.

    If the first characters in your program are
    N1&
    this will set the Bandit to load the data at line 1 in memory.

    A % sign means nothing to Bandit.

    I think a control character is required to end the transmission legally and this could be ASCII 004, or 017, 018,019, 020. I used a special comm program which used a key combo to do this, so I do not know exactly what character they were emulating with the shortcut.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  4. #4
    Join Date
    Aug 2006
    Posts
    281
    Thanks...that's a starting point. As far as the pinouts go; The guy who sold it to me gave a small board with a ribbin cable attachment on one end and screw down terminals on the other...this included hand written instructions of what goes where. I just followed that for attaching a DP9 connector. It's all really going off of faith at this point. If I can't get anything then I'll pursue the actual ribbon cable itself. Right now I'm trusting that it's right...it looks well made.

    I read through the shadow docs again and they include the pinouts of the ribbon. I wonder if it's the same.

    My bandit docs only contain some basic info regarding this. FYI, my system is considered a 2M.

    I know this controller is in the twilight of it's life but for now it seems to be very capable. For what I need, I could really get by just using G-codes...but losing the program entirely everytime you reboot is bringing back nightmares from my Commodore 64 days before I had a tape recorder.

  5. #5
    Join Date
    Aug 2006
    Posts
    281
    Quote Originally Posted by HuFlungDung View Post
    The Bandit is hardware handshake only. Is that what you have Chris? Where did you get the pinout for the cable?

    I think the Bandit had a DIP switch setting that may set the baud rate...but I'm not sure. You should call Albright cnc, they would know. Depending on the firmware, the Bandit could transmit at up to 4800. DNC was more limited, I think maybe 1200.

    If you've got the correct cable, you should get a character or two to come across before you get an error light. Then it is just a matter of trial and error to set the sending software correctly to match baud rates. Start slow, as Karl suggested.

    To receive, I think you just switch the knob to "EXT" and hit the start button yourself.

    If the first characters in your program are
    N1&
    this will set the Bandit to load the data at line 1 in memory.

    A % sign means nothing to Bandit.

    I think a control character is required to end the transmission legally and this could be ASCII 004, or 017, 018,019, 020. I used a special comm program which used a key combo to do this, so I do not know exactly what character they were emulating with the shortcut.
    Well, the good news is that I had some communication happening...the bad news is that I can't recognize any of it.

    It's all in strange characters...not standard ascii. I suspect that means that I may not have the serial parameters correct, but virtually all other settings give me nothing.

    Can anyone verify if the data sent and received is in plain text?

    What I was doing was using the M command to save a small program to my computer (so I could read the text it sends). I tried sending a few commands but nothing seemed to work.

    What I found that worked was 1200 baud, 1 stop bit, no parity, hardware control (although it works with no flow control as well).

    Any thoughts?

  6. #6
    Join Date
    Mar 2005
    Posts
    171
    To accept a program from the PC:
    1 Push Reset
    2 Switch mode to External (EXT)
    3 Push CE button
    4 Push the spindle enable button ( If your machine has one)
    5 Push Start button

    To Send a program from Control To PC:
    1) setup PC to receive
    2 Find last sequence number in program
    3 MDI mode push Reset
    4 Switch to External (EXT)
    5 type T# (where T#= last line of your program)
    6 Push the Start button

    Can't tell you what baud to use without knowing the control. Old Bandits
    used real slow bauds like 120, 300 etc. newer cards used 1200, 2400 etc.
    Don't be afraid to go slow. If you email me, I'll send you a very old Bandit
    communication program that works in DOS.

  7. #7
    Join Date
    Mar 2005
    Posts
    171
    Also, as stated in a earlier post, do not use % signs.
    First line of the program N001& G90 (or whatever you want to start with)

  8. #8
    Join Date
    Aug 2006
    Posts
    281
    So does "&" replace start? And, What would you use a "%" for anyway?

    I'm going to try 120 when I get home. I called Albright CNC and ordered a Bandit comm manual so if I don't get this working at least I can fall back on that. Thanks for all the feedback. What I was doing to send the program to the computer is:
    MDI - N01 start
    EXT - M5 start (last line of the program)

    It would send across the same thing everytime, but it was jiberish.

    Something like this:
    ΔΔΔ☺☺☺☺↕↔↑↨☺☺☺ (lots of the smiley face character). I hope this is just a bad baud rate issue and I'm not going to have to translate this to normal characters.

    Another thing I keep reading is that it can communicate at 1200 baud with syncronization but most PC's don't have this. What is it that PC's don't have? It seems strange to have a problem with current computers talking RS232.

  9. #9
    Join Date
    Jul 2005
    Posts
    442
    Can you get your hands on an oscilloscope (or logic analyser)? Even a cheapo sound card unit will work for this as you only need to find the baud rate.

    If the baud rate is odd (can't do it on a standard port) let me know and I'll set you up with a baud rate converter.

    Aaron

  10. #10
    Join Date
    Mar 2003
    Posts
    4826
    Pastera,
    It sounds as though you have some funky method of testing with a sound card. While I don't need to know, I am curious

    Chris,
    7 data bits
    2 stop bits
    parity none
    hardware handshake.
    start of transmit: nothing really required
    end of transmit: CTRL+D (if that means anything) It is one of the ASCII characters and you will likely need a comm program that is capable of sending non-text character in order to get it to go.

    If you cannot find the correct character to end the transmission with, I think you can still go to the Bandit and switch back to MDI and perhaps hit RESET and the transmitted program should be there intact.

    Place the cursor on the first line of the program you wish to send, not at the end of the program.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  11. #11
    Join Date
    Mar 2005
    Posts
    171
    I dug up my notes on the Bandit Level 2 I used to own.
    It used the following:
    Baud =110
    Parity =Even (ASCII format)
    Stop bits = 1
    Handshake=none

    I dug thru my old floppies and I do indeed have DOS communication
    program for the Bandit if are interested, its ~224K so not much to download.
    One nice thing about the comm-program is that it counts the Bandit program sequence numbers correctly. The Bandit control counts the N numbers by
    bits, which is a odd.

  12. #12
    Join Date
    Mar 2005
    Posts
    171
    I was also thinking that Windows still has the original Terminal program
    from Windows 3.00. Search your computer for the old program, it will have
    the lower baud rate settings and the rest of RS-232 settings you might need.

  13. #13
    Join Date
    Jul 2005
    Posts
    442
    YOu can buy a cable to hook up to your sound card line in to turn it into a audio fequency oscilloscope - very handy in a pinch but not extremely useful.
    There are several programs online that will do this and all you really need is a few resistors to divide the input down to line level.

    CTRL+D is EOF (end of file)

    Aaron


    Quote Originally Posted by HuFlungDung View Post
    Pastera,
    It sounds as though you have some funky method of testing with a sound card. While I don't need to know, I am curious

    Chris,
    7 data bits
    2 stop bits
    parity none
    hardware handshake.
    start of transmit: nothing really required
    end of transmit: CTRL+D (if that means anything) It is one of the ASCII characters and you will likely need a comm program that is capable of sending non-text character in order to get it to go.

    If you cannot find the correct character to end the transmission with, I think you can still go to the Bandit and switch back to MDI and perhaps hit RESET and the transmitted program should be there intact.

    Place the cursor on the first line of the program you wish to send, not at the end of the program.

  14. #14
    Join Date
    Aug 2006
    Posts
    281
    HyperTerminal will go down to 110. I would be interested in checking out that DOS program. If for no other reason I'd like to see something successfully talking to it. (I'll PM you).

    Using a soundcard for an o-scope is a pretty cool idea. I guess it could read a frequency up to 24k hz (48khz/2). I really wouldn't know how to translate the number to figure out the baud anyway, but I know where you're going with it. At this point I've only had communication work at 110 and 1200 baud.

    I did find something interesting in the depths of Bandit manual. In my tests, I was trying to send a program from the Bandit to the computer so I could see the expected syntax. Apparently this is not sent as a standard ASCII...it's sent as a program image. Now my thought is that this image would be in plain text...why not right? Well they have three different input methods; Image, EIA and ASCII. So I guess this means that Image and ASCII are not one and the same. So my next efforts will be to jump right into sending it commands.

    This is where I'm a little confused. How would I send a typical command?
    If I wanted to say:
    X10.0[enter]
    Y-5.0[start]

    Would I send this command in a single line or multiple lines? What character for enter vs. start. Does the CTRL-D end command perform the Start function?

  15. #15
    Join Date
    Mar 2003
    Posts
    4826
    Chris,
    You can write gcode normally, with the " /" in place of G00 and no gcode at all for feedrate movements. A feedrate command must be on a line by itself. Issue a feedrate command before the very first feed move, or you'll see the control enter "limbo" and never execute. This is a common problem on all cnc's that I have ever run, but some of the smarter ones will throw an alarm and tell you "no feedrate" but the Bandit is much more primitive. It likes to taunt you

    When you have multi-word commands (like a 3 axis move), the Bandit will automatically place each move on a seperate 'line number' when the file comes in. You only have to use the 'ENTER' key when inputting a program in MDI mode as a means of linking the command together into one real line of nc code.

    You would not need a START command in your program for anything. START is used to execute, either in single line mode, auto mode, or to enter into the offset registers to store values.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  16. #16
    Join Date
    Mar 2003
    Posts
    4826
    BTW, it may interest you as a Bandit user to get a copy of an old nc editor software from Endpoint Software, which is better known for Millwrite engraving software. Ask for Eric and tell him you need an editor for Bandit1.

    What is special about this editor, is that he wrote logic to renumber Bandit programs properly. Bandit commands are actually stored on 'word numbers', not line number. The memory in the control can hold 1000 words.

    If your program had 333 three axis moves in it, that would fill the Bandit memory to line 999.

    So with the special editor doing the 'line renumbering' in Bandit1 format, it numbers them the same as they would be in the Bandit. This helps a lot when doing offline programs and you want to use a subroutine, but have no idea what line number the sub is going to start on, if using a normal line numbering editor.

    The special software also includes a communication package which always worked very well, and had some troubleshooting utilities to send and receive single characters out the com port.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  17. #17
    Join Date
    Aug 2006
    Posts
    281
    OK...I'm pulling my hair out! I finally ditched the computer and clamped my first piece of metal in and did some practice cutting. That went pretty good accept that I really think I'm going to need to figure out my flood system...a whole other project.

    Anyway, I can't get anything to work...I can get random acts of activity but that's it. Strangely enough it appears to work best at 4800 baud. Any setting at all on 110 baud fails causes the Controller to go into error mode. 1200 shows some activity but seems buggier than 4800. Of course...I'm not getting any of them to work so I could be way off base.

    I know this question has been answered but I'm still not getting it...what would be sample syntax to set the feed rate and make the table move a little? Is it case sensitive?

    It seems to me it would be
    f50.[enter]x10.[enter][ascii 19]

    but I'm not getting anything. The f50 part works (doesn't crash), but when I press x and then a number it fails on any digit. Does it seem logical to assume that the cable is probably working? It does seem to be having some communication. The errors are always error 16 (I/O error).

  18. #18
    Join Date
    Mar 2003
    Posts
    4826
    The feedrate must be on a line alone by itself. The Bandit syntax is quite strict and limited.
    Multiaxis moves should be linked with the "enter" key until you have completely entered the movement.
    Drilling and machining cycles same thing.

    Everything else, T numbers, M codes should be on a line by themselves.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  19. #19
    Join Date
    Aug 2006
    Posts
    281
    OK...got the &%%$$! thing working! Scouring the internet I found one little tiny stinking post that included this little gem (he happened to have a wells index with a stock Bandit):
    Baud Rate: 110
    Data bits: 7
    Parity: Even
    Stop Bits: 1
    Flow control: Hardware

    Well this didn't work but it seemed to be trying...so I tried 1200 baud and presto! It worked.

    As far as syntax goes I needed to type the code in this way:
    (Uppercase or it crashes with an error 25 - bad I/O command)
    F200.&X10.&Y10.&

    With an & ending each command (Essentially acting like the start button). I haven't figured out how to seperate commands yet (replacing the ENTER command, but I haven't tried). They may just go side by side or they may need a ascii character (13). But at least this feels like real progress. I'll try to keep working all the kinks out so I can post some final specs for this system. Thanks everyone for all your help and suggestions.

  20. #20
    Join Date
    Aug 2006
    Posts
    281
    OK...that didn't take me long to find a new problem! How do you feed the commands? The buffer on the port seems to be limited to about 3 commands if they are single axis. If you send any multi-axis commands (lines or arcs)...then you can't even send a second command. But the controller doesn't send back anything saying that it's done. I tried to find a G command that would just send a response but I couldn't find one.

    The only thing I get back from the controller is a failure notice (by this time it's lost connection and is in error mode).

    Idea's?

Page 1 of 2 12

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •