Interlock is a non-profit organization that provides space for its members and the local community to develop and share their interests in science, technology, art, and culture.

Rochester Mini Maker Faire 2016 – Recap



Today was the 2016 Rochester Mini Maker Faire in the Riverside Convention Center.  We had a blast, and hope you all did too.  As you can see in the photos, we had quite the nice spread of things we were displaying and demoing.  Here’s a list of things that we showed.  Many of these will become links in the future, as we add more detailed descriptions about the projects…  (from left to right)

  • R.U.D.I. – Rudimentary Utility Droid Intelligence from Bill HK
  • Raspberry Pi Backup Server – Carl
  • Merlin-duino – Arduino Pro Mini and RGB LEDs in a 1980s Merlin game – Scott
  • Amibian – RasPi running the UAE Amiga Emulator and our info slideshow – Scott
  • LED Interlock Sign – “Interlock” in bright friendly letters – Carl
  • Walter – Motion Capture Puppet in Technic Lego, etc – Scott
  • Friendly Plastic – Low-melting-temperature moldable plastic – Joe


Here’s a brief recap of our experiences with the event…


  • We ran out of 160 fliers.  I should have printed more.  I just didn’t understand the volume of demand.
  • One potentiometer failed hard on Walter.  His mouth wouldn’t open correctly.


  • We ran out of fliers!  We had so much interest that all 160 fliers were gone!  (see below for the solution key for the puzzles on the back!
  • Check-in and interaction with all event people was awesome.
  • Dan ran another great event! Thanks Dan!
  • We had 4 members who were there for the full day, running demos and talking with people. (Scott, Carl, Bill HK, Joe)
  • Carl brought a delicious pastry for us all to share, and Bill brought some refreshing water. THANK YOU!

All in all, it was a great day, and I am super thankful to you all for participating!

Note: On the back of our handout (before we ran out of them) were a few puzzles to do.  In case you got stuck on them, or want to check your work, here are the solutions:

Read the rest of this entry »

from on November 19th, 2016Comments0 Comments

Hacking a controller back into an Arduino Mega 1280

At Interlock, JustBill handed me the old controller board for a gutted 3D printer that he was rebuilding. “Do whatever you want with this.” A close inspection of the board showed that it had a main microcontroller of the ATmega 1280, which is the chip used in older Arduino Megas.  The interface to USB however was an ATmega 8u2, which is the chip used in newer Arduino Megas, and you may also know it from older Arduino Unos… modern Uno R3s use a 32u4.

This board had custom firmware on it so that it didn’t look like an Arduino, or any sort of serial connection to the host computer it’s plugged into… so as-is, it was useless for general use as an Arduino; taking advantage of the GUI and clicky-clicky programmer interface.

So my thought was, it might be nice to have my own ‘Mega for testing and such.  Could this board be set up in a way that might make this process and outcome easy?  Turns out it mostly was.

The original board got its power from a power terminls on the board, 24V.  It needed to power the stepper motors, and such so it needed to be beefy.  This was dropped down to 5 and 3.3 on the board itself.

There is a USB B jack for connecting this to a host computer, which did not have its 5V connected, so my thought was, what if i hooked up this 5V to the USB jack.  would that be enough to power the chips?

I added this jumper, which connects the +5 on the USB jack to the 5v bus on the board, and plugged it in, and sure enough, it beeped and came to life without its host power supply.

Next up would be reprogramming the micros to have the arduino bootloader and code on them.

I hooked up my fairly cheesy Arduino D-15 (hacked stepper motor controller) ISP to the 6 pin header, which thankfully was already populated and labelled on the board!  I plugged it into the port labelled “1280 ISP”, selected the Arduino Mega, with 1280 micro from the Arduino 1.6.6 menus, selected Arduino ISP for the programmer, then selected “load bootlader”.  In about a minute, it seemed to have completed successfully…. if something didn’t jive, it would have spewed out sync or device errors to the screen…  Seemed good so far!

Next, was hooking it up to the jack labelled 8u2 ISP.  This was a little trickier because I wasn’t installing the bootloader (which the Arduino IDE makes REALLY easy to do), but rather the secondary micro’s firmware, which basically was just a USB-Serial interface driver.

Long story short, I grabbed the 8u2 code from github, “MEGA-dfu_and_usbserial_combined.hex”, and used the following command line (using a mixture of the code on that page, with the parameters that my system used via the arduino IDE on my Mac:

  ./avrdude -p at90usb82 -F -cstk500v1 -P/dev/cu.usbserial-A800czia -b19200 -U flash:w:8u2.hex  -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m -C/Users/me/Library/Arduino15/packages/arduino/tools/avrdude/6.0.1-arduino5/etc/avrdude.conf

In short, it sets the CPU to at90usb82, uses the stk500v1 communications protocol over the /dev/cu.usbserial driver, at 19200 baud…. it programs the file 8u2.hex, sets fuses and sets other avrdude configuration stuff.

After lots of text scrolling by from running that, I was able to drop a program I was working on, onto it via the Arduino IDE directly, without any problems at all! I set the port to the serial Mega, set the board to “Arduino Mega”, cpu set at “Mega 1280”, clicked ‘upload’ and bam, fully functional serial communications from the serial montior down through to the ‘1280 on the board.

Whoo! Free Arduino Mega for me!

Edit: Here’s the pinouts of stuff I beeped out. The number is the digital (or Analog where applicable) pin on an Arduino Mega board.  So digital 24 from Arduino corrolates to the “A Dir” pad on the board.

  •  * 4 – Piezo +
  •  * 6 – heat
  •  * 7 – fan
  •  * 24 – A Dir
  •  * 25 – A Step
  •  * 26 – A Enable
  •  * 27 – A Pot
  •  * 28 – B Dir
  •  * 29 – B Step
  •  * 36 – debug 2
  •  * 37 – debug 3
  •  * 38 – (nc)
  •  * 39 – B Enable
  •  * 40 – debug 4
  •  * 41 – PG0
  •  * 42 – TP33 / Z-MAX
  •  * 43 – TP32 / Z-MIN
  •  * 44 – Extra +/R85
  •  * 45 – bp heat
  •  * 46 – TP31 / Y-MAX
  •  * 47 – TP30 / Y-MIN
  •  * 48 – TP29 / X-MAX
  •  * 49 – TP28 / X-Min
  •  * A0 – X Dir
  •  * A1 – X Step
  •  * A2 – X Enable
  •  * A3 – X Pot
  •  * A4 – Y Dir
  •  * A5 – Y Step
  •  * A6 – Y Enable
  •  * A7 – Y Pot
  •  * A8  – Z Dir
  •  * A9  – Z Step
  •  * A10 – Z Enable
  •  * A11 – Z Pot
  •  * A12 – PK4 / JP7
  •  * A13 – PK5 / JP7
  •  * A14 – PK6 / JP6
  •  * A15 – TP27 / HBP Therm

The molex switch connectors seem to have the pinout: (signal) (ground) (ground) (+5v)

from on February 22nd, 2016Comments0 Comments

The Shelves Of Potential Awesome!


Hi all! I’d like to formally announce something that we’ve (kinda) been working on for a little while now.


It is a library of sorts…  The idea is this:  If you want to try out one of the dev kits that are there, you can sign them out for your own use.  Preferrably something that you will write a blog post for. 😉  but even if you just want to sit down with one and mess with it for a week or two, go for it!

Here’s a list of what’s currently available on the shelf:

In that list you will find an inventory ID that matches the ID on the tag attached to each package.  You will also find a contact person who may be able to help or at least point you in the right direction for what these things are, how to use them, etc.

For now, these items are borrow-only.  We are working on a way for these items to be purchasable in the future.  For example, if you start using one, and integrate it into your awesome project, we would like for there to be a way for you to purchase it from the space. If there’s something you want to borrow, contact Scott to check it out. We’ll eventually have some sort of fancy computer-assisted self-operated inventory system, but for now, we’ll go with this.


We are looking for more borrow-donations for the shelf! If you have more, please let us know!  I’d like to make more Arduino boards available, as well as modernish laptops and possibly retro computers for people to borrow and play with.

In the near future, I will be setting up a laptop or two with a guest account to be stored there for borrowing in case you want to work on something at the space but forgot your own kit at home.


There is also a CD case disguised as a “1997 MSDN Subscription” box.  This is currently filled with empty disc sleeves, but in the future, it will be populated with various install media for various old and new hardware.  I will be bringing in disc media for some obsolete systems to be put in there. I’d like for one of you Linux Master Craftspeople to burn a copy or two of the current preferred desktop/server/32/64/whatever discs to be stored in there.  We will catalog the contents as things get added.


from on May 20th, 2015Comments2 Comments