v2.0 - nolanhergert/HeadlightBlocker GitHub Wiki

I think customers would want these, but it should be driven by customers' desires, not yours!

Polarizer

  • I think I want to have a higher transmission polarizer ("worse") for nighttime driving, at least to be legal.
    • Follow up with Rina Tech in person? Had a conversation with Sunny over wechat and they thought that their polarizer film didn't have anti-glare properties and so it wouldn't be appropriate for glasses. It would be worth trying again at some point. They want a spec to know you're a pro and ready to buy.
    • I had another conversation with a different company on alibaba. They were selling colored polarizer sheets and wanted 10K meters of MOQ before talking about a custom tint.

Camera

  • Want even smaller and cheaper and wider angle, but not a priority right now.
  • Talked with a company in HK trade show, but there are a bunch that will do custom designs.
  • Maybe ask Steven at Opulo (LumenPNP) since they did something similar, getting a custom camera. 10s of vendors and some will work with small fry like him.
  • Do initial calibration by detecting glasses frame and pupil in a mirror with user moving head a little bit? Harder... but is it better UX?

LCD

Use Cases

UX

Need

  • Website to select / tune behavior, upgrade/downgrade firmware, etc. Using fast changing grayscale bar codes.
    • What might be useful is simulating different common situations and seeing how the glasses would react to them (pre-recorded videos? or just simple art might be better). Tweak knobs easily while only uploading to the glasses when ready.
      • Could also use the camera of smartphone/laptop and simulate behavior that way too. But why wouldn't they just preview it to the glasses they presumably already have on?
    • Uploading should be only able to occur after a recent button press. Or maybe a confirmation press? Have to play with it.
    • Write and test your own scripts / algorithms on there? I probably need it for my own development. Only need to compile the algorithm and then upload that part to glasses. It looks like you can't compile Rust in-browser yet (would need to cross compile to arm to flash to glasses, requiring docker container or something). If need container, there are very generous free tiers at the top CSPs, saves you from running on raspberry pi for $.01 per month!! but the power going out.
      • For fast docker image loading, I want to cache the docker image on the "cloudless" server instance that will quickly spin up the container. However, I only want a new container generated when the relevant files are updated. The important bit is "paths:" argument. More notes in chatgpt log: https://chatgpt.com/share/68374df7-ff98-800e-9171-002b38dfa440
name: Build and Push Rust Cross-Compiler Docker Image

on:
  push:
    branches:
      - main  # Adjust to your main branch
    paths:
      - Dockerfile
      - .github/workflows/build.yml
      - scripts/**  # Optional: include relevant files

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Log in to Docker Hub
        uses: docker/login-action@v3
        with:
          username: ${{ secrets.DOCKER_USERNAME }}
          password: ${{ secrets.DOCKER_PASSWORD }}

      - name: Build Docker image
        run: |
          docker build -t your-dockerhub-username/rust-cross-compiler:latest .

      - name: Push Docker image
        run: |
          docker push your-dockerhub-username/rust-cross-compiler:latest
* Somewhat similar to: https://sensor-watch-builder.fly.dev/

PCB

Security

  • How to ensure that your configuration wasn't modified or tampered by bad actor?
    • Preview alignment by showing halo around everyday bright / dark objects when first powered on?
    • Only show standard power-on animation with confirmed safe algorithms? (anything custom or weird will show X X X on startup or something)