First use of i2c from parallel output processing


Closed Thread
Results 1 to 11 of 11

Hybrid View

  1. #1
    Join Date
    Oct 2009
    Posts
    583


    Did you find this post helpful? Yes | No

    Default Re: First use of i2c from parallel output processing

    Are you wanting to turn on/off each of the 16 lamps in each of the segments individually, or just turn on/off all 16 lamps at the same time. If they are RGB, do you want to be able to change each of the RGB components of each lamp?

    If I was going to do this I would either look at DMX and addressable LEDs / drivers, or, if you still wanted to do this with a PIC, then I would use 3 x PCA9685's per segment, one each for the individual R, G and B segment for each lamp. This way you can not only produce whatever colour you want, but also any brightness you want, and if you're clever even have it chasing and making patterns.

  2. #2
    Join Date
    Jun 2011
    Location
    Indian Harbour Nova Scotia
    Posts
    108


    Did you find this post helpful? Yes | No

    Default Re: First use of i2c from parallel output processing

    Attached is my proposal. One PIC driving 7 MCP23017 port expanders, driving 6-16 channel triac boards in a matrix (the seventh board is the matrix controller that controls what segment gets turned on and what color light). In other words I have to present the matrix code and the individual light code at the same time, like a logical AND circuit.

    The "matrix controller" could be another i2c device, or it could just be 9 channels of DIO from the PIC, 6 channels for each segment of the star and 3 for the color, depending how easy it is to program the i2c version. I'm thinking of "repeated start" in the i2c code where a stop is not sent at the end of the string, but a start is instead. That way I can push the code to the MCP23017 simultaneously.

    If I do the 9 channel DIO, then I can just put the i2c individual-light code into the same loop that defines what lights are going to light up. Make sense?

    I envision it like this: 1) determine what segment to light, 2) determine what color, 3)enable those triacs and hold, 4)determine 16 bit light pattern to display, 5) transmit to I2C network. As soon as that happens of course, the lights should light. Then the code will jump to next routine.

    The triac matrix is not a problem. I have that running now with straight DIO outputs from a PIC.
    Attached Images Attached Images  

  3. #3
    Join Date
    Jun 2011
    Location
    Indian Harbour Nova Scotia
    Posts
    108


    Did you find this post helpful? Yes | No

    Default Re: First use of i2c from parallel output processing

    I made a model, using mono-color LED, and I2C port expanders. Worked extremely well.
    I then made a model using RGB LEDs, again with port expanders and wired in a matrix so I could turn on just the red, just the green, blue, or any other combination. Of 16 LEDS I could light up just one, in any color. Great. I'm on a roll.
    I made a small "test bench" using SSRs and 110V incandescent bulbs, using the SSRs in a matrix (column and row). There was some leakage through bulbs that were not supposed to be on (not triggered by an SSR) but for the most part it was manageable. So I scaled it up to the proper size: 48 incandescent bulbs in RGB colors (16 of each) and fed by 16 SSRs. For the color I had 3 SSRs feeding a "color bus". Didn't work. So much leakage through the bulbs (they aren't like LEDs, diodes and one way current) that when I tried to light ONE bulb, I get all three colors active. This even though I might only activate the Red color bus for example. I'm hooped. Not sure what to do now.

  4. #4
    Join Date
    Apr 2014
    Location
    OK
    Posts
    557


    Did you find this post helpful? Yes | No

    Default Re: First use of i2c from parallel output processing

    Maybe add diodes so the bulbs work like LEDs?

  5. #5
    Join Date
    Jun 2011
    Location
    Indian Harbour Nova Scotia
    Posts
    108


    Did you find this post helpful? Yes | No

    Default Re: First use of i2c from parallel output processing

    It's been a while since I was here 'cause I was really into getting the Arduino/AC matrix going. AC matrix with triacs or SSRs does not work. The matrix part works but there is too much leakage between the rows and columns of incandescent bulbs. I abandoned that project and now going to high intensity 3-10 W RGB LEDs. I currently have a model where I can light individual RGB LEDs in any fashion or color, through port expanders (MCP23017) and 3 DIO from an Arduino UNO. Well, I'm about to abandon the Arduino!! It's a great development tool if you can get through that absolutely horrid C++. I've been using it for 5 months now and it is a real PITA! Syntax will kill you, and the error reporting may as well not exist because the error message NEVER relates to the problem. I never had problems with PBP, using a LabX-1 from MELabs for development, then making my own MCU board. I'm going back that way. I'd like to thank all those that replied to my initial question which was kind of ..uh..stupid, now that I know I'm doing!! You guys have given me some good insight on how to get variables properly defined to make coding easier down the line. I have "stuff" running (16 LEDs each on 5 boards with a 16 channel port expander ) but to go further means more C++ thrashing. I spend more time fixing syntax than I do programming. I'm tired of it. Giving up. Going back to PIC and PBP.

  6. #6
    Join Date
    Jun 2011
    Location
    Indian Harbour Nova Scotia
    Posts
    108


    Did you find this post helpful? Yes | No

    Default Re: First use of i2c from parallel output processing

    I basically want to light "everything" in as many patterns as possible: light chasers, all 16 at time, blinking, fading (maybe if I use PWM), rotating, etc, etc. I want individual control over 110 RGB high intensity (3-10 w) LEDs. Yeah, I'll need tons of power (each LED uses about 400mA @12 Volts (Vf about 9 volts since it is multi LED). Anyway, that's a issue down the road that I have to do some actual calculations for. I need my I2C to work in PBP now, having abandoned the Aruduino. Wish I could use addressable LEDs, but they don't have the luminosity to be viewed from 500 yards. My new matrix is three DIOs for RGB (to 110 lights) and 7-16 channel port expanders, as shown in diagram further down this thread. Forget about triacs. They don't work in a matrix with incandescent filaments.

Similar Threads

  1. SerIn with Parallel Port output
    By bodgetts in forum Serial
    Replies: 2
    Last Post: - 7th November 2011, 19:30
  2. Parallel processing question
    By Macgman2000 in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 13th October 2011, 05:23
  3. audio processing
    By mischl in forum mel PIC BASIC Pro
    Replies: 17
    Last Post: - 7th August 2006, 17:36
  4. Processing lengthy strings
    By sougata in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 21st March 2006, 05:27
  5. Replies: 2
    Last Post: - 20th January 2006, 21:09

Members who have read this thread : 0

You do not have permission to view the list of names.

Tags for this Thread

Posting Permissions

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