Category Archives: Hardware

feminist / engineering shopfront brainstorming

Current plan: Find a venue for a pop-up shop, 2 to 5pm on Sundays, somewhere near Central Square or other t-stop (or somewhere a lot of people walk past). Danger!awesome community space, perhaps.

Have tshirts, jewelry, greeting cards, posters, framed art for sale. Work on projects while waiting for people to buy things or not.

Archived Thoughts

I want to open a little storefront in danger!awesome’s new community space, or at the least install a vending machine there. Who should I talk to that might take me seriously?

I would stock
  • last-minute hard-to-find locally things, such as
  • standard engineering things
    • arduinos & mcus
    • composites (fiberglass, kevlar, carbon fiber, gallons of epoxy) / molding supplies (smooth-on)
    • servos & hobbyking motors
    • lipos & lipo chargers
    • tiny taps and drill bits (always break)
    • nylon things (inert)
    • ferric chloride, acetone, MEK/P
    • dremel bits
    • sandpaper
    • right-angle drills (probably for renting)
  • personal protective equipment that fits for both men and women
    • cheap small/medium leather gloves
    • cheap small/medium tyvek suits
    • a stock of respirators so people can try them on & see how it handles with their hair & learn how to put them on properly
    • small/medium closed-toe boots / steel boots
    • small/medium insulative coveralls
    • safety glass buffing station
  • fashion and craft things
    • fondant, icing, glitter, matte nail polish, etc.
  • Products from local engineers and makers, such as Brian Chan’s lasercut folding ukulele
I am not sure how I’d keep it open, because I especially want people to have access during times when normal stores are not open, but those are the crappiest times from the employee perspective (see: night shift health hazards), and I’m pretty busy. Perhaps some sort of coop-honor-system style thing could work, where you pay a deposit and then have 24hr access & you keep track of what materials you “bought”/checked-out and can pay on-site with a self-checkout.
and anything else people want (I’d have a “what do you want to see here” suggestion box online and offline :] ), and keep inventory meticulously online, so people KNOW what’s in stock.

More ideas

  • customization
    • dremel your name into your bike (anti-theft)
    • anodize or hydrographically print on your wrench set, helmet, etc. so that it’s very obvious that it’s yours and people know to return it if they borrow it
  • specialized tools
    • watch a robot arm use machine vision to sort your drill bits for you
    • place a bolt that you need to match on the countertop and we will (using machine vision?) identify size and thread count for you & give you the mcmaster number
    • smooth-on supplies
      • mini-museum of casting things
  • consultancies
    • trying to learn how to scale and source things in China? Visiting China and want to talk to manufacturers? Get cheap and questionable advice (possibly while doing your nails :P)
    • where to source things and how to source them cheaply
  • shop safety education (with lots of disclaimers that we are not doctors)
    • have posters of what happens when you don’t treat epoxy respectfully
    • get nitty gritty street knowledge on what you actually need to do to be safe and what bad outcomes are like and how to treat them — what are the trade-offs you are making with your safety when you don’t wear respirators, long clothes, etc. without judging you if for whatever reason you don’t
    • teach people how to use respirators and pick the right cartridges so that the respirator is easy to use and doesn’t get in the way of glasses and safety glasses and long hair
  • hubmotors & misc. segging things from china
    • segstick buddy riding competitions
  • food
    • too annoying to get license perhaps… but
    • could sell food molds: nyancat pancake molds, chocolate molds, etc. for birthday gifts
    • cake decorating / cutting robots
  • robot / geeky earrings and tshirts
  • feminist apparel, greeting cards, jewelry, tshirts, dresses, scarves, hats, shoes
  • menstrual cup advice and models

NRF51-DK and Ubuntu 14.04 in five minutes (Getting started with Nordic NRF51822 Bluetooth Low Energy Development Kit)

nrf51-2
Glorious new nails + NRF51-DK, which is Arduino-Due-shield-compatible.

Short Story

  1. Go to https://developer.mbed.org/platforms/, add the NRF51-DK platform, open the compiler, import the “mbed_blinky” example, hit compile, and download the *.hex file
  2. Plug-in the NRF51-DK with a microUSB cable and turn the switch to “on”.
  3. Copy or drag-and-drop the .hex file to the “JLink” drive, which should auto-mount and appear under “devices” in your file manager
  4. Voila! Light should now be blinking.

Background

Recently after a bit of head-scratching, I found out that it’s very easy to program ARMs on Ubuntu 14.04, or at least the ARM chip on the system-on-a-chip NRF51822, an integrated circuit made by Nordic Semi that has both a bluetooth low-energy module [1] and a 32-bit ARM® Cortex™ M0 CPU with 256kB flash + 16kB RAM.

I’m exploring this chip because the atmega328p chip by itself is around $2.5 in quantity, and this chip has both an ARM microcontroller (mcu) and ble built-in for $2.5.

[1] (2.4Ghz transceiver, so actually supports NRF24L01+ protocol as well, for which you can find transceiver breakouts on ebay for $2)

nrf24l01+
nrf24l01+ breakout

I bought the NRF51-DK recently on semiconductorstore.com for $70 plus shipping. This is the main page: https://www.nordicsemi.com/eng/Products/nRF51-DK .

Yea, not much of a “get started here” anywhere on the page. The PDF tells you to download NRFgo studio and is obviously on windows.

So here’s my getting started guide. Note: I followed https://evothings.com/getting-started-with-mbed-arms-new-iot-platform-and-the-nordic_semiconductor-nrf51-dk/ for the most part.

Overview

  1. We will use the mbed compiler to turn our code from “DigitalOutput(LED1)”-esque code into .hex files for our chip, the NRF51-DK.
    mbed is a browser-based compiler, so you hit “compile” and get a file to download. I believe it’s developed directly by ARM.
    mbed has a Microsoft XP look, which is quite strange-looking inside the browser, but it works.
  2. We will “program” our chip by copying the .hex file to the “JLink” drive that shows up in our windows manager, similar to how a USB drive or other external drive shows up.

mbed

  1. Create an mbed account
  2. Go to “Platforms” and search for NRF51-DK, then click “Add to my compiler.”
  3. Click on “open mbed compiler”Screenshot from 2015-08-26 13:26:00
  4. The mbed compiler takes a while (minutes) to load. Grab a cup of coffee.
  5. Click “import” then search for “mbed_blinky” by the Author “team mbed”.  Click on it and hit enter, and the program will be imported
    Screenshot from 2015-08-26 13:30:18
  6. Open the program and click on “main.cpp” in the root folder. No changes are needed. The url should be something like: https://developer.mbed.org/compiler/#nav:/mbed_blinky/main.cpp;
    Screenshot from 2015-08-26 13:30:50
    T
    he code is:

    #include "mbed.h"
    
    DigitalOut myled(LED1);
    
    int main() {
        while(1) {
            myled = 1;
            wait(0.2);
            myled = 0;
            wait(0.2);
        }
    }
    
  7. Hit “compile” and save the file that you are prompted to download.
    Screenshot from 2015-08-26 14:15:43
  8. All done with this step! Optional: Change the wait time to 0.2 seconds and download another .hex file.

J-Link Programming

For me, I just plugged in the dev board using a micro-usb cable, turned the switch on the board to “on”,  and it showed up (ubuntu 14.04) and auto-mounted and showed up under “Devices” in nautilus file manager.

I’m not certain if I installed drivers along the way, but if so it must have been something sudo apt-get installable, because I don’t remember it.

Screenshot from 2015-08-26 14:12:15
output of dmesg | tail after plugging in device
  1. Drag and drop the .hex file to the JLink drive (or otherwise copy it over). Warning: drag-and-drop in nautilus pastes the .hex file over, and it’s not preserved after the chip programs itself, so use ctrl-c ctrl-v (or otherwise copy instead of cut) if you want to keep it!
  2. The JLink “drive” will disappear and after a few seconds reappear. This is it programming itself and rebooting itself.

    Screenshot from 2015-08-26 14:11:53
    Drag-and-drop
  3. Your LED1 should now be blinking! Yay!
    You can double-check that there’s no “fail.txt” in the JLink drive.

    Screenshot from 2015-08-26 14:13:48
    No “fail.txt”1 Yay

That’s it! Whoo!

Congratulations, you’ve now programmed the NRF51-DK on Ubuntu 14.04 to do the “hello world” blink example!

telephone hold music: analog generator

Recently a friend recounted to me a visit to a cool museum which had, in one exhibit, a “hold music” generator (you know, elevator muzak… here have some Cisco sound samples).

That is, before there was digital recording and playback, telephone switchboard operators wanted to play soothing music to callers while connecting their calls. To do so, they used little analog electromechanical playback devices — what we now think of as those cute music box toys

440px-Music_box_elements

but which included very serious and complex devices once-upon-a-time.

Source: http://en.wikipedia.org/wiki/Music_box#/media/File:Baud_museum_mg_8548.jpg
Source: http://en.wikipedia.org/wiki/Music_box#/media/File:Baud_museum_mg_8548.jpg

Anyway, so it turns out it was the Museum Speelklok (“Musical Museum”) in Utrecht, the Netherlands:

http://en.wikipedia.org/wiki/Museum_Speelklok
https://www.museumspeelklok.nl/lang/en/

From Zoz comes this photo of the infamous Japanese telephone exchange hold music generator: (original content ahead! whoo)

Electromechanical telephone hold music generator. Photo credit: Zoz at MIT.
Electromechanical telephone hold music generator. Photo credit: Zoz at MIT.

[the end.]

Footnotes

Some wikipedia articles of interest:

  • http://en.wikipedia.org/wiki/Music_on_hold
    Which contains this “lolwut” anecdote:

    > For those still uncertain of the difference between “song title” and “mechanical” copyrights, consider the Capitol Records lawsuit for copyright infringement against Nike some 20 years ago. Nike legally obtained permission to use the Beatles song title “Revolution” from the title’s owner, Michael Jackson. They used the Capitol Records owned recording of the Beatles’ performance, but failed to obtain and pay for permission and use. Capitol Records sued and prevailed because Nike ONLY had a license to use the title and did not have a license to use the mechanical recording

  • http://en.wikipedia.org/wiki/Elevator_music
  • http://en.wikipedia.org/wiki/Sound_recording_and_reproduction
  • http://en.wikipedia.org/wiki/History_of_sound_recording
  • http://en.wikipedia.org/wiki/Music_box
  • http://en.wikipedia.org/wiki/Museum_Speelklok
  • http://en.wikipedia.org/wiki/Telephone_exchange#Sounds

Other interesting links I dug up while hunting for this museum before giving up and emailing Zoz:

  • http://www.telephonetribute.com/pdf/telephone_history_series_rev1.pdf
  • http://www.slate.com/articles/arts/culturebox/2014/09/history_of_hold_music_how_did_we_end_up_with_handel_tinkling_through_the.html