Author Topic: Technical Question  (Read 2195 times)

Offline rm357

  • Sr. Member
  • ****
  • Posts: 1282
  • 31088
Technical Question
« Reply #15 on: December 06, 2012, »
Did you send a 170 followed by your data bytes?

In hex, AA + 3 data bytes
You probably need to pad it out with at least 100 zeros before the pattern repeats to allow the DSC time to act before the counters get reset.  You might also try swapping the + and - data lines. I've gotten them backwards on more than one occasion...
Robert
Warner Robins, Georgia, USA

Offline JonB256

  • Sr. Member
  • ****
  • Posts: 672
    • My website
Re: Technical Question
« Reply #16 on: December 06, 2012, »
What are data are you transmitting from the Arduino?

A Pixelnet stream to the RS485 chip would be 4096 bytes of some specific or even random value(s), then a single byte of 170ascii (AA Hex) or 10101010 binary, then another 4096 bytes.

The ONLY time a value of 170 is allowed is between the 4K blocks.

Do that 30 times per second and you'll get reliable output from the Hub and then to the SSC or DSC.

Perhaps this is oversimplified, but this is what I got from my reading of RJ's Pixelnet protocol explanation.

Offline rm357

  • Sr. Member
  • ****
  • Posts: 1282
  • 31088
Technical Question
« Reply #17 on: December 06, 2012, »
You also need to tie pin 3 on the 485 chip high (+v) to enable output
Data from the audrino goes into pin 4.
Robert
Warner Robins, Georgia, USA

Offline TexasStingray

  • Coop Manager
  • Sr. Member
  • *
  • Posts: 791
Re: Technical Question
« Reply #18 on: December 06, 2012, »
You are not allowed to view links. Register or Login
Did you send a 170 followed by your data bytes?

In hex, AA + 3 data bytes
You probably need to pad it out with at least 100 zeros before the pattern repeats to allow the DSC time to act before the counters get reset.  You might also try swapping the + and - data lines. I've gotten them backwards on more than one occasion...


whats the + 3 data bytes

I do a

Serial.write((byte) 0xAA);
for(int i = 0; i < 4096; ++i)
  Serial.write((byte)0xFF);

this should make all channels max on of 255.
Scott Wanner
TX

Watch my videos
You are not allowed to view links. Register or Login

Offline TexasStingray

  • Coop Manager
  • Sr. Member
  • *
  • Posts: 791
Re: Technical Question
« Reply #19 on: December 07, 2012, »
Well, still no luck. I did creat a vb program that sends DMX/Pixelnet to the usb dongle, so i know i got the concept down. It's just getting a device to send the pixelnet it self.
Scott Wanner
TX

Watch my videos
You are not allowed to view links. Register or Login

Offline wftxlites

  • Sr. Member
  • ****
  • Posts: 158
Re: Technical Question
« Reply #20 on: December 08, 2012, »
What do you mean by getting a device to send the pixelnet it self? Do you mean the data to the node or pixelnet to a SS controller?

Offline chrisatpsu

  • Sr. Member
  • ****
  • Posts: 3729
  • ahhh, yes... my new blink-i-nator 3000!!!
Re: Technical Question
« Reply #21 on: December 08, 2012, »
to me, i read it as, he got a vb program to send data to the dongle.   but he has yet to get his arduino to send it the the hub/ssc
To rule the entire tri-state area!  What's that? Perry the Platypus!!!

Offline TexasStingray

  • Coop Manager
  • Sr. Member
  • *
  • Posts: 791
Re: Technical Question
« Reply #22 on: December 08, 2012, »
chrisatpsu is correct, I can send the pixelnet to the USB Dongle but I want to have a hardware device that has the pixelnet sequence stored in it, a small sequence, that will send the pixelnet code the a device like a DSC with out the use of a computer or the conductor. But send the pixelnet out like a conductor. I would use power injection to provide the 12 volts say from a CAR. This way I can attach lights to it.
Scott Wanner
TX

Watch my videos
You are not allowed to view links. Register or Login

Offline rm357

  • Sr. Member
  • ****
  • Posts: 1282
  • 31088
Technical Question
« Reply #23 on: December 09, 2012, »
What is 3 bytes?

If you are testing using a single DSC programmed for channel 1, there is really no reason to transmit all 4096 bytes in the universe. Sync + 3 data bytes + some padding. If the transmission is not repeating, you may want to pad the beginning with a couple of bytes. Sometimes the first byte or two have framing issues and no data is received.

Sync resets the channel number counter. When the first address is reached,the DSC or ssc will start collecting data until its buffer is full, then the dsc will use the values to set the timing for the PWM output that dims the LEDs or the ssc will start transmitting string data to the nodes. The dsc buffer should only be 3 bytes. The ssc buffer is 3 * #of nodes. Make sure the ssc start address + 3 * #of nodes does not exceed 4096 - if it does that string will always be a frame behind.
Robert
Warner Robins, Georgia, USA