controlling color kinetics spotlights on network

jts3k's icon

hi maxlist,

i was wondering if anyone has recently had success in controlling color kinetics LED spotlights using the network protocol?

but i'm a java/mxj novice and didn't get any immediate results from aka.datagram (aside from a few crashes). does anyone have a working patch they'd be willing to share?

thanks!
jesse

volker böhm's icon

i've no experience with the color kinetics, but here is a simple java class demonstrating how to send raw bytes from max using the udp protocol.
http://www.esbasel.ch/Downloads/UdpSend+RecvRaw.zip

you can use the UdpSendRaw class directly in max to send a list of integer values which represent raw byte values (0 - 255) to a specified address, or you might want to use the code as a starting point for your own experiments (sources are included).
apperently you need to send a list of 537 bytes, which might cause some trouble in max4 (256 list length limit), but should be no problem using max5.

aka.datagram should work fine, too. maybe send the patch you are working on.
volker.

jts3k's icon

success! volker - thanks tons for sending the java example, it worked without any tweaking. using "mxj UdpRecvRaw" i was able to view the messages CK's software was sending. they turned out to be formatted slightly differently than had been suggested in the earlier thread. once i had the correct format it was pretty easy to send the correct messages from Max using "mxj UdpSendRaw" as well as aka.datagram.

below are the two patches if anyone would like to try this themselves. this was done with a PDS 150e interface and a Colorblast 12 fixture.

~~

using mxj UdpSendRaw:

{
    "boxes" : [         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "tested on a PDS 150e interface and Colorblast 12 fixture",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 15.0, 144.77417, 245.0, 34.0 ],
                "id" : "obj-45",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial Italic",
                "presentation_rect" : [ 47.0, 204.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "figured out in 2010 by a collection of people using some collective knowledge.",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 15.0, 114.774185, 245.0, 34.0 ],
                "id" : "obj-44",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial",
                "presentation_rect" : [ 48.0, 172.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "COLOR KINETICS NETWORK CONTROLLER",
                "linecount" : 3,
                "fontsize" : 26.403702,
                "patching_rect" : [ 15.0, 15.0, 278.0, 98.0 ],
                "id" : "obj-43",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial Bold",
                "presentation_rect" : [ 43.0, 91.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "IP of the CK interface",
                "fontsize" : 12.0,
                "patching_rect" : [ 105.0, 375.0, 124.0, 20.0 ],
                "id" : "obj-42",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial",
                "presentation_rect" : [ 157.0, 386.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "actual outgoing bytes",
                "fontsize" : 12.0,
                "patching_rect" : [ 195.0, 540.0, 124.0, 20.0 ],
                "id" : "obj-41",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial",
                "presentation_rect" : [ 759.0, 458.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "make the right amount of 0's and pack them into a message to be joined with your header and RGB value",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 420.0, 300.0, 337.0, 34.0 ],
                "id" : "obj-40",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial",
                "presentation_rect" : [ 387.0, 319.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "how many 0's need to be tacked on the end of this message to make it 533 bytes total?",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 420.0, 210.0, 347.0, 34.0 ],
                "id" : "obj-39",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial",
                "presentation_rect" : [ 383.0, 219.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "header for outgoing message",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 675.0, 120.0, 150.0, 34.0 ],
                "id" : "obj-38",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial",
                "presentation_rect" : [ 647.0, 134.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "RGB value (0 - 255) for first fixture",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 600.0, 30.0, 150.0, 34.0 ],
                "id" : "obj-37",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "loadbang",
                "fontsize" : 12.0,
                "patching_rect" : [ 15.0, 315.0, 60.0, 20.0 ],
                "id" : "obj-35",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "bang" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "message",
                "text" : "$1 $2 $3",
                "fontsize" : 12.0,
                "patching_rect" : [ 330.0, 90.0, 57.0, 18.0 ],
                "id" : "obj-34",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial",
                "presentation_rect" : [ 609.0, 93.0, 0.0, 0.0 ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "swatch",
                "patching_rect" : [ 330.0, 15.0, 258.0, 65.0 ],
                "compatibility" : 1,
                "id" : "obj-27",
                "numinlets" : 3,
                "numoutlets" : 2,
                "outlettype" : [ "", "float" ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "prepend 4 1 220 74 1 0 1 1 0 0 0 0 0 0 0 0 255 255 255 255 0",
                "fontsize" : 12.0,
                "patching_rect" : [ 330.0, 120.0, 338.0, 20.0 ],
                "id" : "obj-15",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "message",
                "text" : "host 10.0.0.24",
                "fontsize" : 11.619446,
                "patching_rect" : [ 15.0, 375.0, 84.0, 18.0 ],
                "id" : "obj-1",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "mxj UdpSendRaw 6038",
                "fontsize" : 13.745002,
                "patching_rect" : [ 15.0, 450.0, 155.0, 22.0 ],
                "id" : "obj-23",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "message",
                "text" : "4 1 220 74 1 0 1 1 0 0 0 0 0 0 0 0 255 255 255 255 0 211 254 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0",
                "linecount" : 10,
                "fontsize" : 8.708448,
                "patching_rect" : [ 330.0, 450.0, 434.0, 105.0 ],
                "id" : "obj-8",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "zl 1000 join",
                "fontsize" : 12.0,
                "patching_rect" : [ 330.0, 405.0, 80.0, 20.0 ],
                "id" : "obj-30",
                "numinlets" : 2,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t i i",
                "fontsize" : 12.0,
                "patching_rect" : [ 360.0, 240.0, 33.5, 20.0 ],
                "id" : "obj-29",
                "numinlets" : 1,
                "numoutlets" : 2,
                "outlettype" : [ "int", "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "zl 1000 group",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 360.0, 83.0, 20.0 ],
                "id" : "obj-28",
                "numinlets" : 2,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t l b l",
                "fontsize" : 12.0,
                "patching_rect" : [ 330.0, 150.0, 49.0, 20.0 ],
                "id" : "obj-16",
                "numinlets" : 1,
                "numoutlets" : 3,
                "outlettype" : [ "", "bang", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t 0",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 330.0, 24.0, 20.0 ],
                "id" : "obj-13",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "uzi 2",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 300.0, 49.0, 20.0 ],
                "id" : "obj-12",
                "numinlets" : 2,
                "numoutlets" : 3,
                "outlettype" : [ "bang", "bang", "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "!- 533",
                "fontsize" : 12.0,
                "patching_rect" : [ 360.0, 210.0, 41.0, 20.0 ],
                "id" : "obj-11",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "zl len",
                "fontsize" : 12.0,
                "patching_rect" : [ 360.0, 180.0, 39.0, 20.0 ],
                "id" : "obj-3",
                "numinlets" : 2,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
],
    "lines" : [         {
            "patchline" :             {
                "source" : [ "obj-27", 0 ],
                "destination" : [ "obj-34", 0 ],
                "hidden" : 0,
                "midpoints" : [ 339.5, 78.0, 339.5, 78.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-35", 0 ],
                "destination" : [ "obj-1", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-34", 0 ],
                "destination" : [ "obj-15", 0 ],
                "hidden" : 0,
                "midpoints" : [ 339.5, 112.0, 339.5, 112.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-15", 0 ],
                "destination" : [ "obj-16", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-12", 0 ],
                "destination" : [ "obj-13", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-13", 0 ],
                "destination" : [ "obj-28", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-11", 0 ],
                "destination" : [ "obj-29", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-3", 0 ],
                "destination" : [ "obj-11", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-1", 0 ],
                "destination" : [ "obj-23", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-30", 0 ],
                "destination" : [ "obj-23", 0 ],
                "hidden" : 0,
                "midpoints" : [ 339.5, 434.0, 24.5, 434.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-16", 1 ],
                "destination" : [ "obj-12", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-30", 0 ],
                "destination" : [ "obj-8", 1 ],
                "hidden" : 0,
                "midpoints" : [ 339.5, 434.0, 754.5, 434.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-16", 0 ],
                "destination" : [ "obj-30", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-16", 2 ],
                "destination" : [ "obj-3", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-28", 0 ],
                "destination" : [ "obj-30", 1 ],
                "hidden" : 0,
                "midpoints" : [ 354.5, 392.0, 400.5, 392.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-29", 0 ],
                "destination" : [ "obj-12", 1 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-29", 1 ],
                "destination" : [ "obj-28", 1 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
]
}

~~

using aka.datagram:

{
    "boxes" : [         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t b l",
                "fontsize" : 13.745002,
                "patching_rect" : [ 60.0, 465.0, 33.0, 22.0 ],
                "id" : "obj-14",
                "numinlets" : 1,
                "numoutlets" : 2,
                "outlettype" : [ "bang", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "message",
                "text" : "length 533",
                "fontsize" : 12.0,
                "patching_rect" : [ 30.0, 375.0, 67.0, 18.0 ],
                "id" : "obj-5",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "udpsend 10.0.0.24 6038",
                "fontsize" : 12.0,
                "patching_rect" : [ 30.0, 555.0, 140.0, 20.0 ],
                "id" : "obj-2",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "tested on a PDS 150e interface and Colorblast 12 fixture",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 30.0, 159.77417, 245.0, 34.0 ],
                "id" : "obj-45",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial Italic"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "figured out in 2010 by a collection of people using some collective knowledge.",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 30.0, 129.774185, 245.0, 34.0 ],
                "id" : "obj-44",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "COLOR KINETICS NETWORK CONTROLLER",
                "linecount" : 3,
                "fontsize" : 26.403702,
                "patching_rect" : [ 30.0, 30.0, 278.0, 98.0 ],
                "id" : "obj-43",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial Bold"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "IP of the CK interface",
                "fontsize" : 12.0,
                "patching_rect" : [ 120.0, 390.0, 124.0, 20.0 ],
                "id" : "obj-42",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "actual outgoing bytes",
                "fontsize" : 12.0,
                "patching_rect" : [ 210.0, 555.0, 124.0, 20.0 ],
                "id" : "obj-41",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "make the right amount of 0's and pack them into a message to be joined with your header and RGB value",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 435.0, 315.0, 337.0, 34.0 ],
                "id" : "obj-40",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "how many 0's need to be tacked on the end of this message to make it 533 bytes total?",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 435.0, 225.0, 347.0, 34.0 ],
                "id" : "obj-39",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "header for outgoing message",
                "linecount" : 3,
                "fontsize" : 12.0,
                "patching_rect" : [ 690.0, 135.0, 103.0, 48.0 ],
                "id" : "obj-38",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "comment",
                "text" : "RGB value (0 - 255) for first fixture",
                "linecount" : 2,
                "fontsize" : 12.0,
                "patching_rect" : [ 615.0, 45.0, 156.0, 34.0 ],
                "id" : "obj-37",
                "numinlets" : 1,
                "numoutlets" : 0,
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "loadbang",
                "fontsize" : 12.0,
                "patching_rect" : [ 30.0, 330.0, 60.0, 20.0 ],
                "id" : "obj-35",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "bang" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "message",
                "text" : "$1 $2 $3",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 105.0, 57.0, 18.0 ],
                "id" : "obj-34",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "swatch",
                "patching_rect" : [ 345.0, 30.0, 258.0, 65.0 ],
                "compatibility" : 1,
                "id" : "obj-27",
                "numinlets" : 3,
                "numoutlets" : 2,
                "outlettype" : [ "", "float" ]
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "prepend 4 1 220 74 1 0 1 1 0 0 0 0 0 0 0 0 255 255 255 255 0",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 135.0, 338.0, 20.0 ],
                "id" : "obj-15",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "aka.datagram",
                "fontsize" : 13.745002,
                "patching_rect" : [ 30.0, 510.0, 95.0, 22.0 ],
                "id" : "obj-23",
                "numinlets" : 1,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "message",
                "text" : "4 1 220 74 1 0 1 1 0 0 0 0 0 0 0 0 255 255 255 255 0 0 164 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0",
                "linecount" : 10,
                "fontsize" : 8.708448,
                "patching_rect" : [ 345.0, 465.0, 434.0, 105.0 ],
                "id" : "obj-8",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "zl 1000 join",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 420.0, 80.0, 20.0 ],
                "id" : "obj-30",
                "numinlets" : 2,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t i i",
                "fontsize" : 12.0,
                "patching_rect" : [ 375.0, 255.0, 33.5, 20.0 ],
                "id" : "obj-29",
                "numinlets" : 1,
                "numoutlets" : 2,
                "outlettype" : [ "int", "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "zl 1000 group",
                "fontsize" : 12.0,
                "patching_rect" : [ 360.0, 375.0, 83.0, 20.0 ],
                "id" : "obj-28",
                "numinlets" : 2,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t l b l",
                "fontsize" : 12.0,
                "patching_rect" : [ 345.0, 165.0, 49.0, 20.0 ],
                "id" : "obj-16",
                "numinlets" : 1,
                "numoutlets" : 3,
                "outlettype" : [ "", "bang", "" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "t 0",
                "fontsize" : 12.0,
                "patching_rect" : [ 360.0, 345.0, 24.0, 20.0 ],
                "id" : "obj-13",
                "numinlets" : 1,
                "numoutlets" : 1,
                "outlettype" : [ "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "uzi 2",
                "fontsize" : 12.0,
                "patching_rect" : [ 360.0, 315.0, 49.0, 20.0 ],
                "id" : "obj-12",
                "numinlets" : 2,
                "numoutlets" : 3,
                "outlettype" : [ "bang", "bang", "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "!- 533",
                "fontsize" : 12.0,
                "patching_rect" : [ 375.0, 225.0, 41.0, 20.0 ],
                "id" : "obj-11",
                "numinlets" : 2,
                "numoutlets" : 1,
                "outlettype" : [ "int" ],
                "fontname" : "Arial"
            }

        }
,         {
            "box" :             {
                "maxclass" : "newobj",
                "text" : "zl len",
                "fontsize" : 12.0,
                "patching_rect" : [ 375.0, 195.0, 39.0, 20.0 ],
                "id" : "obj-3",
                "numinlets" : 2,
                "numoutlets" : 2,
                "outlettype" : [ "", "" ],
                "fontname" : "Arial"
            }

        }
],
    "lines" : [         {
            "patchline" :             {
                "source" : [ "obj-30", 0 ],
                "destination" : [ "obj-14", 0 ],
                "hidden" : 0,
                "midpoints" : [ 354.5, 449.0, 69.5, 449.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-14", 1 ],
                "destination" : [ "obj-23", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-14", 0 ],
                "destination" : [ "obj-23", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-35", 0 ],
                "destination" : [ "obj-5", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-5", 0 ],
                "destination" : [ "obj-23", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-23", 0 ],
                "destination" : [ "obj-2", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-29", 1 ],
                "destination" : [ "obj-28", 1 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-29", 0 ],
                "destination" : [ "obj-12", 1 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-28", 0 ],
                "destination" : [ "obj-30", 1 ],
                "hidden" : 0,
                "midpoints" : [ 369.5, 407.0, 415.5, 407.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-16", 2 ],
                "destination" : [ "obj-3", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-16", 0 ],
                "destination" : [ "obj-30", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-30", 0 ],
                "destination" : [ "obj-8", 1 ],
                "hidden" : 0,
                "midpoints" : [ 354.5, 449.0, 769.5, 449.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-16", 1 ],
                "destination" : [ "obj-12", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-3", 0 ],
                "destination" : [ "obj-11", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-11", 0 ],
                "destination" : [ "obj-29", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-13", 0 ],
                "destination" : [ "obj-28", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-12", 0 ],
                "destination" : [ "obj-13", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-15", 0 ],
                "destination" : [ "obj-16", 0 ],
                "hidden" : 0,
                "midpoints" : [ ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-34", 0 ],
                "destination" : [ "obj-15", 0 ],
                "hidden" : 0,
                "midpoints" : [ 354.5, 127.0, 354.5, 127.0 ]
            }

        }
,         {
            "patchline" :             {
                "source" : [ "obj-27", 0 ],
                "destination" : [ "obj-34", 0 ],
                "hidden" : 0,
                "midpoints" : [ 354.5, 93.0, 354.5, 93.0 ]
            }

        }
]
}

volker böhm's icon

good to hear, that it works!
maybe try considering to use 'copy compressed' from the edit menu next time you post a patch.
v