Sourcing Parts in Huaqiangbei

A project log for NeuroBytes

Build your own nervous system!

zakqwyzakqwy 01/19/2019 at 00:024 Comments

Kickstarter: 3 years of tedious planning, a month of frantic promotion, and a lifetime of apologizing for delays. This is hard and I am not very good at it, but we continue to move forward.

I recently posted our fifteenth Kickstarter update since the campaign finished over a year ago. As an aside, you may have noticed a distinct lack of posts on this project page; that's because I really owe our backers the first word, and I often lack the bandwidth to document the project in a few places simultaneously. I have a backlog of interesting technical challenges I will get around to discussing here at some point. Hopefully.

Jarod and I went to China earlier this year. To be precise, we crossed the International Date Line en route to Hong Kong around 5:00 PM local time on December 31st, so you could argue that we are still in 2018:

In any case, as I detailed in the aforementioned log update, the run went well. Really well! A lot of things came together at the last minute and we're even a bit proud of how some parts turned out (other parts, like the recycled packing material I specified, maybe a bit less so). But one part went distinctly less well, best illustrated by this traumatizing gif:

See what happened? At some point, I rotated the regulator footprint 90 degrees and repoured the ground planes, meaning the only evidence of the mistake was the now-visible ratnest. Well, that, and the DRC errors I would have gotten if I'd run a DRC as my absolute last step prior to fab file export. It meant we had to scrap all the Touch Sensory Neurons (a bit over 10% of the run), and this poor chap will need to re-solder switches on all the new PCBs once he gets back from Chinese New Year:

Lesson learned, the hard and expensive way. I even prototyped this board a few months earlier; I need to review my commits, but I believe the issue came up when I changed my SOT23-5 footprint in the library and then reloaded my netlist and replaced footprints. Ugh. DRC EVERY TIME, PEOPLE.

Moving on. The Chinese New Year comment above came about yesterday, after my manufacturing partner let me know they wouldn't be able to source all the parts prior to the holiday and our run (and thus ship date) would be pushed back to mid-February. Back in China, Jarod and I still hoped to solve the problem fast and get our Kickstarter fulfilled before the break. We pulled an inventory report and realized the run overage wouldn't cover a few components, including the STM32L0, the rear-mount RGB LED, and the snap-action switch. Sunday morning, we hired a car to take us from Dalang, Dongguan to Huaqiangbei, Shenzhen.

China is .. hard to describe. Jarod and I only saw a tiny slice of the massive country, from a tiny perspective, for a tiny amount of time. If you're interested in electronics, try to figure out a way to get to Huaqiangbei, Shenzhen; if you're interested in any other consumer goods, you probably should go somewhere else, as there is likely a massive city built around its supply chain somewhere in the country.

Our driver laughed as I excitedly took pictures of the LED signs showing spot pricing for various electronic components. We learned that in Huaqiangbei, it's pretty normal to see dropped SMT components and bits of tape on the ground, and most blocks feature a few people carrying around stacks of reeled parts.

Pollution is A Thing in China; when I took this picture from the 23rd floor of the Huaqiang Plaza Hotel, the AQI was around 150 and a decent number of folks wore face masks. Some parts of the surrounding area are quite clean (particularly restaurants, hotel rooms, lobbies, and the like), but many hard-to-reach surfaces have a bit of grime on them; it's especially visible on windows and polished metal surfaces. I imagine this is related to airborne particulate pollution. 

We headed for the Golconda Electronics Market. This building, a 6-story electronics bazaar of sorts, is adjacent to the Plaza Hotel and seemed like a good starting point. As you go higher in the market, you pass through the passives section, to microcontrollers, to assemblies, and finally to LCDs.

Some stalls, like the one shown above, had hundreds of reels mounted to the outside of the shop, presumably so you could examine the parts close up and maybe take samples. Others, like the pogo pin vendor shown below, kept their samples behind glass:

On Sunday, many of the vendors were closed, so we felt okay taking pictures of the displayed products. When we returned later that week, the building buzzed with activity; many aisles were completely blocked by teams of workers efficiently boxing up stacks of reels for shipment. Golconda, and Huaqiangbei in general, is a place for serious business, and the vendors aren't tour guides. If you do visit, be respectful of people's time, stay out of the way, and only engage if you're serious about making a purchase.

Soon, we came across a booth plastered with ST logos. The windows were blocked by stacks of boxes bearing the company's logo; mostly STM32F0 and F1 series parts, with a few STM8s sprinkled in for good measure. We knocked on the door and introduced ourselves to the vendor and showed him the part we wanted to purchase: STM32L011, qty 750 (a few extra for good measure). He immediately motioned for us to sit down on his couch, gave us cigarettes, and sat down at his computer. A few minutes later he got up, scrawled a per-piece price on a bit of paper, and indicated that we could pick the parts up in a few days, but he'd need a deposit.

The picture above is a bit blurry, but hopefully you can see the important parts: Cigarette. ST boxes in the background. Tea table. Cash for a deposit. And bunnie's invaluable point-to-translate guide. We asked for a receipt, which he provided but it was clear to us that this wasn't the norm:

It was time to leave. We were invited to stay for tea but deferred; we wanted to find other parts (which ultimately proved unsuccessful) and had a hard deadline to get back to Dongguan.

When we came back later that week with an even larger stack of yuan, the transaction was easy. I wasn't set up to test the microcontrollers, but I was able to visually inspect them and confirm the markings. Per bunnie's guide, the price was about what I expected, which gave me reason enough to trust the authenticity of the parts.

Our business done, the vendor invited us to their office a few blocks away for tea. I enjoyed the traditional tea routine generally, and was particularly fascinated by the automatic tea table (complete with auto-filling tea pot):

After going out to lunch with our new business associates, we parted ways for a final time, but not before exchanging WeChat scans.


James Newton wrote 01/28/2019 at 17:54 point

Thanks for sharing that screw up! I appreciate it for many reasons: 1. I feel less bad about the monumental errors I've made (and will make) 2. It's a good reminder to always DRC before production. 3. I'll now try to be in the habit of turning off ground pours when changing anything and only turning them back on at the end... just before the DRC. 4. It's good to know you are human. 

  Are you sure? yes | no

Yann Guidon / YGDES wrote 01/23/2019 at 21:54 point

What an adventure !!!

  Are you sure? yes | no

Jarrett wrote 01/22/2019 at 00:07 point

That gif is an extremely succinct was to make me understand completely, and feel for you. It sounds like it got discovered as you were already there maybe?

  Are you sure? yes | no

zakqwy wrote 01/22/2019 at 00:35 point

yeah.. when the finished boards didn't program. an expensive mistake. but I learned how to animate gifs in gimp!

  Are you sure? yes | no