Shop Learn
P2 P2 Cube — Parallax Forums

P2 P2 Cube

TwyyxTwyyx Posts: 63
edited 2021-02-10 00:08 in Propeller 2
This is the official thread for the P2 P2 Cube project which we have been discussing in the live forum.

Here, you'll find updates on the 3d frame design as well as discussion about component selection, testing efforts, and the design in general.
This a project that anybody can join in to help. The end goal is to have a kit available on the Parallax store.

As we hit major milestones, I'll update this post.

Status] as of 2021-01-05:
3d frame design is mostly complete in terms of the cube shape, exterior frame, and panel mounting method.
The corner joint design is "dev complete" for the hard joints, but a couple other options are needed for the top and/or bottom face.

@"Stephen Moraco" has built the drivers for the P2 64x64 panel we are using.
@"Ken Gracey" is ordering panels to have in stock on the Parallax store.

Next Steps
I'm finishing the testing and refinement of the 3d models for the frame design and then I'll share the STL files in this thread.
We'll need a few testers to see how well they do on a sampling of different 3d printers.

Open questions to be answered:
- How do we get the ESP wifi module to work for us as a data bridge for remote controlling the cube?
- Which battery pack are we doing to use? (Ken is researching the model of the 5V one based on the 12V one he has in house)
- What is the actual usable space in the interior once panel wiring has been sorted? (I'll be working on this one soon)

This project is inspired by other cube projects that were built on lesser technology with greater effort. This one should be the easiest one to build once we're done.

Online Discussion regarding Design/Assembly on Feb 11, 2021

On Thursday, we're meeting to discuss the P2 P2 Cube assembly challenges: Wiring in a small space, also known as "Ask Michael for help on a PCB idea." Anybody who is interested in this project is welcome to come and join us.

Topic: HUB75 Cube Circuit Board!
Time: Feb 11, 2021 11:00 AM Mountain Time (US and Canada)
Join Zoom Meeting
https://us02web.zoom.us/j/81761732052?pwd=Y285ejEwUjh0cGRJSmtGcGhaT0NFdz09
Meeting ID: 817 6173 2052
Passcode: 521381
One tap mobile
+16699006833,,81761732052# US (San Jose)
+12532158782,,81761732052# US (Tacoma)

Dial by your location
+1 669 900 6833 US (San Jose)
+1 253 215 8782 US (Tacoma)
+1 346 248 7799 US (Houston)
+1 301 715 8592 US (Washington DC)
+1 312 626 6799 US (Chicago)
+1 646 876 9923 US (New York)
Meeting ID: 817 6173 2052
Find your local number: https://us02web.zoom.us/u/kepPEVUwch
«134

Comments

  • For people who haven't seen the video, can you describe what the cube does?
  • The cube is a 6-sided LED panel with 4096 pixels on each side, measuring just over 5" on each edge.

    There are already some out there, but this one is ours.

    Some earlier work, for inspiration:
    -

    Also, there is a lower resolution version of the same idea here, as referenced in Michael's video: https://learn.adafruit.com/assets/11229
    Incidentally, I was also motivated to "level up" the idea as seen on Adafruit's site, and hadn't seen Michael's video before embarking on this project.

    We're using the same 64x64 pixel panels, but with a fresh controller design based on the P2 and a custom subframe that anybody with a 3d printer can make themselves.
    These are "P2" LED panels which means "dot pitch of 2 millimeters", but we're building it for the P2, thus it is a P2 P2 Cube.

    In terms of what you can do with it, the options are pretty open at this point. Current focus is on the physical design.
  • Cluso99Cluso99 Posts: 17,766
    So it’s a P2^2^3 = P2^6
  • The current ESP WX model that Parallax sells will work just fine for the P2. It has a telnet port setup that will work for transferring information from any application to it.

    We would just need to come up with a command sequence to load or control the panels.

    Mike
  • @Twyx , thanks for the explanation. My initial thought was that you were building something like a Cubli, which is a cube that can move around using reaction wheels. It would be interesting to add the LED panels to a Cubli, but the weight might be too much for the reaction wheels.
  • @iseries That's good to know. I think we'll need to do some basic protocol design and perhaps retrofit the ESP firmware to support something tailor-fit for this if there is room on the ESP module. I haven't even looked at it yet, so I'm not clear what the options are.

    @"Dave Hein" The weight of a 10Ah battery (or 3) would probably dampen the reaction wheels quite a bit, as well as the extra plastic covers you'd want to add to harden the shell for autonomous use. But I do think it is a really interesting idea.

  • Perhaps we can use a 360 servo and rotate the cube with a 3D printed corner mount or even flat mount.

    Mike
  • TubularTubular Posts: 4,359
    Another way to join up the panels would be to use Piano Hinges. For most of the panels you can make use of the normal hinge action, and for the last panel or two, you can simply insert the pins. Once pushed in they'd be super tidy.

    The 25mm hinge we have here is (only just) too small to work with the locally available hub75 panels from Altronics.
  • TubularTubular Posts: 4,359
    here's a photo showing what I mean. The advantage is you could just assemble everything with panels facing down, then fold it all up.. also good for transport.

    Even normal hinge, centrally fixed, could work if lucky enough to find the correct hold spacing
    3456 x 4608 - 350K
  • Even though the modeling is not complete, I wanted to share some progress.

    Here's a readout on what I've been able to do so far:

    * final design on the side joint: The previous joint was cool but it was too difficult to assemble with too many pieces. I was able to simplify this down to a single snap on cap around two posts for each joint. Further, the cap has built-in mounting holes that are used by the rest of the design.

    * Addition of (optionally) a protective plastic cover over the back of each of the LED panels. This can afford more usage of the interior space of the cube with lower risk of shorting some of the panel drivers. It's not strictly required, but some may wish to have this in place as a safety measure.

    * Selection of power source: For now, I'll be using LiPo as suggested by a friend on the forum (remind me your name so I can give you proper attribution please). I don't think LiPo has to be the only battery option, but it does provide high C rating. With that, I can use a high current voltage converter to use one common power bus.

    * Addition of an interior subframe cage. This is just mocked in for now, but it allows us to tie the edges of the cube frame together in a way that stabilizes the workspace internally. The dimensions will changes, and perhaps some (symmetrical) reconfiguration of the shape as we find out what works best.

    Additional work needed to finish the physical design:

    * Design the replacement magnet holder tabs for the top plate.
    * Design a "open box" base for it for non-battery mode.
    * Arrange the power and converters and re-arrange the interior cage format for the best fit.
    * (Optional) Add spacer blocks into the interior cage.

    See the attached rendering for a preview!
    1600 x 1200 - 444K
  • Hey Chaps, im mike from the video @Twyyx posted.

    The video has reccently started gettng a large number of views, im not sure if its to do with this forum or not but theres definately a bunch of interest in the cube either way so awesome to see work being made to make the project more accessible.

    Another project that might be worth looking at is the https://squarewave.io/ guys. They were trying to commercialise the cube for many years but sadly have now abandoned the project.

    Let me know if there is any help I can offer.
  • TubularTubular Posts: 4,359
    Welcome, Mikeysee! And thanks very much for the inspirational video
  • I've made significant progress over the weekend. It will slow down during the work week, of course.

    The main box model design is done. I'm just doing one full print to test it before I share the STL files and assembly guide. That might take another day or two. I've already written up the guide as well. (This covers just the physical assembly.) That is the next milestone: share the STL files, assembly instructions and photos of an assembled cube.

    I also have some LiPo batteries which I'm planning on testing current levels with. We already know that a single LiPo battery should work as long as the voltage converters carry enough current for each panel. I'll be deciding between a dual battery split power system and a single battery system after testing. Also, I'll be looking at the possibility of using dedicated 3A converters (the size of a quarter) for each panel instead of using a big blocky converter.


    Welcome, @mikeysee !

    I think you'll enjoy dabbling in this project if you have time. The P2 processor makes many things possible all by itself. I looked over the squarewave project. It looks like they had a ton of ambition, and some progress to show for it. Maybe they'll be happy to see a cube of any sort?

    I already have one question for you: With the refresh rate you had, did it feel sluggish? Did it cause POV aliasing when trying to capture video?

    The reason I ask is that with the P2, we can actually modify the driver output to feed all the panels in parallel if needed. We could do 1x6, 2x3, 3x2 or even 6x1. I want to add some tactile and 9dof IMU, so having the cube respond instantly is quite alluring. We might eventually want to do that in order to afford better dynamic range (as limited by active color planes), but for now we're starting simple and just chaining them all. How big of a deal do you think this is?








  • mikeyseemikeysee Posts: 8
    edited 2021-01-12 01:30
    @Twyyx ye I think the spare time is the tricky thing for me at the moment, having a baby is an even harder project than a cube! :tongue:
    I already have one question for you: With the refresh rate you had, did it feel sluggish? Did it cause POV aliasing when trying to capture video?

    I went as high frame rate as I could that looked good on the cube. It was more art than science fiddling with the settings to be honest. These are the default settings that I went with: https://github.com/mikecann/disco-cube-daemon/blob/master/apps/src/utils/matrix.ts#L4 but some of the demos I used different settings.

    By "POV aliasing when capturing video" do you mean the lines that you see on the cube on my video? Ye I think that can be avoided if you are really careful with getting the correct refreshrate and camera frame rate right, tho it sounds like you know much more about this than me.
    but for now we're starting simple and just chaining them all. How big of a deal do you think this is?

    Hzeller reccomended against this on the github issue I reference in the video so I thats why I ran 3 parallel chains of 2 panels each which seemed to work okay. I didnt try the alternative tho so couldnt comment if it would be okay or not.
  • Welcome to the forums @mikeysee! Twyyx showed your project and video as inspiration for our P2 community and it had a positive effect on everybody's interest. I think we've got some solid contributors to build upon your work and Parallax will get behind this to offer a kit (which reminds me, I need to get the HUB75 LED panels ordered tonight!).

    Ken Gracey
  • LtechLtech Posts: 285
    Great project!

    Perhaps integrate a wireless charge like smartphones, in the cube

    Daniel
  • Just some back-of-the-envelope calculations for power and runtime with different batteries.

    With my own tests and moderately busy displays, I've measured about 10W for a single panel. The data sheet says 25W. I assume this to mean that 25W is the safe requirement to plan for current handling at full intensity on all color channels.

    Common LiPo configurations are available in "shorty" size with 34 watt hours.

    Assuming an actual nominal usage of 15W per panel (this would be on the high side of the practical estimate), a panel cube would run for around 2 hours 15 minutes. A 6 panel cube would run for around 22 minutes. This is the conservative estimate in my view. It would likely be much higher for graphics which are not saturating the cube faces with lots of brightness.

    For my cube, I'll probably test with a single battery to ensure the C rating is sufficient to drive. After that I plan on switching it to a dual battery system. This can be made configurable with some extra battery connectors. (If you want to run with one batter, just connect the second string to the extra port on the first)

    For practical longer term use, I definitely see the need to provide a box top form where the bottom panel is open and configured to sit on a desktop base.


  • For me, I would want it tethered on one corner so that it could be hung from the ceiling with a wire leading down to power it like a chandelier.

    You need to be able to show all six sides.

    Mike
  • This is a fabulous idea, my experience building the cube was limited to Mike Cann's work (which got me about 95% of there way there) and the adafruit example. There were a couple of unknowns like panel orientation (whether you could rework it in software once you'd build it), the compilation of some of the things I wanted to do (I had hoped to get it working with LEDcat and push shaders to it, or play videos using flaschen-taschen), the specs of the Pi, the tweaking of different panel types using the electrodragon hat (needing to solder two jumpers for E type panels), scaling the 3D printed stand and keeping it as self-contained without having to keep opening it as much as possible. Those were the main areas of ambiguity, but the build was so much fun, and everyone I've spoken to all say "I want one!".

    The barrier for some will be cost, for me the electrodragon hat, neodymium magnets, bullet connectors, perspex panels to layer the components internally, angle brackets to hold the panels together, relays to unleash the power, boost boards for charging, nylon stand-offs, the 5v sonoff boards (so alexa can turn it on and off) were so cheap so I bought more than I needed. The bigger components (Pi4 £33, P2.5 64x64 panels £12, 3D printed stand £110, 6000mAh batteries £25 for four) bumped it up a bit. It's possible given I went to an outlet the 3D printed stand could have been cheaper, although I went for 100% solid as I was worried it might not be strong enough, and was going to drill it to create a dock. All in all it was about £250 which was WELL worth it, although the batteries took two months, everything else from China (read: AliExpress) took no more than two weeks including the panels which came first.

    I curated a bunch of animated GIFs, converted them to 192x192, using hzellers led-image-viewer (tweaked for a loading progress bar and a pixel-mapper which corrects any panel orientation and location shortcomings) converted them to streams and display them at random. Some of the GIFs are mesmerising and I have spent more time than I care to admit staring at it!

    I'll record a video of my journey which might help, hopefully you chaps will have a cheaper was of doing the 3D printing as that killed me! :)

    Last thing was to say the frame of the cube was by far the easiest bit (thanks to Mike), although the panels I had were 25mm from the mount M3 holes to the edge, so I simply took the back off four of the panels, cut the 10mm edge of one side and the 25mm brackets pulled the four sides to a solid cube no trouble at all, the cutting doesn't even need to be accurate as the brackets screw into two sides and the existing mounts and it's solid. Then as they're ferrous I stacked three magnets on top and the top and bottom of the cubes (with the magnets super-glued to the board) snap in. Then using nylon stand-offs simply put some perspex squares which slotted into the centre of the panels top and bottom, then putting the components in a perspex caddy meant it slotted in nicely.

    I haven't opened it since. The cube is trickle charged by one USB cable, the cube is free to be picked up as there are contacts in the base for charging, and can turn it on and off with Alexa.
    1512 x 2016 - 278K
  • iseries wrote: »
    For me, I would want it tethered on one corner so that it could be hung from the ceiling with a wire leading down to power it like a chandelier.

    You need to be able to show all six sides.

    Mike

    There will be room to add a different corner or edge format to the design. I'll take some requests on this once the main one is done.

    One clarification that I need to make on this -- a detail I missed the first time around-- is that these are the P2 panels, not the P2.5. I mistakenly said we were using the same panels as Michael, but there is actually less interior space in this form. We get 32mm less on each side to work with, but we get back the thickness of the original plastic frames. My wife was watching Michael's video and commented that his looked bigger.

    We can do a version for 2.5mm panels as well, but the initial supply of panels at Parallax will be 2mm. I sincerely hope that the demand for the panels is enough that we can ask Ken order more. That would be a good problem to have.
  • @cubinarium ,

    The 3d design of this version has taken more time than I would have liked, but I think it will be worth it. Now that the weekend is here, I'm close to switching gears so I can show what we have so far.
  • TwyyxTwyyx Posts: 63
    edited 2021-01-15 20:45
    One of the next challenges I have is fitting a P2 into the cube without taking a big footprint. The P2 Hub75 board is a bit big [ when combined with any compatible PCB carrier ], and no version of the PCBs available so far are compact in a stacking way that would be needed. I'll investigate using the P2 edge adapter and direct wiring to a couple Hub75 adapters to see if we can keep this on already-available parts inventory.

    If the fit doesn't work out (including space for LiPo batteries) then I'm going to have to resort to a custom wiring harness on the P2 edge adapter, which brings us back around to the level shifting concern again. I'd rather have the 5V logic levels than try to sneak by with 3V3 into 5V latches. Yet, we need to be able to have a condo-shaped stack rather than a ranch-shaped stack to fit into the interior. @"Stephen Moraco" Do you have ideas on this?
  • I have seen several post that 5 volts is not need to drive these panels. We drive HDMI at 3.3 volts with no issues also.

    Maybe the HUB75 adapter needs to be vertical instead of horizontal to be like the Edge.

    Mike
  • @Twyyx if the board size were the only problem, by removing the probing connectors I could likely get the board down to 1.75" in length from the current 2.75" or maybe even 1.5". However, that doesn't solve the connecting it to an edge and us getting 5v from the edge.

    Is there any way to do this without needing a custom edge adapter?

    A custom edge adapter would have to have power-in and possibly move the contents of the hub75 board to the PCB with the connector for the edge (IC's, caps, and IDC shrouded connector). We'd end up with an L shaped arrangement of boards... probably also need a header for prop-plug and other niceties...

    (just thinking out loud)
  • PropGuy2 wrote: »
    You could possibly use a flat magnetic electrical connector like these from D-K
    I think those are really cool, but they are expensive!

  • Stephen MoracoStephen Moraco Posts: 150
    edited 2021-01-16 19:32
    @Twyyx I think I have a better, easier, idea...

    Just place the P2 Edge and the hub75 parallel to each other and use a connecting custom PCB with right-angle pins for the hub75 and the standard edge connector for the P2 edge. Now the two stack in parallel and we use stocked parts and a small custom connector board. You'd want to plan other I/O so you can plan the overall layout of the custom PCB... I could easily see 4 of the 6x2 rt-angle headers coming off the custom PCB leaving 16 pins for HUB75 and 16 for other devices.

    Does this make sense? I could try to make something to help us visualize if you need/want it.

    (next round of thinking out loud... ;-)
  • Here's what I mean (attached)

    (I'm just showing the board relative to each other with a single row of right-angle header to help us visualize....)

    3024 x 2953 - 1M
  • That could work, but at the cost/complexity of adding a custom PCB to the build. If I go that far, I'll probably ask for a multi-out HUB75 adapter board with unsoldered header holes.

    It's becoming more clear that a 2 or 3 channel feed will be desirable.

    Since we don't have a solved solution for fit and function right now, I'm going to run some experiments after cube assembly this weekend. If I get through this by the weekend, I'll post results. First, I need to make the cube assembly video and instructions and post them here for early testers.

    Options:

    1) Triple-stacking the driver on some direct-wired IO using the edge board adapter. I think it will work for these specific panels, but it can only be verified by soldering it up and driving it at speed to see if it can keep up with the level-shifted version.

    2) Drive a single 1x6 panel chain using the P2 and HUB75 adapter near the 20Mhz rate supported, and see how it works out. Ideally this would be fine as long as the clocking doesn't compromise POV refresh rates too much with video recording.

    I believe that flickering video is not a compromise we have to make. Fundamentally, this is a function of refresh rate, which depends on color depth, and LED chain length. (Add more color resolution, you reduce the periodic stability of the color at high frame rates, Add more LEDs to the chain, you reduce the maximum possible refresh rate). One could argue that adding color depth isn't really an issue, but I'd counter with "it depends" in terms of the actual chain length nd color planes in use. All of this is a bit hand-wavey though. We can calculate it on the back of a napkin if we want, but nothing will replace an actual test with a real circuit and some video, so that's the route I plan on taking for the testing.


  • TwyyxTwyyx Posts: 63
    edited 2021-01-17 14:11
    Here is a teaser video on the P2 P2 Cube Frame construction. This was a test build for now.
    The video is unlisted since it is just for us. I'll put something more polished together after improving the design based on findings during this assembly.

    The good:

    The joints were quite effective and not too hard to to assemble. The mag joints have a very satisfying snap and hold behavior. The liner plate matched up exactly as it should have. After assembly, the frame was quite durable and rigid. Interior space is quite open with the liner plates protecting the PCB backs.

    The mag joints for the top were the easiest, so I'll be refining the design of the other joints to use the same through-hole post method to work the same way. I really liked ability to snap the front and back pieces of the joint together for a secure fit and then add a drop of CA glue with no clamps. All the joints should work this way.

    Overall, the assembly was fun and engaging.

    The bad:

    I need to do more printing and test assembly, thus pushing out the other parts of testing. Some minor clearance issues need to be addressed before all the models are shared.

    The screws that I sourced for this design are weak enough that the heads come off without even being
    screwed all they way down. I'll reduce tension on them by enlarging the screw holes slightly. It's just not easy to find 1mm diameter screws in bulk. If someone knows of a good source of 1m screws in 3-4mm length, I'd be happy to try something else.

    The ugly:
    I dropped a stock LED panel on the concrete floor while rearranging the workspace. This is now the official test panel. It's a good thing I anticipated my own clumsiness on this and bought 2 extras.


Sign In or Register to comment.