P2 P2 Cube
Twyyx
Posts: 66
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
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
Comments
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.
We would just need to come up with a command sequence to load or control the panels.
Mike
@"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.
Mike
The 25mm hinge we have here is (only just) too small to work with the locally available hub75 panels from Altronics.
Even normal hinge, centrally fixed, could work if lucky enough to find the correct hold spacing
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!
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.
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?
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.
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.
Ken Gracey
Perhaps integrate a wireless charge like smartphones, in the cube
Daniel
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.
You need to be able to show all six sides.
Mike
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.
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.
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.
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?
Maybe the HUB75 adapter needs to be vertical instead of horizontal to be like the Edge.
Mike
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)
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... ;-)
(I'm just showing the board relative to each other with a single row of right-angle header to help us visualize....)
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.
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.