Richard Feynman: A Life Of Curiosity And Science

It was World War II and scientists belonging to the Manhattan Project worked on calculations for the atomic bomb. Meanwhile, in one of the buildings, future Nobel Prize winning theoretical physicist Richard Feynman was cracking the combination lock on a safe because doing so intrigued him. That’s as good a broad summary of Feynman as any: scientific integrity with curiosity driving both his work and his fun.

If you’ve heard of him in passing it may be because of his involvement on the Space Shuttle Challenger disaster commission or maybe you’ve learned something from one of his many lectures preserved on YouTube. But did you know he also played with electronics as a kid, and almost became an electrical engineer?

He was the type of person whom you might sum up by saying that he had an interesting life. The problem is, you have to wonder how he fit it all into one lifetime, let alone one article. We’ll just have to let our own curiosity pick and choose what to say about this curious character.

Continue reading “Richard Feynman: A Life Of Curiosity And Science”

Direct CNC Control With The Raspberry Pi

If you’re building a CNC router, laser cutter, or even 3D printer, you’ll usually be looking at a dedicated controller. This board takes commands from a computer, often in the form of G-Code, and interprets that into movement commands to the connected stepper motors. Historically this has been something of a necessary evil, as there was really no way to directly control stepper motors with a computer fast enough to be useful. That may not be the case anymore.

A stepstick driver

Thanks to the Raspberry Pi (and similar boards), we now have Linux computers with plenty of GPIO pins. The only thing missing is the software to interpret the G-Code and command the steppers over GPIO, which thanks to [pantadeusz], we now have. Called raspigcd, this software interprets a subset of G-Code to provide real-time control over connected steppers fast enough to drive a small CNC router.

Of course, you can’t directly control a beefy stepper motor to the GPIO pins of a Pi. You’ll let out all the magic smoke. But you can wire it up directly to a stepper driver board. These little modules connect up to a dedicated power supply and handle the considerable current draw of the steppers, all you need to do is provide them the number of steps and direction of travel.

This method of direct control offers some very interesting possibilities for small, low-cost, CNC projects. Not only can you skip the control board, you could conceivably handle the machine’s user interface (either directly via a touch screen or over the network) on the same Pi.

We’ve seen attempts at creating all-in-one Linux stepper controllers in the past, but the fact that anyone with a Raspberry Pi 2 or 3 (the boards this software has currently been tested on) can get in on the action should really help spur along development. Has anyone used this?

Retro Computer Badge For Hackaday Belgrade Has Everything You Wished For Back In The Day

The hardware badge for the Hackaday Belgrade conference is a Retro Computer that you wear around your neck. I have one in my hands and it’s truly a work of art. It’s beautiful, it’s fun to play with, and it will be an epic platform for a glorious weekend of badge hacking! Check out the first look video, then join me below as I drill down into the details.

Get your ticket now for Hackaday Belgrade, our premier European hardware conference at the end of this month. It’s a day filled with talks, works, food, fun, and of course everyone through the door gets one of these incredible badges. The best part is the community that turns out for this event and that includes the Hacker Village that takes hold in the evening. We’ll be hacking the badges until the wee hours of the morning alongside hardware demos, presentations, lightning talks, and live IDM and DJ sets.

Continue reading “Retro Computer Badge For Hackaday Belgrade Has Everything You Wished For Back In The Day”

DIY Pi Zero Pentesting Tool Keeps It Cheap

It’s a story as old as time: hacker sees cool tool, hacker recoils in horror at the price of said tool, hacker builds their own version for a fraction of the price. It’s the kind of story that we love here at Hackaday, and has been the impetus for countless projects we’ve covered. One could probably argue that, if hackers had more disposable income, we’d have a much harder time finding content to deliver to our beloved readers.

[ Alex Jensen] writes in to tell us of his own tale of sticker shock induced hacking, where he builds his own version of the Hak5 Bash Bunny. His version might be lacking a bit in the visual flair department, but despite coming in at a fraction of the cost, it does manage to pack in an impressive array of features.

This pentesting multitool can act as a USB keyboard, a mass storage device, and even an RNDIS Ethernet adapter. All in an effort to fool the computer you plug it into to let you do something you shouldn’t. Like its commercial inspiration, it features an easy to use scripting system to allow new attacks to be crafted on the fly with nothing more than a text editor. A rudimentary user interface is provided by four DIP switches and light up tactile buttons. These allow you to select which attacks run without needing to hook the device up to a computer first, and the LED lights can give you status information on what the device is doing.

[Alex] utilized some code from existing projects, namely PiBunny and rspiducky, but much of the functionality is of his own design. Detailed instructions are provided on how you can build your own version of this handy hacker gadget without breaking the bank.

Given how small and cheap it is, the Raspberry Pi is gaining traction in the world of covert DIY penetration testing tools. While it might not be terribly powerful, there’s something to be said for a device that’s cheap enough that you don’t mind leaving it at the scene if you’ve got to pull on your balaclava and make a break for it.

WFW 3.11 running on a Thinkpad T400

Windows For Workgroups 3.11 In 2018

It’s been 25 years since Microsoft released Windows for Workgroups 3.11. To take a trip back to the end of the 16-bit era of operating system, [Yeo Kheng Meng] got WFW 3.11 running on a modern Thinkpad.

To make things difficult, a few goals were set for the project. Obviously, this wouldn’t be much fun in a virtual machine, so those were banned. A video driver would be needed, since WFW 3.11 only supports resolutions up to 640×480 in software. Some basic support for sound would be desirable. Finally, TCP/IP networking is possible in WFW 3.11, so networking hardware would allow access modern internet.

[Yeo Kheng Meng] accomplished all of these goals on a 2009 Thinkpad T400 and throughly documented the process. Some interesting hacks were required, including the design of a custom parallel port sound card based on the Covox Speech Thing. Accessing HTTPS web servers required a man-in-the-middle attack to strip SSL, since the SSL support on WFW 3.11 is ancient and blocked by most web servers today.

If you want your own WFW 3.11 laptop, the detailed instructions will get you there. [Yeo Kheng Meng] has also provided the hardware design for the sound card. You can watch a talk on the process after the break.

Continue reading “Windows For Workgroups 3.11 In 2018”

MSDOS Development With GCC

It might seem odd to think about programming in MSDOS in 2018. But if you are vintage computer enthusiast or have to support some old piece of equipment with an MSDOS single board computer, it could be just the thing. The problem is, where do you get a working compiler that doesn’t have to run on the ancient DOS machine? Turns out, gcc can do the trick. [RenéRebe] offers a video demo based on a blog post by [Chris Wellons]. You can see the video, below.

The technique generates COM files, not EXE files, so there are some limitations, such as a 64K file size. The compiler also won’t generate code for any CPU lower than a 80386, so if you have a real 8086, 80186, or 80286 CPU, you are out of luck. The resulting code will run in a real DOS environment on a ‘386 or higher or in a simulator like DOSBox.

You might be thinking why not use the DJGPP port of gcc to DOS. That sounds good, but it actually doesn’t produce true DOS code. It produces code for a DOS extender. In addition, [Chris] had trouble getting it to work with a modern setup.

The only real trick here is using the right combination of gcc flags to create a standalone image with the right codes. A COM file is just a dump of memory, so you don’t need a fancy header or anything. You also, of course, won’t have any library support, so you’ll have to write everything including functions to, say, print on the screen. Of course, you can borrow [Chris’] if you like.

The last pieces of the puzzle include adding a small stub to set up and call main and getting the linker to output a minimal file. Once you have that, you are ready to program like it is 1993. Don’t miss part 2, which covers interrupts.

If you pine away for QuickBasic instead of C, go download this. If you just want to run some old DOS games, that’s as close as your browser.

Continue reading “MSDOS Development With GCC”

Tiny Pinball Emulator Is Hugely Impressive

We were wondering what [Circuitbeard] has been up to lately. Turns out he’s been building a mini pinball cabinet to add to his arcade of self-built games.

[Circuitbeard] was forced to break out of his Raspi comfort zone this time. We’re glad he did because this is one impressive build. Finding the pinball emulation community lacking for Linux, he turned to the LattePanda, a tiny Windows 10 SBC with a built-in Arduino Leonardo. This was really the perfect board because he needed to support multiple displays with a minimum of fuss. That Leonardo comes in handy for converting button presses to key presses inside the Visual Pinball emulator.

The 3mm laser-cut plywood cabinet was designed entirely in Inkscape and sized around the two screens: a genuine 7″ LattePanda display for the playfield, and a 5″ HDMI for the back glass. The main box holds the Lattepanda, two Pimoroni mini speakers, and a fan to keep the board cool.

There’s a lot to like about this little cabinet thanks to [Circuitbeard]’s fantastic attention to detail, which you can see for yourself in the slew of pictures. Look closer at the coin drop—it’s really an illuminated button with a custom graphic. If you want to have a go at emulating this emulator, all the code is up on GitHub. Tilt past the break to watch some modern pinball wizardry in action, and then check out his mini Outrun machine.

If pinball emulators don’t score any points with you, here’s one that’s all wood and rubber bands.

Continue reading “Tiny Pinball Emulator Is Hugely Impressive”