show and tell for hackers in DC.

Round 66: Kalimba Dreams

14 Mar 2019

Big thanks to WeWork for hosting.–washington-DC

We are sponsored today by the pseudo-anonymous Jay Kay! Thanks Jay Kay!

Event link:

Want to be an official sponsor? Check out

Notes copied directly from the hackpad!

Joey Shepard

The first calculator I made was big and bulky so I’m working on a much smaller one called Tiny Calculator that is business card sized.

Less powerful but much, much smaller!

To do that, started with a circuit board, asking: what can I get rid of?

2 MCU chips, 1 big RAM chip, 2 buffers, 1 keypad, 4 batteries.

Without the RAM, we can get rid of the buffer chips, and if we can live with 30 keys, we don’t need the keypad chip. Final: 1 MCU and 1 battery.

Simplifying the software means

Writing C -> Assembly

Assembly is hard to read, tedious to read and write

Calculator takes two bytes to store the number

Huge amount of wasted space

If you took the time to type in 100 digits of Pi, you probably had a good reason.

Using a much more compact format – storing the numbers in reverse order

Using Cordic algorithm to split the cosign and it

Previously, storing two decimal places per byte

Main software differences.

1 MCU Chip & 1 watch battery, could use it for 12 years

128x64 pixels, 1.5 inch

Uses an MSP 430 Launchpad for the circuitboard

Maurie Kathan

Predicting Dissolved Oxygen Levels

Time-series of dissolved oxygen in water

It’s an important indicator of stream health! It could be because of nitrogen or

Being on the board of stream protectors < not sure I’m saying that right

Low oxygen in the water leads to lots of fish dying off! That’s bad – and it’s a local problem too, afflicting the Chesapeake Bay. Hypoxia

Getting data from a stream in Pennsylvania, that feeds into the Susquehanna, and it’s outside of Carlisle.

The Letort Regional Authority has been collecting data at 13 sites once a month since 1992.

Dissolved oxygen is seasonal, it’s worse in the summer, best in the winter

To build the time-series model, aggregated the data with average values of all testing sites.

233 data points from 1996 to 2018, and built a SARIMA (seasonal) time-series model

Blue is the trained data, yellow is the test, green is the predicted.

Forecasting the dissolved oxygen levels tell you: are there going to be levels that will cause fishkills? If a development/discharge changes dissolved oxygen levels, the deviation from prediction would indicate the impact of that development/discharge.

Pollution and volume are the two main components – impervious surfaces are bad (like streets, houses, even grass) because they increase the volume of water that goes into the stream and limits the amount of dissolved oxygen that can enter the water.

Pollutants (like nitrogen in fertilizers) and dog poop will increase algal growth, which decreases the dissolved oxygen. Forecasted values will give cities and individuals the ability to actually use real metrics when making a case for stronger stormwater protections.

LSTM - a recurrent neural network to predict. Rain gardens and rain barrels are really important, and so is picking up your dog poop!

Don Undeen - @donundeen

Digital signage made from an old LCD monitor & Raspberry Pi

Georgetown MakerHub [email protected]

Salvaged monitors, saving them from the trash! (Don’t throw out electronics!) Office buildings, law firms, people just throwing them out!

Strip the monitor down to its main parts – remove the frame and screws - laser cut a box custom fit to your exact specifications

Created a digital signage on the cheap!

Set the Raspberry pi to boot to google chrome, fullscreen, set to a specific slide deck.

Biggest work was in creating the startup script that boots directly to the Google Chrome in kiosk mode (this is harder than it needs to be!)

Just change which local HTML page you want to load

Create any signage you want – it’s just fullscreen

All told, about $60 for the Raspberry pi, memory card,

Typically, a comparable digital signage

Nathan Epstein - @aeium

Generative art project

Colorfall is a generative art project, aimed at producing flowing colors from elementary operations.

Project based on rule 30 automaton:

Basic coloration technique uses accumulating values for cells instead of 0 and 1, as described in this sequence:

Wolfram Cellular automata

Each cell checks its local neighborhood, applies the rule (how many neighbors do I have?) and checks the box on/off

C considers zero to be false, and any nonzero number to be true

So you could see a history of what’s going on with the automation by looking at the color values

Once you’re accumulating values, you can apply new rules based on the values. If you use a certain combination (and check to see whether it’s congruent to 3 or 14), you see a glitchy kinda streaks of color.

Mistakenly the mod 255 instead of the mod 256.

Repeating division / mod 256 to get three digits

If you take mod 256, you’re just left with the low bits in the color data. But taking mod 255 you get more interesting results!

It needs the BIGINT Chrome tool, so right now it only works in Chrome.

You can also customize the settings to get the exact automata you want to do.

Paints on an HTML5 Canvas, paints the bottom-most line and shifts everything before it up

Zack Stern

CNN to predict DC road quality from google street view images

The roads are horrible – lots of potholes. What is the impact of road quality on injury-producing traffic accidents? Can we build a program that uses computer vision to categorize road quality?

Took 117,000 accidents where police showed up, got Lat/Lon, types of injuries,

Paired it with DC DDOT data to get road quality

Paired that with Google to get computer vision

Road quality is using a qualitative “Pavement Condition Index” 0-100. H0: PCI has no effect on injury rate. H1: PCI has an effect on injury rate.

Road quality and injury accidents: reject Null Hypothesis and accept H1. Finding was kind of counter-intuitive. The better the road quality, the more likely you are to get injured (you’re going faster?)

Trying to automate road quality collection – can see the difference in road quality; can a convolutional neural network tell the difference?

A CNN got 50% – not better than a coin flip.

Can you increase the contrast of the images with CLAHE to improve the results? But running it again, it still wasn’t any better.

Issues with the data - ghosting cars, side of the bus, people. With 10k images, there were problems with the data.

If you purposely build something with the intent of capturing this data, you might be able to do it – but it’s not currently likely with Google maps. Machine can more objectively classify PCI than human.

How accurate are the human qualitative researchers doing the surveying of the road?

Considered using satellite data, but Google wasn’t very helpful – they throw in a lot of noise with satellite data; if there was high-resolution data from a better source it might work better.

There’s also a roughness index of the roads.

Speed data would make for a better analysis

Shannon Turner - @svthmc

Metro Map Maker version 4 - what’s new!

Inspired by Article about dream metro maps.

Version 1: very MSPaint pixelated. Each ‘pixel’ was an HTML element. Up to 6400 pixels, means 6400 HTML elements. . Version 2: Faster and sleeker. WYSIWYG. Increased the size you could chose. However Larger sizes were slower due to many HTML elements.

Version 4: Goodbye HTML elements, hello 100% canvas. Resizing is 11-15x faster. Recentering is 100x faster. Zooming in is 230x faster, without changing HTML elements. No limit in zoom level of canvas. Added new features for map making