-
• #2
That's asking a lot of drive from a puck...
Looking at nRF52832 SoC (puck's heart, section 20.4 Electrical Specification p151ff, a 'high-drive pin can source/sink about 15/14mA within specified voltage range. This is barely handling the resistive load of one stepper coil, which for 300R is about 15mA. Another limit is the total drive/sink current a chip's IO system can handle (all outputs together because of 'internal wiring' and dissipation limits).
To give you some ideas, check GPS powered by Espruino pin(s) out. It is not exactly what you are trying to do, but it gives you some feel what MC pins can do...
Because of the challenges inductive loads pose, I would them always drive with a driver chip... that's what they are there fore in the first place, and not with a MC pin, especially when having to supply switching polarity, I guess (and not just pull down a coil at one end of which the other one is connected to supply voltage).
Next challenge is facing the limited capacity of the coin cell... you will pull (resistive) about 30mA from a 220mAh capacity. Duty cycle - and how smart the control is implemented - will of course define what you get out of the coin cell. But may be you have additional powering in mind.
-
• #3
As @allObjects says, I think it's a bit too tight.
You probably could but I wouldn't advise it.
The other thing to think is that if you're adding clamp diodes to each pin then that's 8 separate diodes. Personally, I think it'd be more simple to just use a single driver chip.
-
• #4
Check this ti / Texas Instruments DRV8835 out (Pololu Banana Robotics, also Adafruit)... The chip is built for low voltage driving / operating down to 2 Volts, max 11 (12) Volt motor power supply. Adafruit has also a version for higher Voltage: Toshiba TB6612 - TB6612 Datasheet. The breakout board is a bit fat compared to Puck and the Instrument Stepper, but gluing just a chip to the back of the stepper and doing some 'air-wiring' will get you down to the 'format' you are(?) looking for.
I was reading about these x27.168 automotive stepper motor gauges and noticed that adafruit suggests that you may be able to drive directly from a microcontroller (allowing for the appropriate kickback diodes.)
Would anybody know if its possible to do directly from the puck.js?