Lowering The Bar For Exam Software Security

Most standardized tests have a fee: the SAT costs $50, the GRE costs $200, and the NY Bar Exam costs $250. This year, the bar exam came at a much larger cost for recent law school graduates — their privacy.

Many in-person events have had to find ways to move to the internet this year, and exams are no exception. We’d like to think that online exams shouldn’t be a big deal. It’s 2020. We have a pretty good grasp on how security and privacy should work, and it shouldn’t be too hard to implement sensible anti-cheating features.

It shouldn’t be a big deal, but for one software firm, it really is.

The NY State Board of Law Examiners (NY BOLE), along with several other state exam boards, chose to administer this year’s bar exam via ExamSoft’s Examplify. If you’ve missed out on the Examplify Saga, following the Diploma Privilege for New York account on Twitter will get you caught up pretty quickly. Essentially, according to its users, Examplify is an unmitigated disaster. Let’s start with something that should have been settled twenty years ago.

Continue reading “Lowering The Bar For Exam Software Security”

Tiny Mario Clone On A Tiny Processor

We’ve become used to seeing retro games running on commodity microcontrollers where once they would have required the bleeding-edge console hardware of their day. [Duncan]’s Mario clone takes the genre a little further, using not a processor with plenty of pins for peripherals, but instead the humble ATtiny85. Its eight pins drive two OLED displays, and accept input from the buttons of a cheap Nintendo-like controller.

The write-up is split between software and hardware sections, with all the software itself available from a GitHub repository. He’s bit-banging the i2C for the displays for an impressive turn of speed, and the ATtiny’s lack of pins is addressed by clever use of resistive dividers to present a different voltage for each button pressed. With a truth table of voltages he’s even able to detect multiple simultaneous button presses. Music is achieved with the chip’s limited resources by storing the sounds in EEPROM, and clocked it at 16 MHz for smooth gameplay.

The whole is mounted inside the shell of the controller, with its USB guts removed and replaced by a smart custom PCB. An unexpected problem with ground plane fill caused a temporary roadblock reading the buttons, but the finished product is a very Nintendo-like experience. We like it.

An Open Source IR Gateway Based On The ESP8266

The market is absolutely inundated with smart gadgets, with everything from coffee makers to TVs advertising that they support the latest and greatest in home automation platforms. Don’t worry about how many of those platforms and services will still up up and running in the next few years, the thing will probably stop working before then anyway. No sense worrying about the details in a disposable world.

Of course, not all of us are so quick to dump working hardware in the name of the latest consumer trend. Which is why [Viktor] has developed an open source infrared gateway that can connect your “dumb” devices to the latest flash in the pan backend service with nothing more than a software update. Though even modern smart TVs still include IR remotes, so there’s nothing stopping you from using it with newer gear if you don’t trust like the built-in implementation.

The hardware here is really quite simple, essentially boiling down to a few IR LEDs and an IR receiver hanging off the GPIO ports of an ESP8266. While the receiver isn’t strictly necessary, it does allow [Viktor] to rapidly implement new IR codes. He just points the existing remote at the board, hits a button, and the decoded command gets sent out over MQTT where he can easily snap it up.

[Viktor] has done the hard work of creating the PCB design and testing out different IR LEDs to find the ones with the best performance. But if you wanted to just throw something together in a weekend, you should be able to get his firmware running with little more than a bare ESP and a random IR LED salvaged from an old remote. But don’t be surprised if you get hooked on the concept and end up rolling your own home automation system.

Making A Servo Tester Just A Bit Better

Servo testers are useful devices to have on hand, allowing one to quickly check a given part for proper operation. However, cheaper models can be quite limited, and may not output signals suitable for testing the full range of servos out there. [Buttim] had a few testers laying around, and wanted to see if they could be modified to do more.

Initial experiments with the cheapest model on hand came to naught, revealing nothing but a small IC with its markings scrubbed off. However, going a few more dollars upmarket, [buttim] found a servo tester packing a Nuvoton N75E003. An unfamiliar name to the hobbyist, Nuvoton microcontrollers are often found in mass-production designs due to their low cost.

The N75E003 is a 8051-based device, and [buttim] was able to source a programmer and tutorial resources on how to work with the chip. Armed with the right hardware and knowledge, the servo tester was first programmed with a basic blink sketch. With everything confirmed to be working as expected, [buttim] set about programming a custom firmware for the servo tester that would output a broader range of PWM signals to suit their needs.

It’s a great example of the learning possibilities available by simply cracking open the case of commodity hardware and diving in. Of course, if you need something even more capable, you can always build your own from scratch!

Browser Makes Tiny Office Suite

There’s a recent craze of people living in tiny houses of 400 square feet down to as little as 80 square feet. Maybe [zserge] was thinking about that and created a very tiny office suite in which each tool weighs in at less than 1K. If you are guessing you couldn’t squeeze much functionality in C or C++ code or even assembly, you’d be right. The language of choice? HTML and JavaScript. So while the code is small, it relies on a pretty big piece of software. On the other hand, you have a browser open right now, so the incremental cost of using these tools is very small.

We get the idea that there’s not much chance this is going to sweep the shelves of Microsoft Office, Libre Office, and all the many competitors. However, it is a pretty stunning example of what you can do with modern HTML. There’s even a GitHub repo and a subreddit.

Continue reading “Browser Makes Tiny Office Suite”

New BBC Micro:bit Adds Microphone And Speaker

There’s an old tale that TV companies only need to make a few years of kids’ TV shows, because their audience constantly grows out of their offerings and is replaced by a new set with no prior knowledge of the old shows. Whether it’s true or not is up for debate, but does the same apply to single board computers aimed at kids? The original BBC micro:bit was first announced back in 2015 and must be interesting its second generation of kids by now, but that hasn’t stopped them bringing out a second version of the little educational computer. How do you update such a simple device? Time to take a look.

Edge connector shown on the original micro:bit design

The form factor of the new board is substantially the same as its predecessor, with the same edge connector and large connection pads, and the familiar LED matrix display. The most obvious additions are a small speaker and MEMS microphone allowing kids to interact with audio in their code, but less obvious is a new touch button in the micro:bit logo. The original had it in the silk screen layer, while the new one has it as copper for a capacitive sensor.

The silicon has an upgrade too, now sporting a Nordic Semiconductor nRF52833 running at 64 MHz and sporting 512k of ROM and 128k of RAM with built-in Bluetooth Low Energy. Binaries are incompatible with the original, however all the development environments can recompile code for a new universal binary format capable of running the appropriate software for either version.

The micro:bit has been more of a hit in schools than it has in our community, perhaps because it has the misfortune to have arrived alongside so many strong competitors. However it remains a powerful contender whose easy programming alongside the power of more traditional toolchains make it a good choice for kids and grown-ups alike.  We took a look at the original back in 2016, if you are interested.

Building This Mechanical Digital Clock Took Balls

In the neverending quest for unique ways to display the time, hackers will try just about anything. We’ve seen it all, or at least we thought we had, and then up popped this purely mechanical digital clock that uses nothing but steel balls to display the time. And we absolutely love it!

Click to embiggen (you’ll be glad you did)

One glimpse at the still images or the brief video below shows you exactly how [Eric Nguyen] managed to pull this off. Each segment of the display is made up of four 0.25″ (6.35 mm) steel balls, picked up and held in place by magnets behind the plain wood face of the clock. But the electromechanical complexity needed to accomplish that is the impressive part of the build. Each segment requires two servos, for a whopping 28 units plus one for the colon. Add to that the two heavy-duty servos needed to tilt the head and the four needed to lift the tray holding the steel balls, and the level of complexity is way up there. And yet, [Eric] still managed to make the interior, which is packed with a laser-cut acrylic skeleton, neat and presentable, as well he might since watching the insides work is pretty satisfying.

We love the level of craftsmanship and creativity on this build, congratulations to [Eric] on making his first Arduino build so hard to top. We’ve seen other mechanical digital displays before, but this one is really a work of art.

Continue reading “Building This Mechanical Digital Clock Took Balls”