Home AMX User Forum NetLinx Modules & Duet Modules

ClearOne Converge Duet Module Limitations

Hi Can anyone tell me if there is a limit to how many Converge modules can be defined on a single NI controller. I have a system that has 10 Converge 880 TA's, 1 840T and 9 VH20s.
We will be writing our own UI code so I just need the comm module, on system 2 I have the module definitions for the 10 880TAs, and the actual 232 port and on system 3 I have the module definitions for the remaining 10 devices.
I have an online event for the the array of virtual device and I pass them the relevant properties as they come online, Type and ID.

After the controllers boot up I get this error on system 2
(0002478014) CIpEvent::AddInternalEvent - Max Queue Count = 150
(0002499985) CIpEvent::AddInternalEvent - Max Queue Count = 175
(0002524506) CIpEvent::AddInternalEvent - Max Queue Count = 200
(0002547731) CIpEvent::AddInternalEvent - Max Queue Count = 225
(0002566432) CIpEvent::AddInternalEvent - Max Queue Count = 250
(0002591851) CIpEvent::AddInternalEvent - Max Queue Count = 275
(0002614863) CIpEvent::AddInternalEvent - Max Queue Count = 300
(0002638416) CIpEvent::AddInternalEvent - Max Queue Count = 325
(0002661862) CIpEvent::AddInternalEvent - Max Queue Count = 350
(0002681218) CIpEvent::AddInternalEvent - Max Queue Count = 375
(0002705386) CIpEvent::AddInternalEvent - Max Queue Count = 400
(0002728393) CIpEvent::AddInternalEvent - Max Queue Count = 425
(0002750768) CIpEvent::AddInternalEvent - Max Queue Count = 450
(0002774391) CIpEvent::AddInternalEvent - Max Queue Count = 475
(0002793729) CIpEvent::AddInternalEvent - Error Overflow

And this one.
(0003397387) ERROR: Queue size is 500. Queue full!
(0003397395) ERROR: Queue size is 500. Queue full!
(0003397403) ERROR: Queue size is 500. Queue full!
(0003397410) ERROR: Queue size is 500. Queue full!
(0003397417) ERROR: Queue size is 500. Queue full!
(0003397425) ERROR: Queue size is 500. Queue full!
(0003397432) ERROR: Queue size is 500. Queue full!

Any advice ideas welcome...

Comments

  • If you're writing your own UI code, I HIGHLY recommend writing it so that you send directly to the unit rather than through the comm module. If you need the comm module for its queue, I again recommend using your own queue.

    On startup, the comm module polls each unit for everything (I mean everything: the mute state and level of all possible channels, phone book entries, labels, crosspoint references... everything!). If you've got many units on the module, it's likely getting hundreds, possibly thousands, of requests for information from each unit on startup and overloading the module.

    I have been trying to use the module for over 10 different systems now, and I've come to the conclusion that writing my own code is easier. Now that I have my own code, I'd never go back.
  • syslocksyslock Posts: 45
    Thanks for the response Jeff,
    When defining the modules should they have the same module instance name.
    eg:
    define_module 'ClearOne_ConvergeGateway_Comm_dr1_0_0' ConvergeMdl(vdvConverge880TA1, dvConverge880TA)
    define_module 'ClearOne_ConvergeGateway_Comm_dr1_0_0' ConvergeMdl(vdvConverge880TA2, dvConverge880TA)
    define_module 'ClearOne_ConvergeGateway_Comm_dr1_0_0' ConvergeMdl(vdvConverge880TA3, dvConverge880TA

    or should the be unique
    define_module 'ClearOne_ConvergeGateway_Comm_dr1_0_0' ConvergeMdl1(vdvConverge880TA1, dvConverge880TA)
    define_module 'ClearOne_ConvergeGateway_Comm_dr1_0_0' ConvergeMdl2(vdvConverge880TA2, dvConverge880TA)
    define_module 'ClearOne_ConvergeGateway_Comm_dr1_0_0' ConvergeMdl3(vdvConverge880TA3, dvConverge880TA

    In the example workspace that comes with the module the programmer uses the same module instance name?
    I can't believe that AMX would go to the trouble to write a module that can only handle a few Converge devices.
  • jweatherjweather Posts: 320
    syslock wrote: »
    I can't believe that AMX would go to the trouble to write a module that can only handle a few Converge devices.

    Ha! This is pretty much Standard Operating Procedure with Duet modules. They work great as long as they're the only module in your program, and you weren't planning to use the processor for anything else... oh, and you don't want to use any functionality that the programmer didn't bother to implement.

    Sorry, but I don't think I've ever successfully deployed a Duet module. I've started a few projects out using them, then wound up scrapping them for some reason or another.
Sign In or Register to comment.