Archive for the ‘Uncategorized’Category

Caught in the Shop

I was walking through the shop tonight and saw something awesome happening. I took some crappy photos to show you (and I’m not sorry about it!).

That's a big piece of metal

Our Cold Metals area host, Mike, holding a big piece of metal. He’s going to turn it into a smaller piece of metal.

DSC_5730

Mike and Dean work on centering the piece.

DSC_5723

This is the part they’re trying to reproduce. This is a pulley for our new(ish) Johnson horizontal band saw. You’ll note that it’s bent. It’s also incorrectly sized, so there’s a bushing that’s been inserted that you can’t see. This bushing has no key, so the pulley was fairly noisy and inefficient.

 

 

25

03 2014

Adding digital speed indication to a drill press.

There’s a big bin of 5 digit, 7-segment displays sitting in our electronics lab. It’s the sort of thing that cries out for a project. I found one that’s the perfect shape for a digital speed readout for our big drill press, whose mechanical RPM indicator was broken.

2014-02-16 18.26.53

Testing out the display PCB. It’s got 3 16 bit shift registers.

The display was pretty simple to reverse-engineer. There’s a header on the back that’s connected directly to the relevant pins on the first shift register. Apply power, fire up a basic sketch built around shiftOut(), and away we go.

2014-03-10 21.16.13

My test rig, showing that the RPMs pretty close.

My code (patches welcome!) is not terribly complex. Basically I use a Hall effect sensor to trigger an interrupt every time a magnet glued to a wheel in the drill press passes. The time between interrupts is used to calculate RPM.

2014-03-13 21.25.16

Magnet + Hall effect sensor.

All told, I spent maybe four or five hours on this project. It’s probably the simplest possible solution to the problem, and my total investment is less than $10 in parts. And we’ve got an accurate readout of the speed of this big drill press.

2014-03-13 18.49.28

Complete system.

I’m out

-loans

13

03 2014

NERP: At Last — A JavaScript MCU!

NERP: At Last — A JavaScript MCU!

NERP is not exclusively Raspberry Pi, the small computer interest group at Pumping Station:One in Chicago. NERP meets every other Monday at 7pm at Pumping Station:One, 3519 N. Elston Ave. in Chicago.

It was time, perhaps past time for a JavaSscript microcontroller to appear. Tonight Drew Fustini will show us a high-level overview of the Espruino. The Espruino controller board is just emerging from Kickstarter and can be ordered through one of their distributors. http://www.espruino.com/
Lots of people know JavaScript and its programming environment, and many of those people could be convinced to try their hand at using a microcontroller if they could use their preferred programming language – in a Web IDE. This is important stuff, but the really striking thing is that event-driven processes are now in easy reach of people who need the capability but don’t want to learn a real time operating system. A very common question people in their first hour of Arduino programming will ask is “Now how do I blink two LED’s?”. Having spent a lot of time teaching Arduino 101, I can say that it’s always an awkward moment when you say “Well, you can, but it’s really involved”. JavaScript combined with a bit of Arduino vernacular solves the problem in a way that might be expected in an event-driven system. It’s wonderfully short and simple. Snagged and slightly edited from the espruio.com site:

function toggle1() {
on1 = !on1;
digitalWrite(LED1, on1);
}

function toggle2() {
on2 = !on2;
digitalWrite(LED2, on2);
}

setInterval(toggle1, 400);
setInterval(toggle2, 456);

Each time you called setInterval(), it returned a different number. If you want to change how fast the interval runs (or cancel it altogether) you need to use this number:
changeInterval(1,1000);
or
clearInterval(1);
[end quote]

Almost predictably the CPU is an ARM M-series like so many other of the 32-bit MCU convenience platforms. For instance an M3 type is used in the Espruino and an M4 type is used in the Teensy 3.1. It is unclear to me whether portability of code will carry across different chip makers, but the M3 vs M4 difference per se may not matter. From Element14's community site:

...most features of the Cortex-M3 and M4 are the same with the significant difference that Cortex-M4 has DSP extensions and an optional FPU. There is nearly no need for modification of hardware and software to migrate from M3 to M4. [http://www.element14.com/community/docs/DOC-36208/l/migrating-from-cortex-m3-to-cortex-m4-by-element14 ]


Like the relationship between the Arduino and the ATMega MCU’s from Atmel, there is an Espruino board and Espruino libraries. Also similarly, the libraries are open source and theoretically portable to other boards using the same or similar chip. Some possibilities labeled as “unsupported” are listed on the Espruino site.
Will it become common to pick your ARM board and then pick your development system?

–----------

Also tonight, Ed will talk about some of the issues in making a clock that uses a funky, antique digital display called a “one-plane readout”.

Find NERP and Pumping Station:One
at http://www.meetup.com/NERP-Not-Exclusively-Raspberry-Pi/
and http://pumpingstationone.org/
Doors open at 6:30pm. The next meeting is March 3rd, 2014. NERP is free and open to the public.
Ed Bennett ed @ kinetics and electronics com
Tags: electronics, embedded, NERP, Open Source, raspberry pi, hackerspace, Beagle Bone, Element14, Pumping Station One

03

03 2014

NERP: Spark Core – Warm and Fuzzy Computing

Monday Feb 17th at 7pm Jeff Camealy will present his talk “How to control your electric blanket with a Spark Core”. He describes his use case: “The Spark Core is a small Arduino compatible chip with built in WiFi and Cloud connectivity. This functionally can be used to easily create a device that can be controlled remotely. We’ll see how we can use the Spark Core Cloud to create an iPhone App to direct your blanket from the comfort of your .. blanket.”

nerp_spark-core-2

Lest Jeff sell himself short, it should be said that he’s spotted a technology that’s powerful and significant, but also somewhat strange. Until now the Arduino programming environment hasn’t often been associated with cloud computing. It’s not clear to me whether this is a niche application, or the start of a trend in small embedded controllers. Not surprisingly, the ARM architecture continues to insinuate itself into every corner of embedded control. The Spark Core uses an STMicroelectronics STM32F103 ARM M3 running at 72 MHz. The WiFi is provided by a TI SimpleLink CC3000 module. If you don’t like the cloud you can use the Spark Core as an ordinary USB-programmed controller that has WiFi. The spark.io site contains these [edited] points to help in understanding what the Spark Core does:

The Spark Core is a tiny, open source Wi-Fi development board that makes it easy to create Internet connected hardware. The Core is all you need to get started; power it over USB and in minutes you’ll be controlling LEDs, switches and motors and collecting data from sensors over the Internet!

There’s no need to ever plug the Core into your computer; you can write code in our web IDE and download it wirelessly to the Core. The Core uses Wiring, the same programming language that Arduino uses. Plus, with an accessory called the Shield Shield, you can connect the Core to a standard Arduino shield.

The Cloud is the mother ship that the Spark Core connects to when it comes online. Once the Core is paired with the Cloud, it becomes accessible from anywhere in the world through our open but secure REST API. Cloud service comes free for life with the Core. [excerpts from https://www.spark.io/]

Excitement!

Thanks to Drew Fustini and the kind folks at element14, we’ll have a drawing for a fully assembled Gertboard. “Gertboard is the ideal add-on for Raspberry Pi. Designed by Gert van Loo, it is a flexible experimenter board that plugs directly into your Raspberry Pi, and out into the physical world…” [element14]

NERP is not exclusively raspberry pi, the small computer interest group at Pumping Station:One in Chicago. Find NERP and Pumping Station:One
at http://www.meetup.com/NERP-Not-Exclusively-Raspberry-Pi/
and http://pumpingstationone.org/

NERP meets every other Monday at 7pm at Pumping Station:One, 3519 N. Elston Ave. in Chicago. Doors open at 6:30pm. The next meeting is Feb 17th, 2014. NERP is free and open to the public.

Ed Bennett ed @ kinetics and electronics com
Tags: electronics, embedded, NERP, Open Source, raspberry pi, hackerspace, Beagle Bone, Element14,
Pumping Station One

14

02 2014

NERP: Teensy 3.X – a 32-bit ARM microcontroller board for <20$

The Teensy name has been around for several years in the land of 8-bit MCU boards, but the 32-bit Arm platform introduced in Teensy v3.0, is a game-changer. PJRC (http://pjrc.com/teensy/teensy31.html)sent a few Teensy 3.0’s to Anna (our Electronics area host) at PS:1 with no discussion or fanfare. Thank-you, PJRC.

AT NERP TONIGHT, Ed will show the Teensy 3.0 hardware, Arduino tools, and some sample programs. After that introduction to the Teensy 3.0, Colorado Rob will show how he programs the Teensy 3.1 with a combination of tools and utilities from Eclipse, GNU, Freescale (manufacturers of the Teensy ARM MCU), and freeRTOS. ALSO – We’ll also raffle a new in box original aka white BeagleBone. Thanks to Drew for the donation!

The Teensy 3.X’s cost less than $20 and include all the peripherals you expect in a regular MCU. Some specs on the Teensy 3.1 are:

MCU MK20DX256VLH7 Cortex-M4, 72Mhz (96MHz overclocked), 256k flash, 64k RAM, 2k EEPROM, 34 dio pins, 21 analog input pins, etc.

The Teensy 3.0 is (mostly) pin compatible with the 3.1. The v3.0 uses an MK20DX128VLH5 MCU with 34 dio pins, 14 analog input pins, etc. Other spec values are one-half or less of the ‘DX256VLH7.

The 32-bit ARM chips are internally much more complicated than 8-bit processors, but the user doesn’t have to be aware of this when programming them. The Teensyduino IDE from PJRC provides a familiar user interface and Arduino(TM) libraries that make getting from zero to blinky very easy. There are additional libraries that provide access to some of the ARM-specific resources such as the USB port.

I’ve been exploring the v3.0 samples and am pleased with their sale price and performance. My setup is the basic Arduino install + Teensyduino on Linux. After doing the Arduino install I played with some sample code that does HID mouse and keyboard emulation on USB. Making it work was pretty straightforward.

Colorodo Rob writes:

I have been playing around with the Teensy 3.1 for a few days. It’s an ARM board for $17.
http://store.oshpark.com/products/teensy-3-1

My thoughts on it so far are that the CPU is way overkill for most embedded things that you’d program with the Arduino programming environment and library.* Also, there is a huge increase in complexity to overcome to program if using “real tools”. But the Arduino tools are easy to set up and use. But for my embedded project, the Freescale CPU it uses has the potential to save a bit of money. Even though the CPU costs more than the AVR part I currently use, it includes a USB controller and a voltage regulator, so those component costs go away. I’ve been following a tutorial for setting up a dev tool chain for these CPUs using Eclipse, GCC and Freescale’s tools:

http://mcuoneclipse.com/2013/07/20/dyi-free-toolchain-for-kinetis-part-1-gnu-arm-build-tools/

I’m looking at FreeRTOS (modified GPL) now. I’ve just gotten the ADC working with DMA which is pretty cool. My completion handler gets called when there are 32 samples ready for me, which is what I need for the carrier detect algorithm. The Freescale tools are pretty powerful for what they allow you to do, and an RTOS provides interesting departure from the sequential programming typical of Arduino development.

*Rob and I differ on this point…

NERP is not exclusively raspberry pi, the small computer interest group at Pumping Station:One in Chicago.

Find NERP and Pumping Station:One
at http://www.meetup.com/NERP-Not-Exclusively-Raspberry-Pi/
and http://pumpingstationone.org/

NERP meets every other Monday at 7pm at Pumping Station:One, 3519 N. Elston Ave. in Chicago.Doors open at 6:30pm.The next meeting is Feb 3rd, 2014. NERP is free and open to the public.
Ed Bennett ed @ kinetics and electronics com
Tags: electronics, embedded, NERP, Open Source, raspberry pi, hackerspace, Beagle Bone, Element14,
Pumping Station One

03

02 2014

CNC Build Club with Alden Hart: 1/23/2014

AldenHart

Alden Hart, the creator of TinyG and the grblShield will be in town later this month and will give a talk at the 1/23/2014 CNC Build Club @7:00pm.  The meeting is open to members and non-members.  If you want to attend, please RSVP via Meetup.

The grblShield is a basic stepper motor driver Arduino Uno Shield.  It is part of the standard parts list for the Shapeoko and there are thousands of these in the field. It can also act as a shield for the Arduino Due and run a special version of TinyG firmware.

grblShieldv4-800-600x399

 

 

 

 

 

 

The TinyG project is a multi-axis motion control system. It is designed for CNC applications and other applications that require highly precise motion control. TinyG is meant to be a complete embedded solution for small/medium motor control. Here are some of the main features of the v8 hardware.

  • Integrated motion control system with embedded microcontroller (Atmel ATxmega192)
  • 4 stepper motor drivers (TI DRV8818) integrated on a ~4 inch square board
  • Stepper drivers handle 2.5 amps per winding which will handle most motors up thru NEMA23 and some NEMA34 motors
  • Accepts Gcode from USB port and interprets it locally on the board
  • 6-axis control (XYZ + ABC rotary axes) maps to any 4 motors
  • Constant jerk acceleration planning (3rd order S curves) for smooth and fast motion transitions
  • Very smooth step pulse generation using phase-optimized fractional-step DDA running at 50 Khz with very low jitter
  • Networkable via SPI to support off-board devices and for networking multiple boards into multi-axis systems
  • Microstepping up to 1/8 (optimized DDA makes this smoother than many 1/16 implementations)

tinyg

 

05

01 2014

NERP tonite! BoneScript and the BaconCape.

The Beagle Bone Black is  an Altoids-tin-sized $45 Open Source Hardware Linux computer.  It can be programmed in pretty much any language, since “it’s just Linux, but small”.

“BoneScript is a Node.js library specifically optimized for the Beagle family and featuring familiar Arduino function calls, exported to the browser.”
(http://beagleboard.org/Support/BoneScript).

Tonight at NERP,  the inimitable Drew Fustini will be presenting a quick refresher on BoneScript and then an introduction more advanced BoneScript capilbities using the BaconCape:

http://beagleboard.org/support/BoneScript/cape_bacon/

“an add-on board meant to give you access to some hardware to help build your understanding of doing basic embedded I/O on BeagleBone”

NERP is not exclusively raspberry pi, the small computer interest group at Pumping Station:One in Chicago.
Find NERP and Pumping Station:One
at http://www.meetup.com/NERP-Not-Exclusively-Raspberry-Pi/
and http://pumpingstationone.org/

NERP meets every other Monday at 7pm at Pumping Station:One, 3519 N. Elston Ave. in Chicago.
Doors open at 6:30pm. The next meeting is Dec 16th, 2013 NERP is free and open to the public.
Ed Bennett ed @ kinetics and electronics com
Tags: electronics, embedded, NERP, Open Source, raspberry pi, hackerspace, Beagle Bone, Element14, Pumping Station One

16

12 2013

Cybersecurity for Everyone

Monday November 25 from 7-9pm, Lisha Sterling from Geeks Without Bounds will be teaching Cybersecurity for Everyone at Pumping Station: One.

“No one would want to hack me!” (Famous last words.)

In this workshop, I explain what the real risks and threats are when you put your devices on the Internet and we discuss how to balance convenience with security in a sensible way.

You’ll get to see what wireless traffic looks like when someone’s sniffing it out of the air. You’ll see quickly why HTTPS is important for your personal web browsing, and why just having a WEP or WPA protected wifi connection isn’t good enough. (And if you don’t know what WEP or WPA are, you’ll learn that, too!) I’ll show you how people can find your vulnerable home and office devices — routers, printers and more — and tell you how to protect yourself before you get hit. How secure are your passwords? I’ll teach you a few tricks for creating memorable but unguessable keys for all your digital stuff. We’ll discuss how to use TOR safely, including common pitfalls and we’ll ask, is it possible to have secure email communication? We’ll finish up the evening with a quick tutorial on using Mailvelope for encrypting your webmail.

25

11 2013

Using Bronze Age Technology to Move the Mill

When the Bridgeport  mill was delivered on Tuesday, we had the driver did set it on the floor by the back dock. The metal shop is near the front of the building, so we had to move the mill by hand into it’s new home. The mill weighs bout 2200 pounds, and it’s very top-heavy. This makes moving it difficult and somewhat dangerous. Dean suggested that we use pieces of 1-inch black pipe as rollers, Egyptian style. He brought along a large pry bar for lifting an edge of the mill up enough to slip a piece of pipe underneath. After a couple of pieces of pipe are under the machine, it can be rolled. It looks like it would just sail along, but small imperfections in the floor make pushing very hard in spots.

Bridgeport_Move

Steering is done with the pry bar by lifting up an edge of the base a tiny bit and then swivelling the captive edge about the fulcrum of the pry bar. A change of direction is accomplished in increments of a few inches per swivel. [We need to name a unit for inches per swivel.] Steering is also effected by the angle the pipes lie at, relative to the line of motion, and also by sheer force. My rough estimate is that the move was about 75 feet, and took about an hour and a half. JP set the pipes, Dean worked the pry bar, Mike and Steve did the forward push, and Tucker guided the machine into curves. As of Wednesday, the machine  is connected to power. Yea!

21

11 2013

Math Office Hours, this Sunday from 5 to 7

Express your inner mathnerd! Come join us for an evening of learning: algebra, calculus, word problems, finding x, and much, much more. We’re open to anyone looking to brush up on basic skills and to those who want to learn about more advanced topics. We can even stray into set theory, topology, and fourier analysis…. it’s all up to you!

If you’re feeling intimidated, don’t be. Any level of math experience is welcome. We will be happy to discuss any topic that falls under “math”. No question is too basic. Got a homework question? We can help! Trying to solve a tricky equation for a problem? We’ll think it through with you. Want to learn the basics of what math is all about? We’ve got you covered!

Math should be a common language to all, and we will be more than happy to help you take the first steps towards a lifelong appreciation of this beautiful subject!

Show and Tell

At the start of this week’s Math Office Hours, we’ll be doing show and tell. If you have a math topic you’re interested in, come tell us about it. Presentations can be as short as 2 minutes or as long as 20 minutes.

Whos, Whens, and Wheres

  • Who – Anyone who wants to learn about math
  • Where – PS:One, second floor, in the electronics area
  • When – Sunday, June 9th, 5pm until 7pm
  • How much – Free

10

11 2013