Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Laya the open source version of Jev(convaiinnovations.com ↗)
    142comments
  2. A graphical desktop for the ZX Spectrum(github.com/mindbox77 ↗)
    47comments
  3. Tin: full-text search for Postgres(planetscale.com ↗)
    41comments
  4. AI-generated posters don’t have to be horrible(john.hartnup.uk ↗)
    454comments
  5. Human brain is two separate organs, Stanford Medicine-led research finds(stanford.edu ↗)
    180comments
  6. “The Secret Life of Circuits” is here(coredump.cx ↗)
    51comments
  7. Asking Authors About Their Own Papers(medium.com/tmlrorg ↗)
    35comments
  8. Black Holes or Black Hole Stars? Astronomers Spar over 'Little Red Dots'(quantamagazine.org ↗)
    13comments
  9. I built the fastest PHP webserver in the world(qbixserver.com ↗)
    28comments
  10. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    551comments
  11. San Francisco Onion Futures Company(onionfutures.com ↗)
    116comments
  12. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    132comments
  13. New evidence for hidden chambers beyond Tutankhamun's tomb(nature.com ↗)
    5comments
  14. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    190comments
  15. What Zig felt like, coming from Rust(besok.github.io ↗)
    106comments
  16. Learning Another Language May Be One of the Best Ways to Keep Your Brain Healthy(theconversation.com ↗)
    39comments
  17. Cloudflare Quick Tunnels(cloudflare.com ↗)
    301comments
  18. How to Write with an LLM(sockpuppet.org ↗)
    360comments
  19. Agreement between the USA and Denmark (1951,2004) [pdf](state.gov ↗)
    13comments
  20. You can run Git on object storage if you re-make packfiles(tigrisdata.com ↗)
    24comments
  21. Communication by means of modulated Johnson noise(pnas.org ↗)
    18comments
  22. Saving another 100TB of RAM(cloudflare.com ↗)
    89comments
  23. SDCC – Small Device C Compiler(sourceforge.net ↗)
    23comments
  24. Ray Ozzie and the Optimism of Being Early(reproof.app ↗)
    11comments
  25. Science Is Open Software(jepedersen.dk ↗)
    51comments
  26. Why building a Rust LSP is hard(rust-glancer.github.io ↗)
    44comments
  27. The first new cat species discovered in 100 years(nationalgeographic.com ↗)
    122comments
  28. Ctenophores: Wonders of Biology(quantamagazine.org ↗)
    7comments
  29. OpenJev(openjev.com ↗)
    279comments
  30. From Stonemasons to Carpenters(thelastsoftwareengineer.substack.com ↗)
    4comments

Ask HN: Best Lego Mindstorms alternative for fun programming projects?

141 pointsby 8y ago
59 comments
What are the best Best LEGO Mindstorms alternatives out there? No upper age limit.
8y agoHN ↗

I’m not sure if this is very helpful, but I know here in Toronto you can use 3D printers and borrow Arduinos and other parts for free from certain locations of the Toronto Public Library (or virtually free? Haven’t done it yet).

Maybe something like that exists where you are and you can create your own? There are a lot of projects online with schematics and even step by step instructions. Not an exact alternative or anything, but might fulfill similar requirements in learning.

8y agoHN ↗

This is a fantastic idea. An arduino and renting time on printers in your neighborhood with 3DHubs is brilliant (our family is a hub and there are dozens of others in our local network). The possibilities are endless, the skills are directly transferable, and the communities are awesome. Lots of free projects are available online. Makerspaces are everywhere now so you can go hang out with other enthusiasts and talk your passion. Share your creations online to get lots of positive comments from all the 3D printing enthusiasts. This is the best way to go.

8y agoHN ↗

I thought they charged on a per minute basis. Still ... a valuable resource.

I haven't done the costing but seems buying a cheapo printer is more economical than using any per-minute service .. especially, when one is getting started. That said, last cheapo printer I got kept breaking down .. when I was in an inspired mood, I had to wrestle with the darn printer. Seems like a nice model where I can rely on someone else to keep the printer working - if it is cheap enough :)

8y agoHN ↗

Yep it appears there is a fee. I hadn't looked into the details, but assumed they must charge at least for material.

Seems as if there's no time limit, but you are charged for filament. (Plus sales tax)

A printing fee of $0.10 per 1 gram of filament (printing material) will be charged for each print job. An average print job is about 10 grams and costs $1 (10 grams x $0.10 = $1). There is a minimum charge of $0.10 per print job. A 13% tax is also applied to each print job.

A maximum of two hours is allowed for most print jobs with a dedicated printer available for longer prints at all locations (except Toronto Reference Library). Call your nearest Digital Innovation Hub to inquire about rules and availability of booking a longer print.

https://www.torontopubliclibrary.ca/using-the-library/comput...

TPL Digital Innovation Hub: https://www.torontopubliclibrary.ca/using-the-library/comput...

8y agoHN ↗

Arduino and 3D printers to make Lego Mindstorms/Technic-compatible parts is what I do. (I call my parts "Bitbeam".)

I used to use Lego to prototype the robots and machines I make. Now I design my own "Lego" with OpenSCAD and program the bots with AVR microcontrollers. Have been doing this for 7-ish years. However, Lego Mindstorms is still a great (although expensive) system for learning.

8y agoHN ↗

Sounds great! Have you got any related blog posts and/or open-source code? I'd love to have a look :)

8y agoHN ↗

Can consumer 3D printers pull off decent lego compatible parts? I'm fascinated by the idea of 3D printers, but I don't really have a good use-case to justify getting one. (And I've been waiting for them to come down in price.)

I ended up getting my five year old the Lego "Boost" set - I wanted some motors &c that were accessible to him. He's had fun putting together the projects, and playing with the scratch programming.

It is tied to their app, but I see that someone has python libraries to talk to it, so I have options if the app goes away.

8y agoHN ↗

Nothing can truly match Lego's perfectly tuned injection molding process, however 3D printing can be good enough for many things.

8y agoHN ↗

I'm a fan of the BBC micro:bit. The basic board is very inexpensive but comes with a lot of possibility already soldered in. You can choose among several well-supported programming languages, from Scratch on up to C++, so it can grow with you for quite a while.

There's not really an official robotics kit that I know of, but there are several 3rd-party options on the market.

8y agoHN ↗

Yup .. I also encountered the microbit recently, and it is very well done IMO. A bit easier to use than the Arduino for lil kids.

8y agoHN ↗

(full disclosure - I work for micro:bit)

If you're looking specifically at Lego, then the sbrick-plus https://www.sbrick.com/ can talk directly to a BBC micro:bit https://github.com/vengit/pxt-sbrick so you can use the micro:bit and Lego together. There are also a huge range of micro:bit accessories from third parties that do robotics, sensing, lights, etc.

8y agoHN ↗

I'd feel remiss not to mention a project I'm working on that is currently running its Kickstarter campaign: https://www.kickstarter.com/projects/460355237/smartibot-the...

It's a pretty comprehensive robotics package, with built-in 4 strong DC motor drivers and 10 servo ports.

It's a project "inspired" by the micro:bit... the original plan was to make it hardware compatible but we were keen to upgrade the mcu to the NRF52 from the NRF51 so this was not possible, so we are working on porting the Makecode environment used by the micro:bit to it.

8y agoHN ↗

Potentially look into VEX? It's not cheap, but it's good fun.

8y agoHN ↗

VEX has announced a new micro and accompanying electronics - which should hopefully mean that their current Cortex system will become cheaper secondhand. Lots of benefits to the new micro but for hobby use their Cortex is sufficient.

Also a lot of good programming options available with this system - the same ROBOTC for C-like programming/graphical as is used with LEGO Mindstorms, but also Python (https://www.robotmesh.com/studio-editions) and actual C (https://pros.cs.purdue.edu/)

8y agoHN ↗

Last I looked at Vex, I seem to recall being surprised that the software was not free. Was a non-starter for me as a hobbyist.

8y agoHN ↗

The RobotMesh python software listed above is free for individual use, and the PROS C/C++ option is completely free and open-source.

8y agoHN ↗

microblocks.fun is still in Alpha, but check it out nevertheless! It works on lots of 32 bit microcontrollers.

It's been tested on the micro:bit, circuit playground express, calliope and several Arduinos.

8y agoHN ↗

How about... Mindstorms? What constraint makes you seek out an alternative?

8y agoHN ↗

I used to think so too, but you get a lot of value for the price, especially when you consider the variety of projects you can build, the relatively beginner-friendly programming toolset, and the number of videos, books, and other supporting resources available.

8y agoHN ↗

Overpriced is maybe a strong word (I get that Legos are expensive because they're a higher build quality than other interlocking blocks), but Mindstorms is a very expensive option, all the same. At that price point, even though I could afford a set, I don't really consider it an option for trying to get a kid interested in programming or robotics, because I'd feel pretty chapped about hundreds of dollars down the drain if they didn't end up taking to it.

8y agoHN ↗

FWIW, I had the first generation Mindstorms and I definitely consider it the most important factor in getting me interested in engineering and software.

Resale on LEGO is good, so if it works out and gets the kids interested, it's a small price to pay to introduce them to logic and mechanical concepts (make sure you don't lose any pieces). If it doesn't work out, sell them and take a small hit - it's really a win-win in my book.

8y agoHN ↗

I had basically the same experience.

It would be really hard to beat the LEGO Mindstorms experience for ease-of-use and learning through experimentation.

8y agoHN ↗

No LEGO is definitely over priced for what you get now

My kids new LEGO sets have had multiple bricks brack. We’re using the few I had as a kid that have held up for 30 years, as replacements

Their remote control train never worked, after 3 months of receiving the wrong parts, finally getting what we hoped was the right one, the battery box stopped powering on

They’ve become a second hand junk shop buy. No more supporting their throwaway this plastic in 6 mos crap

8y agoHN ↗

I don't really consider it an option for trying to get a kid interested in programming or robotics, because I'd feel pretty chapped about hundreds of dollars down the drain if they didn't end up taking to it.

The OP didn't specify who the Mindstorm alternative was for, but for young children, the new Lego Boost is cheaper (~ $160 vs the ~ $350 for Mindstorms EV3) and probably an easier introduction to programming and robotics than the Mindstorms, but seems to also be quite hackable (but I don't think you can install your own linux on it like the EV3).

https://www.lego.com/en-us/themes/boost/products

8y agoHN ↗

I've gotten (and extended) the ranger kit this summer: https://www.makeblock.com/steam-kits/mbot-ranger

I've been generally happy with the price and hardware, but I've grown to really hate Arduino. Makeblock publishes a bunch of code, but it's highly redundant and poorly organized, and I find myself constantly using the slightly wrong version of different pieces of code. But IF I ever figure this stuff out, I'm slightly hopeful about controlling the Makeblock hardware from RaspberryPi.

The basic approach is to have the RPI connected to the Arduino board via a serial connection (this has also difficult to setup, but sometimes I can do serial over the USB), and then there's just a very simple protocol that runs. Once this is actually working properly, there's a fairly small Python library to do the talking, and you get the benefit of the RPI environment (logins, wifi, camera access, etc), but with the hardware of the Makeblock unit (on-board sensors, no direct GPIO handling or contention, and pluggable sensors and motors). But getting there... ugh, it's been really challenging and I only got hints of it really working so far.

8y agoHN ↗

I got a Cozmo ... has vision and a Python API, which seems like a good idea. Haven't had a chance to really use it. It was also a bit expensive.

I have made my own robots in the past. Frankly, my flakey hw killed my sw enthusiasm. That's why, I am happy to pay a bit for functioning robot hw.

Next, I want to get into robot arms. Something with the DoF of a kuka arm but doesn't need to perform as well and on a low budget. My current prospect is the Dobot Magician but I am still on the fence.

8y agoHN ↗

Depends on how many prebuild (proprietary and expensive) components you want. I think the absolute best platform for robotics is Arduino. Pretty much anything you can think of has been done, and there's likely a step by step tutorial out there somewhere with component lists. Arduino UNO clones can be had for as little as $3-$4. And the components like LEDs, motors, servos, etc can be had for a tiny fraction of what a lot of the proprietary systems cost.

The downside comes when you want to do things like attach a motor to a lead screw, or attach something to a servo. You'll probably end up needing a drill press or an improvised lathe. But, I think compared to the cost of the proprietary systems, you can still come out ahead. And you don't have to worry about breaking something or dedicating a motor or controller to a project because they can be replaced cheaply.

8y agoHN ↗

Thanks for your response! This is absolutely wonderful! Could you provide some further links to example projects (eg, interesting open-source designs and/or source code)?

8y agoHN ↗

Hey thanks!

I’ve been pushing hard on new developments and need to spend more time documenting my projects. But I have some info on another robot here: https://hackaday.io/project/158458-rover-v2-four-wheel-drive...

There’s lots of cool robots on hackaday: https://hackaday.io/list/158174-thp-2018-semifinalists-open-...

I also recommend browsing http://reddit.com/r/3dprinting as there is a lot posted there. And check out http://reddit.com/r/RobotBuilding

I also run a website to discuss projects that have a social impact. That’s at http://reboot.love

There’s a lot of good stuff online!

8y agoHN ↗

I have to admit I wasn't aware of any of these fascinating and useful resources. Thanks a million once again!

8y agoHN ↗

Second this advice, along with laser-cutting if you have access to a shared workspace with one in your area; take a look, you might be surprised.

Electronics had may as well be lego bricks, these days. If you want to make a robot, you can mostly plug together cheap pre-built modules on breadboards. Outfits like Pololu have great options for things like small-scale motor control and DC/DC conversion, and tiny displays/sensors/etc are ubiquitous.

8y agoHN ↗

If you are looking to explore programming, there is a great python library for interacting with the LEGO Mindstorm.

Possibly a stepping stone into more programming intensive projects.

8y agoHN ↗

Plywood, jigsaw, pololu, some servos and your regular computer or laptop or a rasberry pi. Add sensors to taste, stir.

8y agoHN ↗

And don't forget regular cardboard. One can do surprisingly much with that.

8y agoHN ↗

If you are happy with Arduino or MicroPython, the M5Stack [1] blocks and ecosystem are pretty nice (and Lego-compatible). It is basically an ESP32 microcontroller with a display, speaker, sensors, and connectors in a 5x5x2 cm case. Documentation and build quality are not yet perfect but good enough for most applications.

[1] http://www.m5stack.com/

8y agoHN ↗

One of the coolest ways to learn programming I've ever seen is the Snap! visual programming language, which is written in JavaScript and runs in the browser.

https://snap.berkeley.edu

It's the culmination of years of work by Brian Harvey and Jens Mönig and other Smalltalk and education experts. It benefits from their experience and expert understanding about constructionist education, Smalltalk, Scratch, E-Toys, Lisp, Logo, Star Logo, and many other excellent systems.

Snap! takes the best ideas, then freshly and coherently synthesizes them into a visual programming language that kids can use, but is also satisfying to professional programmers, with all the power of Scheme (lexical closures, special forms, macros, continuations, user defined functions and control structures), but deeply integrating and leveraging the web browser and the internet (JavaScript primitives, everything is a first class object, dynamically loaded extensions, etc).

Y Combinator demo:

https://i.imgur.com/cOq8tvR.png

https://snap.berkeley.edu/snapsource/snap.html#present:Usern...

Here's an excellent mind-blowing example by Ken Kahn of what's possible: teaching kids AI programming by integrating Snap! with existing JavaScript libraries and cloud services like AI, machine learning, speech synthesis and recognition, Arduino programming, etc:

AI extensions of Snap! for the eCraft2Learn project

https://ecraft2learn.github.io/ai/

The eCraft2Learn project is developing a set of extensions to the Snap! programming language to enable children (and non-expert programmers) to build AI programs. You can use all the AI blocks after importing this file into Snap! or Snap4Arduino. Or you can see examples of using these blocks inside this Snap! project.

https://github.com/ecraft2learn/ai

http://lntrg.education.ox.ac.uk/presentation-of-ai-cloud-ser...

Use devices with Snap!:

Orbotix Sphero guide by Connor Hudson and Dan Garcia:

https://docs.google.com/document/d/11wR53OTnofRtTtxZCmxnCUjI...

Lego NXT package by Connor Hudson:

https://github.com/technoboy10/snap-nxt

Nintendo Wiimote package by Connor Hudson:

https://github.com/technoboy10/wiisnap

Finch and Hummingbird robots package by Tom Lauwers:

https://www.hummingbirdkit.com/learning/snap-programming/

Parallax S2 robot package by Connor Hudson:

https://github.com/blockext/s2

LEAP Motion by Connor Hudson:

https://github.com/technoboy10/snapmotion

Speech synthesis by Connor Hudson:

https://github.com/technoboy10/snap2speech

Arduino package by Alan Yorinks:

https://github.com/MrYsLab/s2a_fm

Arduino package by Bernat Romagosa/Citilab:

http://snap4arduino.rocks/

Fischertechnik ROBOTICS TXT Controller by Richard Kunze:

https://github.com/rkunze/ft-robo-snap

Snap! for Raspberry Pi by rasplay.org:

http://downloads.rasplay.org/pisnap/

More Snap! extensions for CS education:

snap-apps.org provides Edgy for graphs, Cellular for multi-agent simulation, and more.

http://snap-apps.org/

http://www.snap-apps.org/edgy.html

http://www.flipt.org/#cellular

Netsblox for multiplayer networking.

https://netsblox.org/

8y agoHN ↗

I'd recommend you look into the Raspberry Pi, Arduino, or micro:bit - each offer a great introduction to physical computing with huge libraries of online content to dive into.

https://www.raspberrypi.org/ <-- Basically a pocket sized computer which can run a full Linux stack and exposes a heap of useful IO options.

https://www.arduino.cc/ <-- More akin to embedded systems - traditionally very low powered micro-controllers programmed in C.

https://microbit.org/ <-- Designed specifically for education and provides a number of high level abstractions for development including visual programming languages and MicroPython.

As well as these there is a huge range of other options targeting different niches such as Javascript, Internet of Things, ultra low-power systems, etc.

It really depends what you're interested in getting into. All of the platforms have starter kits, add-ons, and tutorials to get you going. Feel free to message me (e-mail in profile) if you want to discuss further!

https://shop.pimoroni.com/collections/raspberry-pi

https://shop.pimoroni.com/collections/arduino-microcontrolle...

https://shop.pimoroni.com/collections/micro-bit-uk

(Disclaimer - co-founder of Pimoroni)

8y agoHN ↗

Yes! Calliope is a spin on the micro:bit that has been developed in Germany. They are a great team too!

8y agoHN ↗

Arduinos are bit of a mixed bag imho. Especially the classic 8-bit Uno, which is more iconic than good/practical. I also find them bit pricy for what they are.

Of course they have their own market segment (artists/"makers"), and they seem to fill their role there perfectly well. But it is good to understand where they come from and how they are positioned at the market before plunging in.

8y agoHN ↗

1) Buy a Raspberry Pi and an Arduino 2) Pick a project: telepresence robot, autonomous robot, sous vide machine, thermal camera trigger, etc. 3) Buy minimal pieces for that project: AdaFruit, SparkFun, or various OEM pieces from Amazon, Ali Express, etc. (higher cost = more documentation and fewer lemons) 4) Goto 2)

8y agoHN ↗

If hardware isn't a requirement, I'd point you at processing.org and the various related projects (openprocessing.org for a javascript front end.). It hits that logo sweet spot for me when introducing kids to actual programming. Then, add a pen plotter to the mix for that "look what I made" kick.

8y agoHN ↗

In fact I worked with this before. Its simple but enough to learn alot.