This is honestly so creative. It makes me filled with that childish sense of wonder I initially had with coding. What things could you make if you had a whole box of snap-ins and a few Pockits? This is frigging insane. If you're an angel investor consider throwing this guy a bone!
Really, truly blown away. I'm sure there are plenty of edge cases to correct for but I haven't gotten so excited by a demo in a long time. I've obviously signed up to learn more.
First, a clarification: Since people have brought up the topic of "hard to believe one guy handled all aspects", I want to state that while this is my concept and my project (and I've devoted nearly every waking hour since 2020 to it), I'm no jack of all trades.
In the last two years, for example, I've gotten occasional but much-needed help (and knowledge) from two freelancing developers for some aspects that I don't have expertise with, including Linux intricacies, DMA-based firmware programming, UI design details, and some other subtleties. A more experienced PCB designer (colleague from past) has also helped me, particularly with the recent 6-layer PCB layouts. Plus, an assistant in the past has aided with the soldering of some tightly packed boards.
Last but not least, my SO has contributed graphics + Adobe Premiere effort for my videos; her equally important contribution was being a frequent listener, and sometimes a much-needed boundary, to my evolving thoughts through this project's journey.
As the project evolves to its next phase, I do hope to get more people into primary development of this modular ecosystem, in the form of both team members and eventually custom Block designers from the community, once I organize and release the necessary files + documentation for everyone to work with.
I'm perhaps late to the party, but I'll try to answer as many questions as I can on this thread now, including hopefully the ones posted several hours ago!
Contact in the HN profile.
How are you planning to commercialise this?
Awesome and Inspiring work!
The algorithm that chooses the most likely/useful application for infinite possible combinations of modules would be an impressive feat for a single person.
The multidisciplinary coding required to get all of these pieces to work together in a hot-swap way would be an impressive feat for a single person.
The design and implementation of a single physical connection interface that can adapt or carry all these different protocols (USB, HDMI, etc) would be an impressive feat for a single person.
Not to mention the PCB design, 3D enclosure design, machine learning proficiency, aesthetic product design chops, and on and on.
All together, this is unbelievable. This is 0.01% level stuff. Mozart, Musk, Melville. Somewhere in that neighborhood.
However, the most complex and costly part is the PCB and circuit design. The PCBs used in the blocks are absolutely awesome.
Thanks to 3D printers that are cheap, the casing and other plastic materials are easy to make.
All that being said, this has very low chance of becoming a real world product. Real world is messy, dirty, wet and an absolutely shitty place for snap on electronics.
What would work, is better connector technology. It is obvious that even with all this simplification, this will still be a hobbyist product, rather than a serious mass market product.
Google tried this in 2015. It was called Project Ara.[1] A similar click-together system, with the same problems. Plus the problem that there's no good reason to make a phone that way. Google acquired that from Phonebloks and killed it.[2]
It's not a bad idea if you solve the mechanical problems and have the components produced in sufficient quantity to be very cheap. A little bigger, a lot more rugged, with a good wire management solution, and you'd have something useful.
[1] https://www.cnet.com/tech/mobile/project-ara-everything-we-k...
As solo founder this is really motivational - I hope my upcoming project garners even half the interest once launched! So many hats.
Because of what's happening with climate, pollution and e-waste, the future is modular. Modular phones, computers, cars and even nuclear reactors.
Having this kind of thing in schools helps kids get used to the idea that technology is configurable at the physical level without electronics skills.
Strong interoperability legislation should be a part of technology going forward. Industry will welcome and adapt to it because it's ultimately a better compromise than tougher regulation and export controls.
Sounds cool, but the reality is that in order to get the best efficiency, you often want a purpose-built, specialized design. In the case of electric cars, you need your car to be very light and to have a very integrated design in order to maximize energy efficiency. I'm not sure what you mean by a modular car design, but you definitely can't fit any motors with any battery in any frame, that will just make for a car with terrible performance.
That being said, we should be designing things to maximize lifetime, and we should probably ban certain materials or construction techniques that make recycling difficult. Maybe we need to ban or heavily tax non-recyclable materials. We could also do more to build a legal framework around right to repair.
> Having this kind of thing in schools helps kids get used to the idea that technology is configurable at the physical level without electronics skills.
Kids is probably the best use case. As someone who makes things I look at this product and I think it's necessarily going to be more expensive and less flexible compared to alternatives. For kids though, this can be a gateway to make electronics less scary.
> Strong interoperability legislation should be a part of technology going forward. Industry will welcome and adapt to it because it's ultimately a better compromise than tougher regulation and export controls.
I agree. We should be strongly promoting (and maybe legally mandating) open, documented standards for everything.
Not any in any, but some in some is already possible, some Renault cars share parts for example with Dacia. But other companies tweak their design each yer, they change how the head lights look, shapes change, then some other inside parts shape needs to change so you got people having to redesign, re-test each year new filters and piping/hosing (this is the ones I am familiar with), Other shitty thing that happens is patents, some company gets a patent for some pretty obvious thing, now if you want to make spare parts for those cars you need to work around dose patents - a lot of work and expenses to be able to offer a different choice to the consumer.
The reason the engines and other parts can't be share is design and recently DRM, for sure you won't be able to install unofficial wheels on your fancy car without breaking some DRM protection(but is for your safety /s).
What are the alternatives? Is there something like this I can get my hands on now?
>we should be designing things to maximize lifetime
The duality between these two competing (and defensible) positions is the crux, isn't it?
With this video my jaw kept dropping every couple of minutes.
A very cool toy, a very sophisticated toy, but a toy nonetheless. There were in the past, and I think still today, electronic sets that let you click together modules with magnets to make circuits. It was a very handsy, easy way to play with electronics. But, in the end, that's what it was -- play and exploration.
The beauty of the concept is the easy interchange of the parts and such, and that's it downfall when you desire to render something down in to a "production" item. And by production, I mean something you're going to handle with any frequency. The ease of composability is counter to the hardening necessity for everyday use.
I supposed you could glue the parts together, but by that time whatever you made is now made of rather expensive components. Or they could offer an alternate mechanic to "realize" systems built for the longer term.
Until then, it's a wonderful toy. And that's not a bad thing.
Similarly, the pockit has not that single use-case and you have to spent some time to adjust it to your use-case. However, especially with the Pockit-to-Pockit communication you can build so many cool things.
Maybe a PC is just a toy too, but IMHO it depends on how you use it.
Let's remind ourselves that this is a highly advanced proof-of-concept. If the issue really is simply the integrity of materials, that can be improved, and should not be considered a long-term limitation of the underlying technology: which is frankly too sophisticated from a design and software perspective to be set aside as a toy.
After all, the difference between a "Fisher-Price" drill and a "De-Walt" drill is the integrity of materials and underlying software. It is arguably a toy aesthetically, but (in accord with your argument) it is a few carbon fiber pieces away from becoming a useful generalized personal computing tool, the same way a drill is a useful generalized power tool.
(This message brought to you by the society for people tired of Jony-Ive-esque bullshit being passed off as the One True Design Paradigm.)
Now I have sitting next to me a smartphone which has 5 cameras, GPS, wifi, bluetooth, NFC, 128GB of storage and 4G.
Basically on a mass production scale it is always going to be cheaper just to put every feature in one device and build a billion of them.
EDIT: Which is not to say the system doesn't have some possibilities - at the right price point I'd replace every light switch in my house with a plate of this, and have them remotely control relays so I could remap everything. For task-specific physical applications you might want to remap/customize to taste, there's a lot of potential.
When it comes to physical widgets, there's a limit to how many you could practically have on one device. I think the real value here is that it could be open to market to allow a real diversity of physical augments allowing people to improvise devices that are unlikely to be manufactured into a single form factor, but might be perfect for their niche use case.
I loved some of the insane designs prior to manufacturers deciding that the iPhone form factor was the way forward.
That said, Moto/Google did try something like this once, "Project Ara" which never really went much of anywhere. It led to a few modules being released for the Moto G and that was it. (IIRC)
No need for relays – you can replace the bulbs with smart lightbulbs that can be controlled via Zigbee. Ikea smart bulbs are high quality and good value.
What a wild achievement. Well done.
- Joseph Brodsky
https://old.reddit.com/r/linux/comments/ta85ql/my_small_modu...
Shorter demo (7:30) submitted to Reddit:
https://www.reddit.com/r/arduino/comments/dj7ilc/so_ive_been...
all posts about this project (around 30):
I find it hard to believe that one individual plus a small community of hackers have built all of it. Amazing, amazing work.
The one question I kept asking myself as I was watching the demo:
Is there a mass market for such a beautiful, elegant, modular computing device?
My thoughts: Not immediately, but yes, eventually. Humans have an innate willingness and desire to tinker+make things. Those qualities have gone into hibernation due to the vast array of mass-manufactured, off-the-shelf devices in the last decade. But many (have and will) come to realize that the satisfaction ceiling is so much higher when you build something yourself, getting your hands dirty, and looking at the product of your efforts.
Just that reason is enough to give rebirth to the experimental/inventive attitude that pervaded the 20th century. But there's also the fact that a personalized something can allow you to do stuff that a typical consumer product couldn't.
Pockit just aims to enable and accelerate the above realization for hardware, the way that libraries and frameworks have done for the programming world.
If you're asking more practically - the success of Raspberry Pi, Arduino, Seeed, and others suggests there's at least potentially a market here sufficient to sustain a moderately sized business for long enough to be worthwhile.
Agree about the demo, too - there's some serious wizardry on display there. I think it's one of the projects that just gets more impressive the more time you've spent trying to do what they're showing off.
Many people want a thermal camera on occasion, but probably don't need one lying around all the time. Here's the solution. Maybe you want a Gameboy? Put one together on a lazy afternoon and play some retro games. Oh, you just want a quick and dirty USB hub? Do it. Oh, no! Your car is acting weird and you want to stream the OBD-II data and match it with accelerometer data? Go for it!
This is just insane in terms of flexibility, and I think it could replace many devices people use extremely infrequently, as well as do other things we don't really think about. And it's fun! Technology is absolutely insane now, and I think we neglect the fun aspect too much.
Edit: I used the word insane a lot. I stand by it.
The people who could do that are the people who have time to spend hours watching Netflix series but usually they are the lazy type and not interested in that kind of things.
Unless it is used by a school most of those things end up in drawer not to be used again.
"Oh, look! Here's Ara. Back from the dead. It's a miracle."
Pockit Modular computing demo [video] - https://news.ycombinator.com/item?id=26590715 - March 2021 (33 comments)
Project Pockit, a modular ARM computer runnig Linux - https://news.ycombinator.com/item?id=26547377 - March 2021 (15 comments)
So it seems like it's kind of like low-pin-count ISA-ish bus with direct pin connections to the cpu's pins. Presumably that limits how big a board you can have to the number of gpio pins you've got, or you'd have to build some kind of multiplexing like oldschool irq/port sharing...
I'm really curious if it would be possible to do this as, essentially, single lane PCIe blocks instead. I think it would be harder from a hobby-project perspective (and also probably complexify the blocks), but PCIe is kind of built around flexible topologies so you could build it around a pcie root complex/switch instead of just directly exposing pins to the devices ISA-style.
SPI and I2C plus some generic pins. This are the typical interfaces used in microcontrollers.
If I were to build a “bigger” versions of this, I’d avoid PCIe altogether and jump to USB 3.x directly, since it’s a much better fit.
Something about this just seems fresh and fun again.
Tech is still fun. It might just be that you're getting older.
Arduino and the like are probably the least commercialised and they are ok. But everyone grows out of them.
It reminds me of Star Trek's Isolinear chips that you would see Crew members slotting or re-ordering to create different effects, or create an ionic pulse from the deflector shield.
This appears to be that, but with a Pi (and of course a lot of impressive finish / software ).
A Pi for the masses / convince sounds amazing.
Bunnie is probably one exception to that rule, though.
However, wow do I want one. This is so cool, I heckin love this. I love everything about this. The whole thing just looks delightful from the blocks, to the configuration/programming, to how real-time and responsive the feedback is when moving blocks around and hooking stuff up.
Amazing presentation too, this video is really well made.
[0]: https://old.reddit.com/r/linux/comments/ta85ql/my_small_modu...
Automagically plugging in more compute would, I guess, require OS or application level support.
The magic here is the overall flexibility and modularity of the system taken to a nearly absurd level. Kickstarter is lousy with smaller-scale attempts at what Anil has achieved. But where this really shines is in the software: You plug in some components and the system can automatically figure out what you want to do with them, and configure an application to use them instantly, at least for many simple but common cases.
I really hope that when this is available, it ends up being a largely open ecosystem like the Framework laptop.
I will definitely be keeping a very close eye on this project!
I sincerely hope it does well enough to get to production levels large enough to be "affordable". I would totally buy this for my Daughter's as a way to get them interested in building/coding.
https://www.reddit.com/r/Pockit/comments/plhugs/is_this_proj...
Perhaps a web app with a 2D board where users can place modular blocks the same way one would place Pockit blocks on the magnetic breadboard. We could have a geolocation module, vibration module, button module, slider module, camera module, etc. Like Pockit, the system finds a script with the closest matching blocks to what's placed on the grid, and runs the script. E.g placing a camera flashlight module + button module on the grid triggers a script that would toggle the light when the button is pressed. User could also write their own scripts.
[0]: https://developer.mozilla.org/en-US/docs/Web/Web_Components
Also Drupal and Wordpress have similar funcionality via plugins.
That's what I'm thinking.
I've always wanted little bits and bobs of hardware to mess around with, but actually getting into the EE required for it is fun but time consuming.
This really fits right into what I'd want for something that allows for quick POCs, prototypes and just trying new stuff out.
I'd love to make things like a hacked together OP1! https://teenage.engineering/products/op-1
But I like the concept for areas such as schools etc., because it makes it possible to try a bunch of different things very fast.
In terms of "serious use" I think that depends on what you mean by "serious". E.g. my hone automation setup is not static, because I keep finding new little things I want to tweak, and often the ready-made solution lack options I'd like to have unless I'm willing to spend time tracking down very specific modules. My time is valuable to me - I'd happily pay extra for a modular system where I know if something is lacking a button for something I want I can literally just plug one in instead of having to search all over for a different model of something.
Of course this will not replace mass market "close enough" solutions.
But I think there are still more than enough people who want to tinker but don't want to have to whip out a soldering iron.
But I am not sure about the rest.
And what you don't see in demos like this are the practical limitations that the demo avoids. I didn't watch all the way to the end but I had questions about how the device communicates its limitations and handles situations where, for example, it cannot supply enough power.
EDIT: Though that does make a key weakness the fact that there doesn't appear to be any provisioning for locking down the blocks more aggressively to the board.
I'm betting that it will be cost-prohibitive to have this device as a permanent fixture for any one application outside outside of the sorts of things an rPi4 already does (Home Assistant server, etc). I don't think anyone is going to use it to control an LED with a slider, but for prototyping that sort of thing it has endless possibilities.
Hats off to Anil for the huge amount of work he put into this project.
Perhaps slightly more realistically speaking, could they be made stackable? Perhaps this could be a way to set up certain operations, for instance you could have some hardware for doing efficient convolutions on a camera feed as a "middle" block.
As a work of a single person this project is totally amazing. The author is a gem.
Alternatively, I'd like a software product that makes it a snap to run programs on cloud provider but bridged/tunneled as if they were running on my local lan. I want it to support multicast dns and all of that stuff for things like sonos, zigby, chromecast, airplay, etc.
Best line ever :D
It is one thing to have the skill to solder a chip off an existing board without damaging it, but being able to reused the same chip with a completely different hardware interface is just impressive.
Anything requiring low latency or high-throughput will probably struggle here.
Some follow up:
Typical, fairly sensationalist piece on Google's Project Ara - https://www.youtube.com/watch?v=PQqudiUdGuo
and then, Phonebloks, 5 years later - https://www.youtube.com/watch?v=_wwrIpv38nE
My reaction was: "Ok, that's cool, but he can not have X module" a minute later "X" appears, and it went throughout the video.
If this goes for reasonable price and has some kind of soundcard block I am going to buy this and made synth out of it.
I can't even imagine how complex the code must be behind the scenes for all of that to work together.
What an amazing design.
Wouldn't a desktop with 100 USB ports be a modular computer in the same sense as this thing?
I would encourage using optical and wireless interfaces instead of wired interfaces since those are much less sensitive to the quality of the contact. Power supply could be inductively coupled. If you make it all RF wireless you don't need the baseboard, the modules could be anywhere, powered by anything. The modules, especially the inputs, should be able to dynamically alter the routing of all the other modules (for example, routing audio from five input modules to either or both of two audio output modules controlled by a 3-state switch.)
In some ways I see this as building a configurator for an MCU. MCU's have all kinds of I/O, timers, interrupts, some have RF interfaces and sensors, etc. Imagine all the modules (or at least RF/optical interfaces to them) already built into a chip and you just want to configure them for a specific application. Instead of copying the example code for a SPI interface and modifying it, you instead just configure it in a configurator. The configurator could automatically recognize multiple chips and let you route RF/optical connections between them (with a selection of protocols) and configure their I/O. No need for a baseboard or modules, everything is just general purpose chips with tons of stuff already built into it (sensors, RF, I/O, protocols), and you just turn on and off and route whatever parts you need. Sounds somewhat wasteful, but if you make a trillion chips like this it may actually be more efficient, particularly in terms of human effort, for building a wide range of systems. Security would be a problem, if a flaw is found in the basic design everything built using it would be vulnerable. Reliability might be increased since anything that fails would be trivial to replace.