Home NetLinx Studio

NX controller IP control

jneffjneff Junior MemberPosts: 25
I am kind of new to the NX controllers, I have been programming for 20 years, but just recently got a 3250 with an NX controller. After reading through the manual, it says that the NX controllers will use whichever RJ45 jack with the correct subnet automatically. I would like to use the ICSLAN jack if possible - Yet neither of these command below seems to create a link to a Document Camera that I already control using a serial to IP converter on our old systems. The document cameras IP does show up on the web interface under system / Manage devices / Active devices. As a test, I just sent the string expression to 0:8:0 ( Device dvIPClient ) "$01,$A0,$01,$00". Nothing. I tried the first one and then the second one - I am not 100% sure what the second is for - just that it is new with the NX controllers, When I send the string - activity lights blink on both ports, so I can't say where the data is actually going.


IP_CLIENT_OPEN(dvIPClient.Port,"'198.18.64.1'",50915,IP_TCP)

OR

SEND_COMMAND dvIPClient, "'UDPSENDTO-198.18.64.1:50915'"

The main network jack is on 255.255.255.0 and the ICSLAN jack is set to default 255,255,0.0 - I am using the first static address the manual says to use.

any ideas?

Comments

  • jneffjneff Junior Member Posts: 25
    There is no space in IP_Client_OPEN 50915 in the actual code. Don't know how that got there.
  • MLaletasMLaletas Junior Member Posts: 226
    Can you ping your camera from the controller? This will at least confirm the controller can see the device.
  • jneffjneff Junior Member Posts: 25
    Yes, I can. I had no idea that there was a ping command on the controller :), Is the response normal with only 1 attempt?


    --- 198.18.64.1 ping statistics ---
    1 packets transmitted, 1 packets received, 0% packet loss
    round-trip min/avg/max = 6.182/6.182/6.182 ms
  • MLaletasMLaletas Junior Member Posts: 226
    Yep thats it, so the ICSLAN network is good. And you used this command before, I guess for fun even though were succesful in pinging the unit try setting the unit to DHCP and update your code and see if there is any different. What is diagnositcs showing you?
  • jneffjneff Junior Member Posts: 25
    I got it. Silly me... I can't use Netlinx Diagnostics to send an IP string directly to that port. It just does not work.

    So, I decided with our new installations, that it would be easier use our University network and use DNS naming conventions, since we already use part of our controllers DNS name to control other devices. Apparently you can't do that on the ICSLAN port.

    Last question about this... The documentation on this command --> SEND_COMMAND dvIPClient, "'UDPSENDTO-198.18.64.1:50915'" --- Says that it only supports IP_UDP and IP_UDP_2WAY. There is no argument for that - Is it just IP_UDP_2WAY or is it defined somewhere else?

  • RaphayoRaphayo Junior Member Posts: 111
    jneff wrote: »
    I got it. Silly me... I can't use Netlinx Diagnostics to send an IP string directly to that port. It just does not work.

    So, I decided with our new installations, that it would be easier use our University network and use DNS naming conventions, since we already use part of our controllers DNS name to control other devices. Apparently you can't do that on the ICSLAN port.

    Last question about this... The documentation on this command --> SEND_COMMAND dvIPClient, "'UDPSENDTO-198.18.64.1:50915'" --- Says that it only supports IP_UDP and IP_UDP_2WAY. There is no argument for that - Is it just IP_UDP_2WAY or is it defined somewhere else?

    you can put other device on the icslan port but you will not be able to from the lan port. if you connect your laptop on the isclan side you will be able to talk to the device with your laptop. i recently update a system with multiple nx4200. My main processeur is connected to the client network and all other device, 2nd nx-4200, me-260 are connected on the isclan port. and it work like a charm. i have a tesira server on the ics lan side with no issue.

  • jneffjneff Junior Member Posts: 25
    That makes total sense now Raphayo. Thanks.

    Last question about this... The documentation on this command --> SEND_COMMAND dvIPClient, "'UDPSENDTO-198.18.64.1:50915'" --- Says that it only supports IP_UDP and IP_UDP_2WAY. There is no argument for that - Is it just IP_UDP_2WAY or is it defined somewhere else?

    Also... Any use this command in code? can you explain it to me?
  • vincenvincen Junior Member Posts: 526
    jneff wrote: »
    I got it. Silly me... I can't use Netlinx Diagnostics to send an IP string directly to that port. It just does not work.
    Nope it's part of stupid limits that are really boring for developers :( no way to send by hand strings on an IP connection opened (from NSX diagnostics or in telnet on master :(
  • Danny CampbellDanny Campbell Senior Member Posts: 311
    What I have done to make IP diagnostics easier is I create a virtual device and in the data_evet for the virtual device I send commands to it. In the data_event for that device I have it send the data.text as a string to the IP device. Then in the IP device's data_event I send the string that comes from it back to the virtual device.

    Danny
  • RichardHamiltonRichardHamilton Member Posts: 58
    vincen wrote: »
    Nope it's part of stupid limits that are really boring for developers :( no way to send by hand strings on an IP connection opened (from NSX diagnostics or in telnet on master :(

    When I want to inject custom/manual strings, I create an obscure button event (that can be triggered by diag/emulate) and have a variable string pre-named and sized that I can edit in debug. My button event will send the string (to an expected port) when triggered. That's one way to get around the issue you describe.
  • vincenvincen Junior Member Posts: 526
    When I want to inject custom/manual strings, I create an obscure button event (that can be triggered by diag/emulate) and have a variable string pre-named and sized that I can edit in debug. My button event will send the string (to an expected port) when triggered. That's one way to get around the issue you describe.
    Good idea, not simple but not too conplicated way to avoid stupid restrictions ;)
  • fogled@mizzou[email protected] h4x354x0r Posts: 549
    LOL yeah, my panel designs sometimes end up with a whole page of "hidden" diagnostic buttons.
Sign In or Register to comment.