Good to know on the Pi Zero bluetooth @andredavidbrown , thanks.

And great options/ideas here @MarxMelencio . Super thorough.

I'm leaning towards the hard approach. I'd love to do this:

  1. Start with an industrial design that is ideal for the user experience for someone who is visually impaired.
  2. Iterate on its feasibility to implement based on the DepthAI System on Module (which is 30mmx40mm), while allowing the PCB design around that to change however needed.
  3. Down-select to an Industrial Design which is optimized for this great UX while allowing the SoM to fit realistically, and use this design to then do a custom board layout around the system on module.

So this would require someone to take the carrier board designed that we've open-sourced and make them into this form-factor. But it's not a huge project, so maybe we can either find someone to sponsor the work by donating their time for free (I would donate mine, but I'm already working 14 hour days and I'm still not responding to each days emails/etc.). I may have a friend or two who would be interested in doing this though. I'll ask around.

This would all hinge though on figuring out this ideal industrial design first (with constraints on what the electronics can realistically be, including thermal is properly handled). The doing the re-layout from that.

Will circle back if I get any takers. :-)

Sweet thanks @andredavidbrown !

So to get going on this I'm thinking if it would make sense to do a dedicated live text-chat for development purposes.

We have our Luxonis Community that we could use and we could make a dedicated channel in there where anyone who is interested can join. I'll go ahead and do that now. (But it's easy to undo, so if there's a preferred alternative I'm 100% open to that as well.)

Here's the invite link:
https://join.slack.com/t/luxonis-community/shared_invite/zt-emg3tas3-C_Q38TI5nZbKUazZdxwvXw

Thoughts?

Thanks,
Brandon

Just made the #visual-assistance channel in the Luxonins-Community slack above. You both should be able to join the slack with that invite link and then in #general I dropped the link to #visual-assitance (or CMD-K / CTRL-K to switch to it w/in slack).

Hi @Brandon and @andredavidbrown,

Thanks! 🙂
Also, here's my most recent email discussion with Gilad:

Start of Email

Hi Gilad. Thanks for your email! 🙂

First, really good to know about SLA / SLS 3D printing.
I think it'll be the better option, especially for the minimalist approach that I described in my previous email ...

Second, regarding 3D files:

• Only the 3 DepthAI editions, their 3 cameras and the Raspberry Pi boards have open 3D design files;
• In my previous email, I provided the link to DepthAI's Github repo with the design files for the DepthAI boards (3 editions) and their 3 cameras;
• However, the other components like the Flick Zero board, the WiFi and Bluetooth dongles, the Zero2Go Omini power management board, the Anker PowerCore2 powerbank, the Bluetooth open ear audio eyeglasses and others do not have open 3D design files; and
• That's because these components are commercial products ...

Third, I think what we can do for now is design a prototype SIMILAR to the cases for the minimalist approach.
This way, we can use the components as they are, and just design / fabricate the cases.
This'll allow us to develop a working prototype much faster, and less costly.
We can then use this as a proof of concept prototype, which we can then use to generate funding interest from organizations like government agencies and commercial groups ...

Fourth, I attached a couple of images.
This is just in order for me to describe the prototype that I'm envisioning.
And please allow me to describe this prototype in more detail here:

A. 1st Case

This is what I want to describe through the object that I used in the attached images.
** Of course, it'll be much smaller and much slimmer than this, as I can't find something here that's close to the dimensions (l x w x h) of the Flick Zero board ...

  1. As you can see in the "open_clamp_case" image below:

• This has 2 panels; and
• One panel faces outwards, while the other panel inwards ...

  1. Meanwhile, as you can see in the "closed_clamp_case" image below:

• It's clamped shut, which securely attaches it to the front neckline of my t-shirt; and
• One panel is facing outwards, while the other panel facing inwards ...

  1. Still in the "closed_clamp_case" image below:

• I imagine the 3 cameras placed on the top row of the outwards-facing panel, from left to right;
• Facing the image, this means left camera is at the right, center camera at the center, and right camera at the left of this row; and
• Meanwhile, the bottom row (left to right) is the gesture control board's sensor input panel ...

  1. Still in the "closed_clamp_case" image below:

• The inwards-facing panel is just a solid panel with magnetic areas, and also a hollow area in its center just for the cables to go through;
• These cables are the FFC connectors of the 3 cameras (3 FFC connectors), along with the gesture control board's 40-pin ribbon cable; and
• Once it's clamped shut, the magnetic areas along with the case's locking hinges will securely fasten it to the front neckline of the user's shirt;
• The cables will be combined into a thin unified cable, which will start from the bottom of the inwards-facing panel (going down through the inside of the user's shirt);
• The other end of this cable is connected to the 2nd case; and
• The 2nd case will be in the user's pocket, or latched to the user's belt, or clipped to the belt holder of the user's trousers ...

** Note: I intend to use this FFC extender ; and
*** I'm thinking of also using a USB3-C to USB3-A adapter as I think the DepthAI USB3 FFC edition board is connected to the host SBC via USB3-C, and all RPi SBCs aside from RPi4 don't have a USB3-C port ...

B. 2nd Case

  1. This will contain the DepthAI board (USB3 FFC edition), the single board computer, the power management board, and the powerbank;

  2. The DepthAI board will be connected via a USB3-C to USB3-A cable to the single board computer (thinking RPi 3B+);

  3. The power management board will also be connected to the single board computer's 40-pin GPIO, and the full 40-pin GPIO will still be available (this power management board's GPIO connector is designed this way;

  4. Meanwhile, the FFC cables will be connected to the DepthAI board, and the 40-pin flat ribbon cable will be connected to the single board computer's 40-pin GPIO;

  5. This case should be as small and slim as possible;

  6. This should have holes for efficient ventilation, and also for the single board computer's ports, power and reset buttons; and

  7. The backside of this case will have either magnetic clips, similar to the wide clips of small pocket knives that can be latched to the hem of the user's pocket, or clasps similar to key rings ...

I believe this in itself is already a decent prototype.
What do you think?
Please advise. Thanks for your time and valuable expertise! 🙂

Best Regards,
Marx

#End of Email#

Would greatly appreciate your comments about this at your most convenient time, @Brandon and @andredavidbrown — Thanks! 🙂

Hi again @Brandon and @andredavidbrown,

Just want to ask about your experience in using FFC extenders such as these (just want to know if this would likely work with the 3 cameras) ; and

@Brandon, I'd also want to confirm if DepthAI USB3 FFC edition is connected to the host computer via USB3-C?
And if so, do you think a USB3-C to USB3-A adapter / cable (male to male) such as this would likely work with DepthAI USB3 FFC and an RPi board like 3B+?

Please advise. Thanks for your time, expertise, and patience! 🙂

I have used extension cables on both iPhone cameras and raspi based prototypes but I think there is an upper limit on length before you get issues. I think you can get boosters as well and then run another cable

Great questions!

Yes, the FFC extenders seem to work well. We have only tested a little on DepthAI, but we tested the grayscale cameras to work with 24" FFC and they worked w/out a problem. The color DepthAI camera (IMX378) we haven't happened to test with longer FFC, but we have tested the Pi HQ camera (IMX477) with a total of what looks like to be 24" of cable, and it worked fine. The image below shows this working with 24" of FFC cable on our bench:

WRT the USB3-C to USB-3A adapter / cable - yes, that will work. In fact we were doing FCC/CE testing of DepthAI today (it passed!) and we were using effectively that same cable, but with a Pi 4 (as the host for the test).

And I'll circle back on the ID concept tomorrow (late here) but from what I'm seeing, there's quite interesting ideas there!

Hi @MarxMelencio ,

Sorry about the delay I just got to reading your ID email with good attention to fully absorb it. So I like the idea. I have a proposal on how to make it cleaner:

The "DepthAI: USB3C with Onboard Cameras" version may actually work better for this sort of enclosure technique. So when running this version off of a Raspberry Pi, it can be changed to do both power and data over USB only. So no power cable.

So this device is shaped like a weird "T". So the top of the T is 100mm across, the T is 46mm tall, and the base of the T is 42mm.

So this device could be in the 1st Case and then have just a single USB cable going to the second case that is in the users pocket or belt.

That way it's cleaner than having multiple FFC cables going down there.

That said, the BW1097 you ordered may be the cleanest, as it has the Pi integrated directly onto it, so the who think could chest-mount. I guess this will be a lot lighter on the chest, so it can mount on the shirt like you mention. So that does make sense.

With this sort of setup you could also wrist-mount it too if that's of interest.

Thoughts?

Thanks,
Brandon

Hi @Brandon,

Yes. Thanks for directing my attention to the "DepthAI: USB3C with Onboard Cameras".
I think this is likely a much better solution!
But just a quick question though - What's the height / thickness of this board?

I'll also be testing the DepthAI RPi CM3+ edition as soon as it arrives here - Hopefully, this'll arrive today or tomorrow.
But I think another separate enclosure for the battery is still needed with this setup.
That's because it'd probably be a bit on the heavy side when the battery and Zero2Go power management board are attached to the DepthAI RPi CM3+.
And this is why I was thinking of the DepthAI USB-C FCC edition.

Though because of your suggestions - My attention for this alternative approach is now on the DepthAI USB3-C onboard edition! 🙂
Another good thing about this is that it's still USB3-C, so the cable would most likely be thin - For this ID concept, I think combining this cable with the 40-pin flat ribbon cable of the gesture control board (Flick Zero) wouldn't significantly affect its flexibility.
Plus, it'll be more straightforward to also use other single board computers that support USB3-C and OpenVINO.

Thanks again! 🙂

Hi @MarxMelencio ,

The thickness is 27mm (mainly the heatsink). So if put in a metal case one could heatsink to that directly so that it wouldn't be as thick.

And yes sounds right on everything else you mention.

So one thing that might be possible is to just have the battery down w/ the SBC and have it monitor the battery directly there. So then the only thing that is on the chest is the BW1098OBC connected over USB. Note that the BW1098OBC is set up to have 5V barrel power, but there's a resistor that can be switched to make it power over USB instead.

We did this because by spec USB2 devices can only supply 500mA. And the board can pull as much as 900mA. So USB3 is enough (it's rated for 900mA), but we can't control if folks plug into a device that can supply only 500mA.

FWIW, most SBCs can do over 900mA (usually like 2A) through their USB ports, even USB2. The Raspberry Pi 3B+ can do about 2A for example.

Thoughts?

Thanks,
Brandon

    So we were talking to one of our customers about this and he brought up this system:

    It uses servos to tap you on the temple to tell you to go left or right on a path.

    Hi Brandon,

    Really cool idea to take out the BW1098OBC's heatsink and integrate that into the ID of the enclosure!! 🙂
    —> I'm thinking of placing a thinner H-shaped heatsink in the original heatsink's place, so it'll be built into the enclosure's front and sides; and
    • This'd likely make the entire thing thinner, also most likely without negatively affecting the heatsink's efficiency in serving its purpose ...

    Also, would it be possible for me to order a BW1098OBC that's already switched to use USB3-C power and has the heatsink taken out?
    —> I'd probably be able to afford this, including shipping, by next week ...

    And I'm still waiting for the DepthAI RPi edition to arrive — DHL tracking seems to be stuck at "customs event", but I've already contacted them about this a couple of times (still waiting for them to get back to me) ...

    On another note, I've been talking to 45 blind users here for the past 2 weeks — I introduced the concept to them, and all of them are really, really excited about this! 🙂
    —> I developed and been conducting, as the main trainer, a series of free Webinar training sessions in coordination with Resources for the Blind, Inc. here in the Philippines; and
    • It's called "Remote Work 101 — An Actionable Workshop to Get Gainful Online Jobs in the Middle of a Global Crisis ", which is sponsored by Nippon Foundation Japan and ICEVI East-Asia (International Council for the Education of Persons with Visual Impairment) ...

    • 🙁 Almost 70% of blind Filipino adults here in the country recently lost their ONLY income source. That's due to gov't mandated lockdowns as a response to CoViD-19, as they're masseurs; and
    • 🙁 Blind Filipino children and teenagers alike are also significantly affected, as they aren't getting suitable education due to the lockdowns, especially in rural areas here ...

    So I learned that, both in urban and rural areas here, many with 30% vision are riding their bikes while others without functional eyesight are walking for an hour or so each day (still no public mass transport due to the lockdowns), just to go to downtown areas, so as to access gov't support services and Internet connectivity for these free Webinars / remote training sessions, among their other day-to-day needs. 🙁
    • This is where DepthAI can really, really help; and
    • I've also been talking to SPED teachers about the possibility of using DepthAI to provide gammified educational content to blind Filipino children and teenagers even beyond these lockdowns, and they're really, really hopeful! 🙂

      Hi again @Brandon,

      DeepWay looks like a really cool project — Thanks for the heads up! 🙂

      This gives me some ideas to, in future versions, integrate vibrating ERM motor disks into the backside of the ID enclosure concept, so as to provide real time haptic feedback. 🙂
      • Users will feel on their chests where detected object's are in any of the 6 quadrants I previously mentioned (top left, top center, top right, bottom left, bottom center, bottom right); and
      • That's aside from providing us with open ear audible input for the class, clockface location and distance of detected objects, along with other beneficial functions like OCR and so on! 🙂

      MarxMelencio Very Cool!

      Neat to see you helping in so many ways!

      Also, would it be possible for me to order a BW1098OBC that's already switched to use USB3-C power and has the heatsink taken out?

      Yes, we can definitely do this. Also one of my friends who's a mechanical engineer may be able to help to make a heat-spreading case for this design.

      If you order the BW1098OBC (here), we'll ship you one with the power switched to USB input and also have the heatsink removed (but included in the shipment).

      Be sure to not run the device long with the heatsink removed though without another equivalent heatsink (e.g. the heat-spreading case) in its place, as it will very likely overheat.

      And WRT customs: let us know if there's anything we need to do to help. Usually these need to be cleared by the receiving party though.

      Thanks again,
      Brandon

      Hi @Brandon,

      Thanks! 🙂
      I'll order from that page for sure, as soon as I raise the money for the unit and shipping, hopefully later this week.

      Yes, I'll let you know as soon as DHL gets back to me.
      Their tracking page says the package is already here in Manila, so I contacted their Manila support directly, since it's stuck at "customs status updated".
      But they haven't gotten back to me yet - I'll call them again tomorrow morning GMT+8.

      Thanks again, and have a great week ahead! 🙂

      Thanks @MarxMelencio !

      So for anyone else following the thread, we have moved a lot of the iteration to our slack community channel on this ( #visual-assistance ), here.

      And we have two parallel efforts in progress:

      1. Prototype with existing DepthAI hardware (BW1097 and BW1098OBC in process, as above).
      2. Build a custom completely-integrated system for this visual assistance device, specs of which are here.

      Please feel free to come join us in slack (and contribute) if this is of interest to you!

      Thanks,
      Brandon

      7 days later
      7 days later

      So @MarxMelencio - Rares at Luxonis was able to get the text detection running on DepthAI even though OpenVINO says that it doesn't work. So this is a great step for then being able to do OCR on the text.

      Github issue here

      Hi @Brandon,

      Cool! 🙂
      • I'll take a closer look much later this week. Planning to test some sequential methods for running object detection, tracking, text detection, and text recognition. Will test OpenVINO, Pytesseract, and Microsoft OCR Read Cloud API ...

      Also, I managed to successfully run BW1097 with my PiJuice HAT and 40-pin GPIO extender ribbon cable (male to female).
      • However after a couple of days, PiJuice suddenly isn't able to supply enough power. Even if the PiJuice HAT is still working, based on its LEDs.
      • And my Zero2Go Omini isn't working. I remember we used a capacitor to make this work with an RPi Zero WH ...
      • So I'm back to using BW1097's official power supply, while waiting for the USB-A male to barrel plug that I ordered, as we discussed in Slack ...

      And I'll in the next day or so share a video in Slack regarding some things I've been doing.
      • This mainly involves calculating object placement in clockface locations, i.e. If x_distance and y_distance <= -0.85m, then clockface location is "7 o'clock" (Python treats negative values with higher numbers as bigger, instead of smaller, so this is >= in my code) ...
      • Converting z_distance into number of standard steps, i.e. If <= 1m, then "2 steps away or less" ...
      • Stringing this up with mobilenet object class, i.e. 9 o'clock. Person. 3 steps away ...
      • Generating quick beeps with stereo panning to prefix TTS of combined result, i.e. Quick stereo pan from right to left if object is at the left (10, 9 and 7 o'clock), no stereo panning for center clockface locations (12 noon, dead center, 6 o'clock), etc.
      • Also using fade ins / outs and 3 different pitches for these beeps, i.e. Lower pitch for 5 / 6 / 7 o'clock positions, and so on, to optimize much faster user recognition of object location ...
      • Plus, using 3 different TTS voices for the same reason, i.e. One voice for object location, another for object class, and another for distance ...

      Cheers! 🙂