Feather to drive a pair of 28byj-48 Unipolar Steppers and Servo for a TurtlePlotBot
TurtlePlotBot Program Example
x-python-script - 193.00 bytes - 12/13/2019 at 05:13
Schematic for the Unipolar-Feather
Adobe Portable Document Format - 51.85 kB - 12/13/2019 at 04:39
The new Feather boards arrived just as I was leaving for work today. I caught myself looking at them several times throughout the day and wondering if they were going to work as well as they looked. It was a long day, but at least I got to write some python code today.
I rushed home, heated up the iron, grabbed the headphones and put on some nice relaxing soldering music. Nine Inch Nails' 'Pretty Hate Machine' goes well with the smell of rosin core solder. A few songs later and I was ready to test. And... it... didn't... work. It didn't get hot or smoke but it didn't work. To make a long story short, I had committed an older version of the CircuitPython driver to github and had to figure out where the correct version was stashed. Once that task was complete, I copied the correct driver to the M4 Feather Express and everything worked.
I had two of the five Feather boards pre-assembled with the SMT components so the next task will be to pull the chips off the old boards and migrate them to the new bare boards. Should be interesting.
The UniFeatherBot Repo is now up on GitHub. The new Unipolar-Feather boards will be here later this week. If everything goes well, I'll update the build instructions to match.
I finished the new layout. I replace the tiny the power switch in the process, It should not catch fire if both the steppers and the servo are stalled at the same time. Not sure how that would happen unless there is a cat in the area. I double and tripple checked the VDD and VSS lines. I took a nap, then double and tripple checked the VDD and VSS lines. Made lunch, then double and tripple checked the VDD and VSS lines. I finally got brave and ordered the boards.
The new Feather boards arrived today, they look pretty good.
It didn't take long to solder the rest of the parts and take a few pictures.
Looking good so far. While assembling the board on the robot, I think it would have been better to have placed the MOTOR switch on the left, the PWR connector on the top and the RESET button on the bottom.
I powered up the robot... and nothing. A quick disassembly and another check under the microscope didn't reveal anything obvious. I pulled up the schematic, datasheets and gerber files and traced all the connections. Everything looked good. The pc board matched the schematic, the orientation of the components were correct and no solder bridges or shorts were found.
I reassembled the robot and tried it again, still no luck. While going over the datasheets one more time I noticed the MCP23008 i2c port expander was getting hot, really hot, big mistake hot. Finally a clue. A quick check of the schematic and a double check of the gerber file confirmed it. I had VDD and VSS pins reversed.
Disappointing. On the positive side I now have an excuse to redo them with a better layout.
The new Feathers will soon be here and I can't wait to see how they work. In the meantime I've been working on the documentation for robot that uses this Feather. It is a work in progress.
After using the Unipolar-Feather in a stacked configuration the lack of a reset button became obvious. I played around trying to free up some room to add the reset button but kept coming up short of space. So I got over my fear of tiny components after discovering that I could have the PCB house do the assembly of the really small components without breaking my budget. I think this will work.
It should work well in my future Makerspace classes as people new to soldering won't have to solder the SOIC's of the previous version. Most people don't have problems soldering the headers and I think they will able to get some of that "I built it" satisfaction while freeing up time that we can spend on how to run and program the robot.
The ability to use truly tiny components is seductive.