Our goal for the past several weeks has been to show everyone a fully functioning Simula One review unit. Back in April, we predicted our first review unit would be completed by June 8th. We regret to inform everyone this was a tad bit optimistic :)
We now believe we will finish our review unit by mid-July (optimistically), and by end of July (pessimistically). Below we provide a retrospective on our previous forecast, and provide some details on our new one.
As a retrospective, here are some of the major things that slowed us down/we learned from over the past several weeks:
PCB routing taking longer than expected. Due to a combination of many high speed signals, fine-pitch components, and size constraints, the PCB routing required more time from us than we anticipated.
Parts incorrectly labeled as in-stock. For example, while working on a USB-PD for having USB+DP over a single cable: many parts that were labeled as "in-stock" weren't actually in-stock.
High lead times (for cables primarily). It often feels like we spent more time searching for available parts than actually designing and building things.
Heavy I/O configuration iteration. We ran into mechanical issues with a VXR DisplayPort solution. And here lack of components sometimes killed solutions too far into the process as well (e.g., the USB-C single cable solution discussed in (2)).
Most people think that engineering time estimates are a waste of time; however, we think that we owe estimates to our backers so that they always know what's going on. We also believe they can be useful for thinking through plans, coordinating team behavior, and motivating us to move fast.
In general, project time estimates almost always have an assymetric shape:
There is almost always a difference between the most likely point at which a project is finished and the average time a project will be finished. This means the central challenge of project forecasting can be framed as a long-tail issue: if things go spectacularly well, we might finish a little bit ahead of schedule. But if things go even a little bit wrong, we end up somewhere randomly on a super long tail, perhaps many multiples away from our original estimate. On top of this, humans tend to plan too optimistically.
Our approach to mitigate against these challenges is to segment our projects into pieces, provide both pessimistic and optimistic estimates, and to make everything transparent.
2 Tasks remaining
2.1 Mechanical engineering tasks
Update headset exterior CAD (1 day). Our headset CAD needs to be updated to accomodate the mounting of our new VXR, Interposer, & I/O connector boards. We also are improving the mounting of our overhead strap for better compatibility with 3rd party straps.
Finish facial interface (15 days). The facial interface refers to the padding in between the lenses and the user's eyes. Though our design is finished, we still need to acquire raw materials and print.
Fabricate review unit exterior (1-2 weeks). We will likely outsource to Xometry for SLS prints (dye black Nylon 12 with tumbled finish). SLS printing is a bit slower of a fabrication process, but works well with the prototyping phase and gets us pretty close to the finish of injection molded parts (helping us avoid layer adhesion issues).
2.2 Electrical engineering tasks
- Receive manufactured boards (2 days). We already have our VXR boards, but are waiting for our Display Interposers and I/O connectors to arrive from our manufacturer. They should be here by the 24th.
- Assemble boards (1-3 days). We're taking the boards to a local PCBA to have their components appended. Though this could be a same-day operation, we're allocating 3 days just to be conservative.
- Implement eye distortion (2-4 days). As outlined in an optics post, we must distort the way our VR compositor renders images in order for them to appear properly through our lenses. Distortion will happen in the form of a forked monado driver (posted alongside our GitHub repos).
- VXR Kernel Patch (1 day). Our VXR is currently running at 60Hz (versus our 90Hz target). Though this isn't mission critical for internal testing, it needs to be fixed for good review unit demoing, so we include it in the estimate.
- Board integration testing (2-14 days). This is the most sensitive part of our timeline. We are allocating 2 days for this under the assumption that everything will basically just work. In case things do not just work, we'll likely need another 2 weeks of iteration to fix things, pushing us into late July.
2.3 Updated Timeline
Putting the above estimates together, we can assemble a new review unit timeline (this timeline is unfortunately hard to read without zooming in):
This timeline uses pessimistic estimates for every entry except board integration testing (which could take an additional 2 weeks if things go awry).