With a box of components from Digikey, my trusty solder paste and the correct boards i set out to assemble a prototype to test the functionality.
Generally i tend to remove all reference designators from the board as i want to make the board pretty. Instead i have the schematic & design open on my laptop while assembling. I then tick off items one by one in the BOM once placed on the board.
First the .. bad :)
1) I thought i had MAX17048 in stock already in my lab. I've used this chip before but apparently i had ran out. This chip is used to measure the remaining charge in the battery so i could get a notification that the power is running low. After all what's the point of a security device that's out of battery? Turns out i didn't have these in stock but for the first prototype this isn't critical so i simply left the component out.
2) The reference design for the CC3000 antenna matching includes a 10pF capacitor. I accidentally had marked this as 10uF (that's only 1000000 times too big..) and hadn't ordered the correct 10pF cap. During assembly this of course was quite obvious and i put in the closest thing i had which ended up being a 15pF cap. Without any network tools available i had to hope for the best knowing that at minimum the reception would be degraded. Turns out 10x sanity check should have been 11x.
3) The EKMC1603 PIR sensor datasheet was a bit unclear and i left out a pulldown resistor on the output.
For commercial work i always use a stencil but i didn't feel like paying or waiting extra for it in this case. This made assembly much slower but still everything went well with only minor rework required.
Tested so far:
1) MCU works fine. Programming is all good and i can get the lights to blink (these lights will act as a status indicator to display things like wifi connectivity, low battery etc). There is a small issue when sometimes the programming fails and i've pinned this down to being caused by the CC3000. Trying to be smart by actually disabling the power for it may turn out to be a bad choice..
2) PIR senses motion great (after a 10k resistor soldered across OUT and GND). The datasheet states a 30sec startup period with random activity after which it should be stable. Funny to test a PIR sensor when instead of sitting in front of a laptop and lab equipment you have to hid behind doors and walk around. As expected fully sideways the detection isn't super accurate so most likely this can't be placed on a table pointing upwards.
3) Power works great. The circuit has a soft on switch that turns on the MCU which then keeps the power alive until i want to shut down from software. The power is nice and stable with only 20mV or so noise. The battery input isn't as stable though, should probably put a ~4.7uF ceramic cap on the input (as stated by the datasheet, d'oh).
4) Wifi can connect and get an IP with DHCP. That's pretty much where it ends though. While i haven't tested this extensively yet (could be software related) it seems like the 15pF cap is causing issues. I could try to simply replace it with a 0 ohm resistor to see if this improves, we'll see. Another thing is the trace antenna which by the numbers is good but i haven't seen in any other CC3000 designs. Further testing is required to pin down the issues though
After some research it seems like TI has removed all references to the CC3000. Wtf? Also a lot of people seem to be complaining about the issues which are firmware and/or hardware related. TI is dropping the ball and not responding, only touting their new CC3100 and CC3200. Changing to another one isn't a trivial task but it seems like the CC3000 won't be long-lived. Not cool, TI, not cool.
Another issue seems to be the PIR sensor which seems great in every way except availability. The usual suspects (Digikey, Farnell, Mouser) all have 0-stock with new ones arriving months from now. Changing to something else would be fine except a lot of the industrial design depends...
Read more »