Dancing With Cupertino
We’ve been going back and forth with Apple via iTunes Connect for several weeks now on various things to do with our app, including an unfortunate 8-day delay just because we uploaded a new binary (apparently this restarts the review queue?!).
We finally received an email last week from from the App Review team asking us to review a Rejection in the Resolution Centre of iTunes Connect. It appears Apple want us to send them hardware to review as “We began the review of your app but are not able to continue because we need the associated hardware to fully assess your app features.”.
Why it took so long for them to come to this conclusion or why there’s not a special process for hardware developers somewhat astounds me. We’re shipping hardware to Cupertino today and the letter in the Resolution Center does offer a glimmer of hope when it says “it may take several days” after they receive the hardware (and not weeks).
We were able to get Test Flight approval for the app after creating a video of it functioning. Test Flight is Apple’s newish beta program. Drop us a note if you’d like access to the next build.
The manufacturing issues that we were seeing with Grow have been resolved. I think we went through something like half -a-dozen reworks of the board, many more interactions of swapping out components, and much head scratching as it should have worked the way it was.
So why didn’t it? Well, the Grow’s soil moisture sensor is something we designed ourselves. The theory of operation is relatively straight-forward: it’s a plate capacitor that is influenced by water molecules surrounding it as water is a dielectric. A high frequency signal (MHz) is sent into this plate capacitor, is then influenced by the surrounding dielectric (capacitance increases proportionally to the water content of the medium surrounding it), is then rectified and filtered, and a then read.
The levels of capacitance change being measured are pretty small: they’re in the low pico-Farad range. One of the first clues that something was very wrong on the pre-production units was that the output signal was always very high and had virtually no variance in it. We even bought an LCR meter to triage this.
So what was the problem? Well, to cut a long, arduous story short: the design was good (it’s still exactly the same), the components were fine (despite worries about switching speeds for diodes), it was what I’ll term a “layout hygiene” issue. The traces that were carrying the soil moisture sensor signals were being influenced by the rest of the PCB and picking up close to 1 nano-Farad of ‘stray’ capacitance. High-speed analog design appears to be a lot less forgiving than digital, which is exactly what all the text books say 🙂 Unfortunately, it required several rounds of fabricating slightly different PCBs, hand assembling them, and observing the results — which took weeks 😦
Climate and Sentry: short delay on receiving the first shipment back from the CM (Contract Manufacturer). We’re expecting them back early next week and then a larger shipment shortly after that (December 1st is the current date our CM is giving us).
Thermo and Water: scheduled for manufacturing by the CM as soon as the PCBs come back.
Grow: we’ll give the green-light for the CM to start work on this in the next couple of days once we’ve done some more testing. We’re very confident, but also don’t want to manufacture (and send you) a product with issues!
I’ll write a separate update on Mesh (our gateway/bridge) and our platform this week.
m + s + l