Thursday, September 5, 2019

123: Irritating Relay Board

REVISED! After a week's testing the 3rd relay from the left failed as a hard short. Sent it back. Two weeks wasted.

For the last two summers I've been trying to use the cheap hobbyist's relay boards in a farming IoT application. Things would go alright until hot humid weather and then there would be problems. So I looked into using solid state relays. Individual relays cost a lot more and take up a lot of room. Then I found this 8-SSR board at Sainsmart.


So I bought one. The web page didn't explain the connectors but maybe documentation would be in the shipping box. Dream on! So I emailed Sainsmart, twice. No response -- it's been 2 weeks.

I supposed that wiring it up wrong might fry the board, but what-the-hell. On the output side there are only 2 choices: got it 2nd try. On the control/input side there are 10 connectors. Makes sense: 8 GPIOs, 3.3v and ground. I assumed that the 8 controls would be together and the + and – would be on either end -- 4 possibilities. I got it 3rd try.

I'd have liked to send it back but it works and I need it. What I didn't need was having to figure it out. I am extremely irritated with Sainsmart. And won't buy from them if I can help it.

Friday, May 10, 2019

122: Fried Pi

I killed a Pi Zero by forgetting how the GPIO pins are numbered.


So, on the headerless Pi there is a hint about which is pin zero (lower board); but not on the upper board. Dumb me, I attached what I thought were GPIO21 and GND (physical numbers 39 & 38) to a sensor. Instead I connected pins 0 and 1 (+3.3v & 5v). Good by Pi Zero.

Wednesday, March 13, 2019

121: Particle.io Gives Up on Raspberry Pi

I go way back with Unix -- 1971 to be exact -- so when I got into IoT, I started with Raspberry Pi/Linux. However, when I learned of the Particle Photon's "cloud" connection I switched to Photons for installed controllers. A Photon is a bigger faster Arduino. You program it in that same way: in C++, with the usual setup(), loop() development platform, and with little more OS than an Arduino. But what you have are these cloud primitives:

Publish(): Send a message to one or more other processors

Subscribe(): Receive published messages

Variable(): Request data from a processor (up to 200+ bytes returned)

Function(): Send a command to a processor

Typically, the above functions happen in under one second. Security is good. Pretty nice. Except for giving up async processes, cron, Python, etc.

So, a couple years ago I (and others, I assume) suggested to Particle that considering the huge installed base they should offer their cloud services to the Raspberry Pi community. I had in mind that the above 4 features would be available as background programs utilizing the usual Unix/Linus communicate-by-file metaphor (fifo files?). But no, Particle trotted out the tired old Arduino sketch development model that had to run as root. I complained. They didn't change it. Now they are giving it up. Too bad. I'd have been willing to pay a reasonable price for that service.

Wednesday, February 27, 2019

120: Screw Terminal Breakout Board — revised

I just got 2 Electronics-Salon breakout boards. They are designed to fit the full sized Pi boards but I plan to use them with Pi Zero-Ws, as in this image:

Pi Zero underneath

My Pi Z's male header plugs directly into the underside of the breakout:


The standoff bolts don't fit a Zero so I removed 2 and left the others to support the breakout. There is just enough room under the breakout to stick on a heat sink. I think the Zeros will be ok but wonder about heat with a Pi B+.

I haven't hooked one up yet but I like 3 things: the screw-down connectors, that they are labeled and they are separated enough for my clumsy fingers. What I don't like: $17US at Amazon.

Added later: I wired one up. Oddly, I got it right (15 wires) first time! Pin numbering distinctly odd. BCM labeling but not like the Pi numbers. Still pretty good.