Feather M4 Express and NEOPXL8 M4 Featherwing problems

I am very much a beginner at a lot of this. I am trying to build the Icicle Lights project as shown on the Adafruit site but not getting very far. My main problem is seems to be getting a reliable upload into the Feather. I have managed the upload of ‘Blink’, but anything more complicated I can’t get to work reliably. I did for a while have the Icicle code working intermittently on a test strand, although it seemed to be very unstable depending on which data pin it was connected to. Oh, I am using soldered header pins and sockets for the Feather and Wing. I tried ‘strandtest’ which I couldn’t get to work at all until I took it right back to simply lighting up every pixel. (just using one strand), as well as uploading multiple times before it would work. Simply changing the colour value in code and re-uploading failed, in that the original colour and presumably the original code continued to display. Going back to sketches that had worked didn’t help. I have done some continuity tests on the GND pins on the board and that checks out fine, as does the voltage on the LED strands. I am reasonably confident in my soldering the headers onto the boards, I have done half a dozen or more Fadecandy headers as well as numerous wiring harnesses without a problem. But I have checked them under a microscope. Is there potential for bridging to occur underneath the headers, or ribbon cable socket?
Oh, I have tried the LED strands out on a Fadecandy and they work fine.

One thing I have noticed is that after what seems like a successful upload to the Feather the connection to my laptop closes. This is not mentioned in the guides I have read, but is that standard behaviour?

So, seeing as I can’t get any response from the existing Feathers (2) now, I’m about to start from scratch on a new Feather and Wing. What can I do to give me the best chance of success, what checks can I make along the way?

Hi Phillip

There certainly is. Can be very tricky to find as you normally can’t see it. Sometimes caused by a tiny sliver of tin plating scraping off on the edge of the hole and bridging to an adjacent pin. Easily happens when the hole is small or tight. Another way is over zealous use of solder which can bubble away sight unseen underneath the header or connector. Has been known to occur frequently during the wave or other automated soldering process of years ago. Not sure about now.

I have no idea what a “Feather” or “Featherwing” is and am no programming Guru but I can’t see how a program itself can be intermittent. To me it should actually work or it won’t. I have often seen where a contributor has removed and uploaded a program several times then suddenly it works. Eureka, have fixed it. But is it fixed. I can’t buy it that a program can suddenly start working, carry on for some time then stop again for no apparent reason. There is always some reason. I may be a bit old fashioned but that sort of thing smells to me more like a bad solder or other connection, poorly crimped pin like crimped through plastic insulation (fairly common) only making contact when it feels like it or an intermittent component in the hardware.
Cheers Bob
PS: If a problem is repeatable or occurs during specific circumstances it is not “intermittent”.

1 Like

Hi Phillip,

Sorry to hear you’re having so much trouble with your project! Could you clarify which feather board you’re using? (just for the stuff about upload behaviour)

If you could post some photos on your setup, and any code you’re having doubts about, that’d be super helpful in getting to the bottom of this.

Keen to see this working eventually!
-James

EDIT: Seems I can’t read post titles, apologies, no clarification needed there, but photos and code could still help

2 Likes

Hi all. I might have sorted this out, and how embarrassing. While going over (and over) my procedure in my head, I remembered another soldering project I had done recently, nothing to do with electronics. Light bulb moment, long story short, I have been using absolutely the wrong soldering flux for electronics, and I guess residual acid has been gradual chewing into the circuit board, hence the changing symptoms I had been seeing. I changed flux, redid another feather/wing combo, and it worked like a charm. Still a long way to go with the project, but there is light (LEDs) at the end of the tunnel. So embarrassing, an old head taking on a new challenge is a wicked combination.

1 Like

Hi Phillip
What flux are you using?
You should be using Resin Core Solder where the flux is in 5 cores in the solder. There are different solder alloy combinations including lead free but that is beside the point. Where have you been, on some sort of roofing plumber course. In future use nothing but the above resin cored solder for all normal soldering jobs that you will come across as a hobbyist. There are other situations that would unlikely concern you during your normal days to day activities but you can’t really go wrong with the above.

There are actually resins that don’t need cleaning off but for hobby or home use you don’t really need to worry too much about this.

Better soldering next time.
Cheers Bob

1 Like

Thanks Bob. I do all sorts of soldering mainly in a bit of artwork from scrap wire and copper. I use resin core solder, but I just forgot to swap back to the flux I use to clean the connections before soldering. I have found that cleaning the connections gives a much better result, but the two different fluxes are in very similar containers and I just forgot to use the correct one. But it was your PS on your second reply that got me thinking about the symptoms I was seeing. A progressive deterioration of function. Led me to discover the error of my ways. So thanks for your advice.

1 Like

Hi Phillip
Do yourself a favour and hide the corrosive flux. For electronic work forget this stuff exists and don’t get it any where electronic work, even for “cleaning”.

Don’t worry about this mistake. It is all a learning curve and is OK IF you do learn. There are all sorts of tutorials re soldering pertaining to situations where non corrosion is a must. You may do well to have a look at some. Beware, some You Tube material leaves a bit to be desired sometimes and can be misleading but on the whole there is a lot of information out there.
Cheers Bob

1 Like

I have things working smoothly now. So relieved that it was an easily fixed problem of my own making rather than something indeterminate and mysterious. I did need to make a small modification in the icicle software so that the NeoPXL8 M4 Featherwing worked as expected. The recommended code for the pin list for that featherwing is:

int8_t pins[8] = { 13, 12, 11, 10, SCK, 5, 9, 6 };

I needed to change it to:

int8_t pins[8] = { SCK, 5, 9, 6, 13, 12, 11, 10 };

in order to get the outputs to line up as expected. Now I’m getting picky.

2 Likes

Hi Phillip
Good to hear. Congratulations, firstly on rectifying the problem and secondly recognising the problem was of your own making and letting the Forum users know this.

There are so many threads and problems left up in the air with no acknowledgement of success or otherwise that I very strongly suspect this sort of thing occurs more often than one might think. In other words I suspect that some problems and faults are self inflicted and the owner does not like to admit error or inability.

It would be nice if one knew if the efforts to help have indeed helped or have been in vain. Indeed some advice may be incorrect and would be good to know this also so one could learn and if a mistake has been made not to repeat it.

Once again thanks for letting the forum know the outcome.
Cheers Bob

3 Likes