Shop OBEX P1 Docs P2 Docs Learn Events
Driving a WS1228B LED Module(With Minimal Extra Parts) - Page 2 — Parallax Forums

Driving a WS1228B LED Module(With Minimal Extra Parts)

2»

Comments

  • If it could be found, would high isopropyl alcohol work? I have a medical use bottle of 70% isopropyl alcohol. A big one at that.

    How does the dispenser work?

    I can snag acid brushes easily, didn’t know I’d need them. Only been soldering for a year, high school makes finding time for it even more difficult.
  • 91% would be better.
    https://www.cvs.com/shop/cvs-health-91-isopropyl-alcohol-32-oz-prodid-1011920?skuid=216440

    I order 99% from a local pharmacy for about $8.00 a bottle.

    I sometimes use "chip" brushes from Home Depot:

    https://www.homedepot.com/p/1-in-Flat-Chip-Brush-1500-1/100626121

    and cut the bristles down to about 3/4" for a stiff action like an acid brush.

    The dispenser has a flip up lid, and you push down on the top to siphon a bit of liquid to the pool in the top cap. This prevents the fluid in the bottom to become contaminated from flux on the brush.
  • I see. Quite an interesting design. I will see what I can find.
  • AwesomeCronk,

    70% doesn't clean as well as the 90%+ because it's 1/3 water.
    70% also doesn't dry as quick.

    The right tools and right technique will make your soldering a lot better.

    As my instructor would say, "You need a good MECHANICAL as well as electrical connection".
    Clamp or tape parts together so they don't move or slightly bend the outermost pins so they lock in place.

    The only thing I royally suck at is Surface Mount because I was never taught the proper technique.
  • AwesomeCronk, I weighed in because yesterday I happened to hook up a strip of four B's myself. I am powering it from the 3v3 supply of a DemoBoard and signaling directly from Propeller pin P1, and it works fine, even in blue. I do agree that you should put ground and power at the same end of the string. While it's theoretically the same level at each end in practice there are losses and small variations which can cause noise and other problems. If you power from the same end any voltage drops will be the same on ground and power, so that signal will float at about the same level for everybody.
  • No Static At AllNo Static At All Posts: 9
    edited 2019-02-22 05:40
    Jeff Haas wrote: »

    Check your connections - note that the data pin for the LEDs is 14 (in the con section labelled { io pins } ). This can be changed if needed.


    AwesomeCronk,
    Disconnect the yellow wire from P0 and connect it to P14.

    The archive you uploaded drives P14.

    LEDS = 14

    The picture you uploaded shows a connection to P0.

    Perhaps the random colors are the result of connecting to an undriven pin.
    As an experiment try connecting to other undriven pins and cycling power to see if you get random colors.
  • AwesomeCronkAwesomeCronk Posts: 1,055
    edited 2019-02-23 13:16
    Note that Jeff said it can be changed.
    I have changed the code to use pin 0. I’m pretty sure that a voltage difference is my problem.
  • AwesomeCronk.

    Does each module work by itself?
  • Nothing works. Not one of the three work.
  • AwesomeCronk.

    Is there continuity between each header pin and the corresponding pin of the IC?

    Also if you gently move the header pins do it move and do you see the solder joint move?
  • The joints and pins remain solid. Though I fear destroying the IC with my multimeter trying to test continuity.
  • Cronk, here is a little test object I did. I was actually modifying an app I had written to use the Radio Shack RGB strips to use recently acquired WS1228b's. This self-contained test object will turn the first four LED's blue, green, yellow, and red. It took some time to debug it so while it's crufty, it's also self-contained and proven. Power the WS1228b's from 3v3, not 5 volt; they do work, unlike the original WS1228's. This ensures that the Propeller logic meshes with the WS logic, and I'm looking at the strip glow as I write this.
  • Powering by 3.3v. I shall try this.
  • RaymanRayman Posts: 13,803
    Very glad to hear it can work at 3.3V. Hopefully, the Adafruit version (from Digikey) is like this too...
  • @localroger
    I need your help. I have wired up my strip of LEDs. I have 3 LEDs, again starting on pin0. How do I set up your program to run? Do I need to write a demo for it?
  • @localroger
    I need your help. I have wired up my strip of LEDs. I have 3 LEDs, again starting on pin0. How do I set up your program to run? Do I need to write a demo for it?

    You are using the modules that surfaced several years earlier as the freely included items when we bought items from the site, yes? Find where it says P14 in the original code and change to P0.

    Sidebar here, I've driven similar ones from Adafruit, Limor calls them Neopixels, and these were her breadboard friendly ones using both the JohnnyMac solution on the Prop, and her code on the thing from Italy. (Well it was a module that she designed and Maker Shed sold in an Altoids style tin.)

    I found that the ones from Parallax ran faster using the code we are discussing versus the ones from Adafruit.
    ----
    And this is being supported by the Rebel Alliance with its archives buried on Hoth.
  • AwesomeCronkAwesomeCronk Posts: 1,055
    edited 2019-03-08 00:49
    @localroger
    Your code references another object:
    obj
    
    '  strip2 : "jm_tm1803"
    
    
    Your attached code only includes the top file, jm_rgbx_like1803.spin.

    EDIT:
    after seeing the code snippet on the forum page, I noticed that the reference to lower file is commented out. The red back color of the PropellerTool IDE hid that.
  • Yes in testing I had the like_1803 object mirroring everything to the actual tm_1803 object so I could compare the two light strips. I commented out the mirror code but didn't delete it in case I should need it later.
  • Ok thanks. Will this start up and run on its own? Or do I need to write a demo?
  • JonnyMacJonnyMac Posts: 8,912
    edited 2019-03-18 15:57
    @AwesomeCronk: As you develop your code, I suggest you write an independent parent object to call on child objects like my jm_rgbx_pixel code. Clobbering a library into a top object is not good form in my opinion.

    I cannot find jm_tm1803.spin on my computer which means it's very old and probably out of date. To that end I added the TM1803 to my jm_rgbx_pixel library (latest update is attached). That said, I don't have any TM1803 LEDs, so the only thing I could do is look at the output with a 'scope (see image). Note that the startx() method and methods that call it have changed since the TM1803 is not an 800kHz device like the others. This shouldn't affect many people who are probably using the named methods for specific LED types.
  • Jon,

    I am not sure how that code originated but RS_Jim posted code with that name here in the 1st post.
    https://forums.parallax.com/discussion/153352/driver-for-radio-shack-tricolor-led-strip

    That same code was modified in this post.
    http://forums.parallax.com/discussion/159874/ws2811-2812-programming-help-needed/p1
  • JonnyMacJonnyMac Posts: 8,912
    edited 2019-03-18 16:29
    Okay, no wonder I couldn't find it -- it's a modification of one of my other objects. I do find it irritating, though, that one of the files looks like it was modified by me; the filename and the internal header information don't match which I would never release.
Sign In or Register to comment.