Hackaday Links: May 15, 2016

The Hackaday Overlords (or Hackaday family) are running a series of AMAs on SupplyFX. What is SupplyFX? It’s a social network for EEs. Who’s in the first AMA? [Brady Forrest], the guy who runs Highway1, a Bay Area hardware accelerator. They’re the accelerator responsible for the lustworthy Keyboardio, and the startup that is purely mechanical and has shipped zero lines of code, CoolChip. If you want to talk about hardware startups, [Brady] is your man. The AMA is tomorrow, May 16th, at 13:00 Pacific.

Makerbot is dead, or at least they will be soon. Whatever. Nothing of value was lost. Lulzbot, on the other hand, is going gangbusters. They saw eight hundred percent growth over the last two years. and $15M in revenue in 2015. They did this all with open source hardware and software, and using 3D printing in a manufacturing context. They’re the jewel of the Open Hardware movement, and a shining example of what Free Software can do.

The current generation of software defined radios started with the ubiquitous TV tuner dongles, and quickly graduated to the HackRF. You can only get so much bandwidth out of a USB 2.0 socket, and the newest and bestest SDR is the LimeSDR. They’re about halfway through their crowdfunding campaign (and halfway funded), and have finally changed out the USB A connector to a USB micro B connector. Good choice.

The ESP8266 is quickly becoming the go-to device for when you want a cheap way to put a sensor on the Internet. The only problem is programming it. No problem – here’s a bunch of Lua scripts that do 90% of everything. Need to read a PIR sensor? Light up a few LEDs? Put the data from a temperature and humidity on the Internet? There you have it.

The Vintage Computer Festival West is back on this year. We’ve gone to VCF East in New Jersey for a few years now, and had a few occasional outings to the southeast and midwest Vintage Computer Festivals over the years. This is the first time the west coast has had a Vintage Computer Festival in several years. It’s in Mountain View, on August 6th and 7th. Yes, that’s the same weekend as DEF CON.

E3D, makers of fine hot ends and 3D printer paraphernalia, have released a new kind of filament. It’s called Edge, it’s based on PET, and it prints as easily as PLA, with better mechanical properties than ABS. A few sample prints made from Edge were at this year’s Midwest RepRap Festival, and the Edge’s bridging ability is crazy. You need a heated bed for Edge and it’s sensitive to moisture, but it has some very interesting properties that can be cleverly exploited.

In other filament news, Colorfabb released a filament to print clear parts. Yes, that’s very weird. Clear parts require 100% infill, meaning it will use a lot of filament. It’s still very advanced wizardry, and I’m very interested in seeing the first print of a sanded and polished convex lens.

Holy Crap it’s the 3D printing edition of the links post. [Prusa] just released the latest version of the i3. It’s now bigger: 250x210x200mm build volume. The heated bed – [Prusa] was one of the first to experiment with PCB heated beds – is now vastly improved when looking at it through a FLIR. The Mk. 42 heated bed doesn’t have a hot center or cool corners. PEI sheet removes the need for blue painters tape, glass, aqua net, or glue sticks. The printer has self-test capabilities. The mechanics of the printer, especially the Z axis, are improved. [Prusa] will be selling this as a kit for ~19000 Czech Crowns or $699 USD, but he’s RepRap to the core. Buy a spool and start printing your next printer.

 

DEF CON: Abusing Scripts in Multiplayer Games

Everyone has at least a few games on their computer, and I would assume most of the Hackaday readership would be among the enlightened PC gamer bretheren. At this year’s DEF CON, [Tamas Szakaly] gave a talk about the data these games leak to the Internet, the data they accept from the Internet, and what you can do with that data.

[Tamas]’ talk was entirely about scripting games, like the many games that are scriptable in Lua, or Valve’s Squirrel. Developers have thought about this before and have implemented sandboxes and many anti-cheat mechanisms. However, because these sandboxes are poorly implemented, it’s easy to get outside the game and do some real damage.

[Tamas]’ first target was Crysis 2 and the CryEngine3. This game uses a Lua scripting engine and has no sandbox whatsoever. That means [Tamas] can call os.execute, and from there the entire game is over. Or it’s just begun. Either way you look at it, it’s pretty bad.

CryTek notwithstanding, [Tamas] can also use games with Lua scripting that have a real sandbox. DOTA2 has a leaky sandbox and can be used to call OS I/O routines and execute base 64 encoded executables right over the main executable.

The most impressive example of script abuse in various multiplayer games is from Garry’s Mod. This game has custom implementation of dangerous functions, restricted file IO, and a proper Lua sandbox. This was a wise decision from the developers, but the library is huge. If you create a map or mode used on a server, you can have a full HTTP proxy to the gamer’s home network. During the talk, [Tamas] used this exploit to display an image from a webcam on a Garry’s Mod server. It was on the podium right next him, but this could have been done on a server on the other side of the planet.

Continue reading “DEF CON: Abusing Scripts in Multiplayer Games”

Review: HUZZAH is the ESP8266 WiFi Setup You Need

A little board that adds WiFi to any project for a few hundreds of pennies has been all the rage for at least half a year. I am referring to the ESP8266 and this product is a marrige of one of those WiFi modules with the support hardware required to get it running. This week I’m reviewing the HUZZAH ESP8266 Breakout by Adafruit Industries.

If you saw the article [cnlohr] woite for us about direct programming this board you will know that a good chunk of that post covered what you need to do just to get the module into programming mode. This required adding a regulated 3.3V source, and a way to pull one of the pins to ground when resetting the power rail. Not only does the HUZZAH take care of that for you, it turns the non-breadboard friendly module into a DIP form factor while breaking out way more pins than the most common module offers. All of this and the price tag is just $9.95. Join me after the break for the complete run-down.

Continue reading “Review: HUZZAH is the ESP8266 WiFi Setup You Need”

Flashing the ESP8266 In Windows

It’s only been a few months since the ESP8266 rolled out of some factory in China, and already the community is moving from simply getting custom firmware to work on the device to making the development tools easy to use. That’s huge – the barrier to entry is lowered, getting even more people on board with this very cool Internet of Things thing.

While the majority of the community is settling on using the Lua interpreter firmware, there’s still the matter of getting this firmware uploaded to the ESP. [Peter Jennings] of Microchess fame has been working on a Windows app to upload firmware to the ESP via a serial interface. There’s not much to it, but this will allow you to upload the community-created Lua firmware, set the WiFi credentials, toggle GPIO pins, and give you the ability to write a little bit of Lua in the same window.

If you’re looking for something that isn’t designed exclusively for Windows, there’s an alternative firmware flasher over on the nodemcu Github. This flasher also connects the ESP8266 to a network and uploads firmware. It’s a stripped-down programmer without a serial terminal or the ability to toggle pins, but there are plans for making this programmer cross-platform.

A Dev Board For The ESP Lua Interpreter

From the great minds behind the NodeMCU Lua interpreter for the ESP8266 comes a proper dev board for the WiFi platform of 2015. They are calling it, the NodeMCU-devkit, and it’s a reasonable, cheap, and breadboardable breakout board for the ESP8266.

The version of ESP8266 used in this project is the ESP-12, the newer, fancier model with RF shielding, a questionable FCC logo, and every single one of the GPIOs exposed on castellated connectors. The rest of the board is a USB to serial converter (the CH340G – probably the cheapest USB to serial chip out there), a few passives, and a USB micro connector. It’s simple, cheap, and open source. You can’t do better than that.

This dev board is explicitly designed to work with the NodeMCU firmware, a Lua-based firmware for the ESP. Already we’ve seen some projects make the Hackaday front page with this firmware. Sure, it’s just a garage door opener, but that’s extremely impressive for a chip that’s only a few months old.

Thanks [Baboon] for the tip.

Text editor running on your ARM project

bare-metal-elua-text-editor

Tired of flashing your embedded project over and over just to tweak a few values? So was [Karl], so he wrote a text editor that runs on his ARM dev board.

Having trouble wrapping your mind around the need for this kind of thing? He’s actually playing around with eLua, the embedded version of the Lua programming language. In this case the program files are being stored on an SD card. But still, moving that back and forth between computer and embedded project gets old quickly. So he invested the time to write a rudimentary text editor that he interfaces through this terminal window. Above you can see the help screen which lays out all of the applications features. Right now it sounds like the only gotcha for this is the amount of RAM it needs to run. As it stands, the editor will now work an mbed board, but it works just fine on an STM Discovery.

Bringing eLua to the mbed

[Karl] loved his mbed – a tiny little ARM-powered microcontroller platform – but he wanted an interactive programming environment. BASIC just wasn’t cutting it, so he decided to bring eLua to his mbed.

When choosing an interactive development environment for microcontrollers, you generally have two choices: old or huge. Sure, there is a middle ground with Python on an ARM, but why not use something explicitly designed for microcontrollers?

To get eLua running on his mbed, [Karl] downloaded the latest version and plopped it on his mbed. The current version, 0.9, doesn’t have support for an SD card, severely limiting its usefulness. [Karl] got around this by wiring up an SD card to the mbed, giving him gigabytes of space for all his development work.

While the AVRs and PICs of the world are stuck with languages like C or worse, the new ARM boards available are more than capable of running a complete eLua development environment, with everything accessible through a terminal. [Karl] even wrote his own editor for the mbed and he’ll shortly be working on a few dozen embedded projects he has in mind.