Manufacturing the FSR Endstop Controller

In previous posts, I talked about creating a circuit board that makes it easy to use FSRs (Force Sensitive Resistors) with delta 3D printers:

This project started when I wanted to learn how to create circuit boards, and I thought it would be nice to have FSRs on my delta printer. When I posted my progress on one of the forums, other forum members started to ask if they could buy one.

I was a little daunted by the prospect of building 50 circuit boards (which later became 100). Fortunately, I have a friend, Dave, who needed some money, and he was more than happy to assemble the circuit boards. I suggested that instead of paying him by the hour, I would let him have the profit. That worked out really well for both of us. But after programming and shipping out 100 boards, I was happy to be done.

(On a side not, I just realized I need to get a photo of the two of us so I can add it to this post. I’ll try to do that soon. We’re both model railroaders, and we work on a friend’s model railroad. His next get-together is October 4, so I’ll try to get a photograph then.)

Some people asked how they could get boards after the run of 100, and someone suggested that I contact one of the companies selling 3D printer products. I contacted Tridprinting.com for several reasons. First, I’d met the owner, Daniel, at a mini Maker Faire in Seattle, and he’s a nice guy. Second, I’ve always had a very good experience ordering supplies from him. And finally, he’s local, so I could meet with him in person and deliver boards in person. He said yes, he would definitely like to sell my circuit board. Cool! But then he told he how many. I was thing a small number and trying to figure out how to keep the price down.

We had sold the first 100 circuit boards direct for $10 each, so there was room for profit after the cost of supplies. I had been ordering these in batches of 50, so didn’t have the best discount. Ordering in larger batches reduces the cost of the parts. As it turned out, however, this was a small part of the total cost, especially for domestic manufacturing.

I contacted several companies here in the Northwest US to get quotes. The quotes were for the blank PCB, the parts, and assembly. Their quotes did not include flashing the program, testing, soldering on header pins, or packing into anti-static bags. I figured my friend Dave could help me with those tasks, until I saw the quotes. I was surprised (or perhaps shocked) at how much they charged for the PCBs as well as for assembly. They also had a pretty hefty setup fee for the circuit boards, and another setup fee for programming the pick-and-place machine. Since this board only has 15 parts on it, I didn’t expect the pick-and-place cost to be as high as it turned out to be. We would have to increase the price quite a bit if we went with domestic manufacturing, at least with the supplies I contacted.

Production in China

I’d been reading good things about Seeed Studio in China for open source hardware, so I contacted them for a quote. I first contacted them at the end of June, and they sent me a spreadsheet to fill out. They had some questions, and got back to me the next day with a quote. And their quote was way below (less than half) the quotes I got here in the US. And their quote include flashing, testing, and packing into anti-static bags. Wow, no wondering people have their products made in China. I wish I had a better option locally, but at the moment I don’t.

I sent Seeed an engineering sample of a built-up circuit board and a blank PCB to help ensure I got what I wanted. For some reason that I don’t remember, it took me until the end of July to send them payment. They required full payment up front, so I was sticking my neck out a little here. During the same time, I worked on a test plan. This was a simple one-page document that I sent them. I described what the circuit board does (what all the pins do), and described how to test the board. And that’s it.

I got an email from them on September 1 saying that they had finished production, and would be sending out the boards. It took about 10 days to get here to the US and through customs. It was held up in customs for a few days, and then arrived here. Yay! Here’s what I got:

OLYMPUS DIGITAL CAMERA

OLYMPUS DIGITAL CAMERA

Nice, very nice. I’m very happy with the results. They built these quickly, packaged them very nicely, they look great, and they work perfectly. What more could you ask.

Seeed’s Programming and Testing

I was curious about how Seeed went about programming and testing this board, so I asked them if they could provide me more information and photos. They sent me their test plan document, which was in Chinese, so I don’t know what it says. But it did include some photos. First, this is how they programmed the boards. The ISP programmer is connected at the top-right:

Seeed Programming

Here is a photo that shows the setup they used for testing, which makes use of a couple of Seeed’s circuit boards:

image

The bottom board is a Seeeduino, which is an Arduino clone, and the FSR circuit board is plugged into the I2C connector in order to receive power. I don’t know what the top-right board is called. However, they made a custom cable, shown below, that allows them to connect the LED to the endstop output of the board. This allows them to test all three FSR inputs to ensure that the light turns on or off when the FSR inputs are shorted.

image

So they did a nice job with the testing as well. Their solution was very simple, but effective. I don’t think they actually used the Arduino clone for anything other than power, though.

Comments

  1. The boards came out great, I hope you are pleased.

    I was wondering how they compare to using a trinket though and how to connect the FSR cables as you are using male (?) headers.

    ReplyDelete
  2. Hi, I had problems with my board so I tried to reprogram it, I used a USBASP.
    I ended up messing the fuse. I am now putting a 1Mhz square wave on pin 7 but still can reprogram it with avrdude.
    Any Idea how I can fixe this
    also what are the fuse value you set for the Attiny861 ? thanks

    ReplyDelete

Post a Comment