Disclaimer and Social

This page may contain affiliate links. As an Amazon Associate I earn from qualifying purchases.

Showing posts with label adafruit. Show all posts
Showing posts with label adafruit. Show all posts

Tuesday, September 18, 2018

LEGO Mindstorms Motors with Arduino

Found a bunch of my old LEGO Mindstorms robotics stuff and realized that I could still use all the old motors and most of the sensors. The old versions of the motors (RCX 1 & 2) are just 9v DC motors so I can easily control them with an Arduino.

These old motors are super sturdy, reasonably powerful and the gearing makes them great for any hobby level robotics project. And of course, they fit into the entire LEGO ecosystem so they are easy to prototype with.

LEGO Mindstorms RCX motors can be used with an Arduino with Adafruit motor shield
Just a few leftover LEGO Mindstorms Technic motors. And I've got lots more Mindstorms and Technic parts, plus quite a few Bionicle sets. 

I stopped using the RCXs when the software and drivers stopped working on modern systems. I thought about buying the NXT or EV3 versions, but by that time I was already into Arduino or Raspberry Pi and couldn't justify buying another brain and motor/sensor package.

So the motors and other items languished in storage for years. But I wanted to find one of my robot chassis (still assembled after all these years) to use with some beginning roboticists. I was going to 3d print some adaptors for the cheap DC motors. But when I saw the old motors I realized I could just cut the LEGO connector wires and plug them directly into a motor driver.

Normally, I would just upgrade to newer equipment, but I have a dozen of these motors and several robot chassis and mechanical contraptions that are already designed ( and more importantly, already assembled) to work with this style of motor. Since the motors are designed to run on 9v (I remember running them at up to 12v without damage) so I knew they would work well with several of the Arduino motor drivers I already have. I decided to put these handy little motors back to work.

I chose to use Adafruit's Motor Shield. It can handle 9-12v easily and has handy screw terminals for attaching wires. And the well-written library makes it easy for new roboteers to program their creations. It gives you four DC motor outputs (or two stepper motors) as well as two servo ports. And it leaves the analog and digital inputs to use with sensors.



Put the shield on top of a UNO and they are about the same size as the old RCX, so they fit perfectly onto the existing robot chassis. Or use one of the new M4 powered UNO compatibles and have enough power and speed to run a full color touch screen display, Bluetooth, GPS and a 10 DOF sensor board. You could even get one of the smaller boards like a Feather or Teensy.

Compare LEGO Mindstorms RCX brick with the size of an Arduino and Motor Shield combo
The Arduino and Motor Shield are slightly smaller than the original RCX brick, so they can be substituted into any design that uses the old RCXs. And the motor shield gives you an extra motor port and the option to run the motors at higher voltages for that extra boot of power.

Hooking up the motors is simple. Just use one of the Mindstorms motor cable and cut the wire that runs between the two LEGO connectors. You will get two cables, one end with a LEFO connector and one with just wire. Strip a small amount of insulation off the wire. Attach the connector to the motor, then screw down the wires into any of the four ports on the motor shield. Use the LEGO motors like any other DC motor.

Just snip the wire between the connector blocks and attach them to the screw-terminals of the motor shield.

You could get fancy and tin the wire with solder, crimp a pin to the wire, or splice it into a breadboard style wire.

Now build a robot and code the Arduino using the library for the motor shield.

LEGO Mindstorms RCX motors running on an Arduino with Adafruit motor shield
You can run the old LEGO Mindstorms RCX motors using an Arduino and Adafruit's Motor Shield kit. The motors are simple 9v DC motors that are geared to be powerful and sturdy. Plus they fit into the LEGO and Technic universe, so you can build almost anything you can imagine.
For information about connecting to later LEGO Mindstorms kits check out:


As an Amazon Associate I earn from qualifying purchases.
Shop through our Amazon links to help support this site.

Also find me on:

Sunday, August 12, 2018

Blacklight (UV) NeoPixel LEDs

Adafruit just released UV Blacklight NeoPixels. I've been waiting on something like this for a while. I had figured the UV light would be added to the RGB configuration like their RGBW versions. But this is really cool because all three LEDs are blacklights so you have a lot of control over their intensity.

Now you can make your costumes and festival clothing glow in the dark. Your Halloween props or stage backdrops can really pop. And your model spaceships can emit eerie lights.


LEGO Bionicle glows with UV blacklight from Adafruit's Neopixels
Add some extra pizazz to your LEGO Bionicle or other models with Adafruit's new UV Blacklight NeoPixels.

I just finished making my own portable UV Blacklight out of an old flashlight (my INSTRUCTABLE), so I remembered how much fun blacklights really are.


Make those neon mesh costumes really glow in the dark at your next music festival.


And since they are Neopixels, you can control individual LEDS and create moving patterns. Combine these with traditional RGB NeoPixels and you've got quite a light show.

Also find me on:
FACEBOOK -or- INSTRUCTABLES -or- YOUTUBE

Wednesday, July 25, 2018

Use JavaScript to Decrement Loops in MakeCode

Just found out you can mix-and-match custom JavaScript code with blocks in Microsoft's MakeCode for Adafruit's Circuit Playground Express board.


At a recent maker meeting, one of the makers was trying to determine how to decrement a for-loop using the block editor inside MakeCode, but they couldn't find a way. The built-in for-loop always starts at zero, always increments by one, and always adds. So it's easy to loop from 0 to 255, but there didn't seem to be any way to count backwards from 255 back to 0.

There might be a way to use blocks to decrement a loop, but we went exploring inside the JavaScript editor instead.

Turns out, you can overwrite the blocks by editing the JavaScript code and using the traditional methods for counting down (set start at 255, change the test condition and use "--" instead of "++"). But we weren't sure how the custom code would behave - or if it would even appear in the blocks editor.

The customized code works perfectly fine, and it appears as a gray block with the custom code showing.

Custom JavaScript blocks in Micrsoft MakeCode for Adafruit Circuit Playground Express
The custom JavaScript is shown in the gray block. The code was edited in the JavaScript mode. 


This example shows how to light up the LEDs in sequence from 0 to 10, then turn them off from 10 to 0. It's a simple example, but illustrates how the code appears inside the block editor.



It's great that an old text coder like me can work comfortably in MakeCode using traditional styles, but I need to explore to see if there's an easy way to do decrementing loops in the block editor. I'm fine with text-based coding, more comfortable than with blocks honestly - but I should know more about the block editor in case I ever have to help a new programmer.

If you know how please drop some knowledge in a comment.

Also find me on:
FACEBOOK -or- INSTRUCTABLES -or- YOUTUBE

Monday, July 16, 2018

Color-Wheel for HSB and NeoPixels

Here is a helpful color-wheel for using NeoPixels with the HSB color mode. I had to make a printable version when I switched from the RGB to HSB mode and thought I would share it here. I go into more detail on my Instructable for a visual tone piano.

HSB stands for HUE---SATURATION---BRILLIANCE and is just another way to represent the colors for NeoPixel code. I have used the RGB (red, green, blue) mode for so long the HSB mode threw me for a loop until I drew myself a picture of how it works.

I would have probably never used HSB unless Adafruit's amazing Circuit Playground board started using HSB as its beginner-friendly color mode. Now, Microsoft's MakeCode visual programming platform also offers HSB as an alternative to RGB. So I had to learn it.



HSB vs RGB color wheel space mode for Arduino Circuit Playground NeoPixels
Here's a helpful color-wheel showing how the HSB color space mode works with NeoPixels. The image also shows the basic code used to set the color on Adafruit's wonderful Circuit Playground Arduino board.


I have used RGB, CMYK and even LAB color spaces in Photoshop and Illustrator, but had always avoided HSB for some reason. So I originally felt that HSB didn't give me the precise control I was used to. However, after using it for a while I have come to like it.

Being able to set a basic color with a single number, and modify its intensity with a second (and third) number is a quick and slick method. I might not be able to get the perfect sick-acid-green or a eye-popping-pink-gold with a single color number, but honestly, I don't need to for most of my applications. The 256 mixtures of primary color duos gives me enough choices for most basic applications. And it's certainly simpler for beginners.


HSB neopixel color in Makecode for Circuit Playground
The free MakeCode online programming environment lets you play with HSB color mode. The model (upper left) shows the result of changing the values. It's a great way to try switching from RGB to HSB without even owning a board.

I was so used to mixing color in RGB and CMYK modes that I thought it was simple. Then I watched some new users struggle to make the color they wanted. It was painful just to watch and I remembered how confusing and complicated it really is. Suddenly, the HSB mode made perfect sense to use as the default color mode.

Basically, the HSB model mixes from:
  • pure red, 
  • adds some green to make yellow, 
  • then subtracts red to get pure green,
  • adds some blue to get blue-green,
  • subtracts green to get pure blue,
  • adds red to get purple,
  • and subtracts blue to return to pure red
The result is 256 hues and that's enough for most NeoPixel projects. The MakeCode environment exposes all three elemnts of HSB, so its a great way to quickly learn how to manipulate colors and intensity - you don't even need an Arduino, just used to online model and play with the values in code.


As an Amazon Associate I earn from qualifying purchases.
Shop through our Amazon links to help support this site.

Also find me on:

Thursday, July 12, 2018

Publishing a Gap-Toothed Piano with Circuit Playground

Just got a great reminder of why it's important to publish your work and promote the work of other makers. I've been slacking recently, not publishing or documenting much of anything.

I am cycling away from jewelry-making and back to Arduino type projects. Working with jewelry gives me immediate feedback from real living people through sales and human interaction. I get tiny jolts of ego juice when people buy my stuff, not a lot of sales mind you, but enough to keep me going.

With the Arduino and industrial design stuff however, I had started to feel both overly egotistical (talking about my stuff all the time) and unsure if anyone really cares about the projects anyway. These types of projects can seem tedious to many people (all my friends) and the time-scale is so much longer that few people wait around for the pay-off. Who really wants to hear the details of a five-week project that includes coding, electronics, 3d printing and industrial design?

Then someone did one tiny thing and it helped me - they published something similar to my work.

I love it when I see professional designers come up with solutions that are similar to mine. When people I admire solve the same problem and get the same result, it makes me feel like I did something well.

I'm not designing professionally these days, but it still feels good - like maybe I've still got it - even when the professional's design is much better than mine. That little ego-boost is always pleasant, but it really means something when you're designing in isolation.



A few years ago I made a Musical Doodle Bug for an Instructable. It's a cute toy piano thingy with a gap-toothed face. You can play musical notes and arpeggios while LEDs light up to go along with the music. You can change the speed and octave just by rotating the object. You can change modes with buttons and switches. And I tried to make it kid friendly with a cute case made from common craft supplies. I wanted to make something with my favorite new Arduino board that included fun activities for all ages and skill levels.




Last week, I found a project from Adafruit (one of my favorite maker-centric companies) that used the same board that also played music with a cute, toothy face. Finding that project made me smile. Adafruit's version is much more refined and polished. But the basic approach is the same.

Even better, Adafruit is the maker and designer of the board used in the project. It's their Circuit Playground board, an all-in-one Arduino style board that comes complete with a huge collection of sensors and outputs built right onto the board. I fell in love with this wonderful board as soon as I saw it. It's perfect for new programmers and it's cheap. But it's also powerful enough for advanced designers and programmers to use in "real" projects.


I don't get much feedback on my Arduino projects since I'm the only one locally who really uses Arduinos and such. I enjoyed making the project, but I wasn't sure if it was any good. So when I saw the creators of the board design a project for it - that used just a few of the same elements and approaches that I used - well it made my day, it made me happy, it gave me confirmation. Maybe I was on the right track after all.

This might seem silly and trivial. (It's not the first or only "face piano" after all - no big deal.) If you work in a creative environment and are surrounded by skilled and talented designers all day, then you get constant feedback. You get confirmation and guidance from peers and end-users. Or, if you have a large local maker community you can reach out to them, talk to them in real life or even collaborate on projects.

But if you work in isolation, then it can be weeks or even months between comments from another person (typed and anonymous). It's difficult to know if you are on the right track, or know if any one else is even interested in the same things as you. I've annoyed dozens of local people promoting the joys and wonder of this type of making - to the point that their eyes glazed over. By this point I know I have to depend on the internet to provide feedback from like-minded designers and makers.

Seriously, who in their right mind does flow-charts much less documents them and publishes them. Well I did, and it helped me understand what I was trying to accomplish. If you do too, then just know that you are not alone.


So here's a big shout out and thank you to everyone who publishes their projects - big or small, simple or sophisticated, artistic or practical. You folks help keep me going. And I'm sure I'm not the only one. There are people on remote jobsites, in small communities, or who just have family responsibilities that keep them from being part of a physical IRL community. We tinker and make and keep ourselves halfway motivated with very little outside feedback.

But if one tiny echo of my project can make me this happy and motivate me again, well it makes me want to publish more projects just in case there is one other person who is working on a similar project and needs some support.

BTW, Adafruit does an excellent job of both publishing and promoting other makers' work. Their skill at creating and nurturing a community is amazing. Their attitude is one of the reasons I'm still involved with electronics and Arduinos when everyone around me thinks it's weird and boring. A big shout out to them as well. Go visit their forums and participate.

Just remember - you are not alone. There are other people, normal people without a million subscribers, who tinker and putz in the basement or garage. It's good to hear from them and from you. I learn from you just like the big names. I am impressed by your work and your creativity. Please publish more of your projects. Help keep me motivated and I promise I will publish more in return.


Also find me on:
FACEBOOK -or- INSTRUCTABLES -or- YOUTUBE

Wednesday, May 30, 2018

Got the LRA Vibration Motor Partially Working

SUCCESS !!! - well sort of. I can now make an LRA vibrator click and pop and hum - very weakly, but it's definitely progress.

Recently, I posted about finding (I thought) a mythical LRA vibration motor. After spending the last few hours combing through the 62 page spec-sheet for the DRV2605L Haptic Motor Driver Chip from Texas Instruments, I'm almost certain it really is an LRA vibrator.

I'm using the Adafruit Haptic Motor controller board for the chip, so I'm also using Adafruit's library. Sparkfun also sells the same type of board along with a library. Both manufacturers have an excellent, easy-to-use implementation for driving standard ERM vibrators (lots of fun). And both have a function for sending audio signals, like music or voice, to an LRA. However, neither has a good example for the command set for LRAs.

LRA vibrator with Adafruit DRV2605l Haptic motor controller on arduino uno
Hooking up the LRA (or an ERM) vibration motor is easy thanks to Adafruit's DRV2605L Haptic motor controller board. Even a classic Arduino is capable of handling it because all the calculations are handled by the chip. Just send a code over the I2C line and the waveform is executed. Tuning an LRA, now that's a lot more complicated.


Now I understand why, and it's not the fault of Adafruit or Sparkfun - the LRAs themselves are picky and tricky and each one is unique. The driver chip needs a lot of info about the physical operation of the LRA. There are lots of register bits to set and obscure mathematical formulas to deal with before the LRA resonates properly.

Although both libraries give you easy access to these register values, it doesn't do me much good because I don't have enough info about this specific LRA so I don't know what values that motor needs in those slots. Properly tuning the resonance for these motors seems more like a job for a skilled luthier, not an electronics hobbyist.





Nevertheless, I bravely went into the core CPP and H files (a scary thing for me) and set the hex values for some registry slots (according to page 15 of the manual). And what do you know - it works. The LRA moves and every one of the waveforms is distinct. Short or sharp or ramped or rumbling, they are all very distinct. But I have to have my finger touching the vibrator to feel them. When the vibe was still in a phone it would rattle my knee caps. So I'm still doing something wrong.

Compare this to using an ERM. The simple ERM just slings an off-balance weight around a shaft. It's easy to configure and the pulse is powerful. But the waveforms feel almost the same. Out of about 100 different waveforms, I can sense maybe five different feelings. The rotating mass just doesn't stop or start quickly enough, so the difference between a short pulse and a long one is negligible. A double or triple pulse feels like single pulse because the mass is still moving when the next pulse hits.

There may be ways to brake the ERM quicker, I'll explore more and report back. I know when I was making a haptic gaming chair I would hit the rumble-motors with a quick reverse or braking command to create a much sharper and stronger sensation. There could be commands for ERMs in these libraries that I just don't know about yet.

If I can find a well documented LRA cheaply enough I might get one or two. Until then I'll play with this scavenged one and randomly change values. I'm not the only one struggling with this issue of LRAs, so there are some good forum posts about it. But this whole process reminds me of the bad old days when electronics were obscure and difficult and confusing.

On a positive note, if the corporate "they" see enough of us playing with this (spending money) one of them will make us a nicely documented, simple to use LRA so we'll all buy them. Just sayin...

Also find me on:
FACEBOOK -or- INSTRUCTABLES -or- YOUTUBE

Friday, May 25, 2018

Microsoft MakeCode Can Be Embedded

Just found out that you can embed an interactive model from Microsoft MakeCode. Now you can let other people play with your project on your blog - check it out below.

Click on the buttons (center) or click on the gold pads at the edges of the board. Watch the lights and listen for sounds. I put together these simple routines to demonstrate possible solutions to some questions asked at a recent meeting. It took me all of three minutes.


This board is Adafruit's Circuit Playground. It's my new favorite starter board for new programmers. I'm an advanced beginner and I really like it too. It's simple to use, but powerful enough for me to enjoy prototyping on it.

MakeCode also has options for Minecraft and Lego Mindstorms plus several other platforms. So be sure to check it out if you want a simple way to learn basic coding.

I'll definitely be posting more about this great board and the MakeCode syatem.



Also find me on:
FACEBOOK -or- INSTRUCTABLES -or- YOUTUBE

Friday, May 11, 2018

8-Bar plus 24-Ring equals NeoPixel Belt Buckle

Sometimes being slightly disorganized works in your favor. I keep a tray filled with every size and shape of NeoPixels. The tray lives near my electronics work station. When I find a nifty part and want to see if a NeoPixel will fit that part, I simply reach into the tray and grab an example to test.

The collection comes in very handy so I leave the LEDs in the tray at all times. I know I should put them back in their anti-static bags and put the protected LEDs back in the main collection. But I don't because, well... because I'm kind of lazy.

This week, I started playing with electronics again after taking several months off for other project types. And when I pulled out some NeoPixels to test fit onto a part I got a pleasant surprise.

Neopixel 8 bar and 24 ring as jewelry
Notice how perfectly the 8-pixel bar and the 24-pixel ring fit together





The 8-pixel bar and the 24-pixel ring had stuck together and came out of the tray as a pair. The combination created a perfect shape for a belt buckle, or broach, or maybe a hair ornament. I'll have to cover them of course, and hook them up to an Arduino. I just finished playing with decorative round covers exactly for this purpose.

Finding this combination by accident is funny. I have tested all the ring sizes in various combinations. There are enough different sizes of NeoPixel rings that you can make many combinations of concentric rings - including an LED clock with 60 pixels for the second hand.




But for some reason I had never combined or even tested the bar together with the rings. I felt silly, but happy because the universe had gifted me a new combination without me even searching for it. I think maybe I'm supposed to make a few pieces of light-up jewelry as my transition back into my electronics hobby.

Find out more about NeoPixels at Adafruit. (the 8-bar and 24-ring are two of my favorites). By now, Adafruit has the same configurations in RGB, RGB plus white (in several Kelvin colors) and even a version with faster refresh rates called DotStars.

If you've never hooked them up to your Arduino before, grab yourself some NeoPixels and start lighting up your world.


As an Amazon Associate I earn from qualifying purchases.
Shop through our Amazon links to help support this site.

Also find me on:

Thursday, March 8, 2018

DIY Thermal Vision Camera for < $100

Now, you too can see heat maps of human bodies or car engines like Predator - or identify cold spots and drafts in your house like a home-energy expert. And with a little DIY electronics knowledge, you can do it really inexpensively.

Although the sensor is only an 8x8 array, you can interpolate the readings to emulate a finer grain, and with a little coding, adjust how the temperatures are shown.


A big price-drop on Panasonic's AMG8833 8x8 Grid-EYE thermal sensor array has finally allowed hobby electronics suppliers to create a fun and useful thermal camera at a price everyone can afford - less than $50. Compare that to the more than $250 for a FLiR dev board with an 80x60 grid.

As you might expect at this price point, there are limitations. The sensor is only 8x8 pixels and has a range of less than 25 feet (7 meters). You will not be able to identify enemy paintballers from across the battlefield, and you can't get a full-house image of your heat loss. It requires a brain (Arduino or RasPi) with I2C, libraries and a graphics screen. Most people reading this probably already have a microcontroller and screen, so that's no big deal. But faster processors will give you smoother video feeds.


Here's a great teaser video from Adafruit on how to make this into a cute camera version.




Looks cool right, then see the full tutorial and make one of your own.


Adafruit has two versions of the sensor module: a tiny breakout board (item# 3538) and a Featherwing daughter board (item# 3622) made to snap right into any of their Feather boards. And of course the best thing about getting the Adafruit version is their high quality libraries and well written tutorial. They even have a tutorial on hooking it up to a Raspberry Pi

Sparkfun has also released a breakout board (SPX-14568) from their experimental SparkX labs. It uses their QWIIC connection system and also has a library for Arduino.

All the tutorials I've seen so far use a graphic display. But you could display the output on NeoPixels, on a servo-array or translate it into sounds. You could draw images with sparklers. Since you also have access to the raw data you could store time lapses. Combine this with traditional movement and distance sensors for more accurate navigation for your robots, or add another layer to your home security system. If you can code, you can create anything you want.

For less than $50 you get a useful sensor that's far more than a toy - definitely worth checking out for a wide variety of uses.


As an Amazon Associate I earn from qualifying purchases.
Shop through our Amazon links to help support this site.

Also find me on:

Tuesday, January 2, 2018

Jewelry that Flickers and Flits with Pictures

Here's another way to add beautiful lighting effects to your jewelry. Tiny, inexpensive graphic screens are easy to embed in your projects. They aren't as bright and showy as LEDs like Neopixels, but they give you the ability to craft very customized light and color effects. You can animate them and even display images. And of course you can control them with an Arduino.


A really simple pattern adds a lot of visual interest to this millefiori piece. The pattern changes slowly over time to give the pendant a constantly transforming appearance. The light really helps draw the eye in dim lighting. If you don't want that, simply turn off the screen. You can create any pattern, animation or even image that you want and change them as slowy or quickly as you desire.

I'm going to use fused glass as an example again. I like to work with fused glass because it poses so many challenges and can have so many different forms. Each piece is unique and calls for a careful pairing of light.

And because fused glass is pretty all by itself, it's also challenging not to overpower the innate beauty of the material. Last week I posted about using a simple LCD light valve to add interest. That works well with semi-transparent glass.You can also use these tiny graphics screens to add patterns and lights to the same piece of glass.

However, I have struggled to find something that woks well with clear glass pieces. Nothing ever worked well in pieces that had areas of transparent glass. So I hauled out my LCD screen collection and tried some of them. I think this technique has some definite possibilities.






Both Adafruit and Sparkfun have a wide range of sizes and form factors for these types of screens. For jewelry, the "deck of cards" size is probably the biggest you would need for your largest statement pendant. I prefer the matchbook sized ones. I have played with the tiny thumbnail sized versions, but after getting diffused there isn't that much difference between them and a much cheaper LED.

Here are just a few of the screen sizes available. (That's a US quarter for scale)



There are a few things to remember when choosing a screen:

If you want to display actual images then you need to make sure the screen comes with an SD card slot so you can store the image or images.

Don't forget about the monochrome black-and-white versions if all you need is a gentle flicker. There are also versions where the entire screen can be any single color and you can draw in black.

The faster your microprocessor is the faster you can change the screen display. This might not be important to you. I can code and design animations well enough to get small chips to do what I need. But if you want to do fancy animations consider using a more powerful chip like the M0. With the Pi Zero, you could even play videos using the same screens.

You can use traditional tools like Photoshop or Illustrator to create your patterns and images. For people who don't code, this makes this technique much more accessible. You an also use code to draw over and manipulate images, so it offers the best of both worlds.








I will keep using the LEDs and NeoPixels for jewel based. big bling style projects. And the 3d printed jewelry actually needs all the brightness NeoPixels provide just to show through the plastic during daytime.

But the more I play with LCD graphic screens and glass the more possibilities I see. I've got several ideas, and the really neat thing about his technique is that you can leave the screen off to emphasize the beauty of the glass itself - or you can show any solid color, pattern, animation or image on the exact same piece.

In fact, the same piece of glass can be given a completely new "look" by changing what's on the display.

I'll post more images of my experiments soon, and I think I might need to start doing video just to better demonstrate the effects possible with this combo.


Also find me on: FACEBOOK 


Friday, December 29, 2017

Adding Some Dark Yin Yang to my Jewelry

I'm about to put some serious yin yang into a jewelry project. For years, I've put lights into jewelry, now it's time to put some darkness into the mix. Say what... ???

Well, not darkness exactly. But I can now block light on command thanks to new "light valves" from Adafruit. These light valves are thin glass sheets that can be darkened on command with a standard Arduino... think LCD screen or welding helmet, except the whole sheet darkens.

Why would I want to darken something, especially jewelry? I've put bright colorful LEDs onto every hat, scarf, shoe and bracelet I could find to make them sparkly. Why would I suddenly want to block light? It took me a while to find a problem for this solution, but I think I've found an interesting use case. What if you are working with objects that already have a beautiful quality of light?


Adding a dark background (upper half) completely changes to look of this piece of fused glass. The glass is so beautiful on its own that it doesn't need and LEDs in it. But changing how much light gets through the glass can affect the look of the entire piece. Imagine the background fluttering or pulsing between dark and light.  

A maker-friend creates lovely fused glass jewelry. The glass does amazing, wonderful things with light. It bends it and scatters it and refracts it. I've put lights behind these pieces of glass to great effect. But some of the pieces, especially the clear or nearly transparent pieces didn't work as well as I had hoped.

Translucent or heavily tinted glass diffuses the LEDs and creates a wonderful glow. But the nearly transparent glass always looked like I had just stuck some LEDs behind it, there was no magic or artistry. They looked cheap and tacky, a sad disservice to the beautiful glass work.

And the transparent glass really changes depending on the light that hits it, Some pieces look dark and nearly opaque in dim light, then turn crystalline and bright in sunlight. On a light background they look one way, on a dark background they look completely different.

What if I cold control the background, change it from dark to light, flicker it, fade it and pulse it? Well now I have a way to do that thanks to these new "light valves" from Adafruit. It's not as dramatic as an LED, but that subtlety is precisely the point. I've been developing ways to tone down LEDs for a long time, trying to make something a little less Vegas and more LBD evening gown-ish. Maybe the solution is to control the lighting effects from the opposite end of the scale instead. 

I just started this experiment, but I like some of the effects I'm getting so I'll post some of my successes and failures as I go akong (plus more about the light valves).

Stay tuned for updates.



As an Amazon Associate I earn from qualifying purchases.
Shop through our Amazon links to help support this site.

Also find me on:

Sunday, December 17, 2017

New Side Light NeoPixels make Complex Effects Easier

Adafruit just released a new "Side Light" style of NeoPixels with the LEDs perpendicular to the ribbon instead of parallel. This might seem like a simple thing to some folks. But for anyone who has tried to illuminate a circular or tubular object with a wash or raking style of light, this is amazing stuff.

Oh so simple, but so very helpful. Adafruit now has a 90 degree side light version of their Neopixels.


Until now, the LED strips always projected light away from the curved surface. The light went toward the viewer, not along the surface of the curve. So for the most part, we were limited to having bright strips of light shining at the viewer but not on the object. Now, it's going to be so much simpler to gently illuminate the surface of an object without blinding the viewer or requiring additional, often complicated reflectors to disperse the light.


We can finally throw a wash along a curved surface (LEDs at bottom) instead of projecting all the light out into space (top). 

In fact, these new strips negate years of my work (slight exaggeration) where I created reflectors and deflectors to control the light and bend it to go opposite the curve of the LED ribbon. And I'm not the only one, lots of makers have come up with their own solutions. After all, that's what makers do - we create solutions and have a lot of fun doing it. But I think we all knew there was a better way, we just never got around to creating it.

With cosplay and illuminated, glowing fashion becoming trendy and popular it was only a matter of time before someone came out with a manufactured solution. Adafruit popularized the addressable LED and made it simple enough to use that regular people could create with it. They named it NeoPixel and the world was never the same

Luckily for us, Adafruit is now working closely with Erin St Blaine, a professional costumer and performer. According to Lady Ada, the new Side Light style was initiated by St Blaine. While we amateurs tinkered and fussed to overcome the limitations of the basic NeoPixels, St Blaine spoke up for us and let the company know that she and other pros needed a simpler pre-made solution. And Adafruit responded. We amateurs also reap the benefits, yay us.

Right now, there are only a few configurations available in the side lit style, but if there is a good response I'm guessing Adafruit will expand the line. So come on folks, grab yourself a few of these strips and make something cool so we all get more options to choose from.

My project list for these new lights include:
  • Hat with the with a side-lit crown taper
  • Hat with a down light brim
  • Bracelet that throws patterned light on the arm
  • Skirt with a true down light
  • Cropped sweater with a real down light
Did you notice that all of these projects involve the human body as the subject of illumination? Well that's because the human body is basically a series of vertical tubes, Until now. we could wrap lights around the body so that the illumination projected AWAY from the surface of the body - basically creating a brightly outlined stick figure. But it was very difficult to illuminate the surfaces of the body without a lot of tricky workarounds. The always lights pointed away simply because that's how they were made.






I tried to work with illuminated clothes a few times with very limited and mixed success. After a lot of work and tears and carefully sewing in reflectors, the clothes still looked like they belonged on a Vegas stage. I had grand visions of creating decorative reflectors that looked like attractive and intentional embellishments, but only succeeded in making awkward boxes that looked like they were tacked on to hide the LEDs.

I love creating diffusers and reflectors for NeoPixels. ten hours of measuring, designing, printing and installing later and you've got yourself a nice project. But hey, now you can do a lot of the same thing just by using the appropriate strip of NeoPixels.

I, like so many others, defaulted back to EL-wire for light-up fashion. It's a lot less complicated, but much more limited than LEDs.

That's why I decided to stick to jewelry where it was easier to hide reflectors and such.  So I'm excited to re-try some of these failed fashion projects.

Other people seem really excited about making light-up signs and displays. It will certainly make that easier too. I'm also eager to try out mixing the two configurations to create a wall wash of one color with a center strip of another color.

Conclusion:
This is a face-palm simple upgrade that just required a large enough community plus a dedicated creator to speak-up to a responsive company. Now we all have a fantastic new set of lighting tools to use. I can't wait to see what everyone comes up with,


Also find me on: FACEBOOK 


Wednesday, November 15, 2017

Connecting App Inventor and Bluetooth Low Energy



Finally found a great tutorial on using Bluetooth Low Energy (BLE) with MIT's App Inventor for Android. The guide is well written with lots of details on the connection process. This isn't surprising since (I think) the author is one of the people who created the BLE extension for App Inventor.

Check out the tutorial at Hackster.io

I've been using App Inventor with Bluetooth classic for a while now and am comfortable shipping data to and from several versions of Bluetooth modules. But the new BLE extension for App Inventor looked like it was a lot more complex to use, so I had avoided it until now. I still don't understand what all the extension's functions do, but the tutorial allowed me to get connected and communicating in just a few minutes.




Got a basic interface created and it's talking to the Feather board well enough to control color, speed and direction

The tutorial uses Adafruit's BLE Feather. The Feather line of boards is one of my favorite IOT platforms. It's a small but powerful Arduino compatible board, and there is a wide range of add-on shields for it. There are shields for controlling motors, LEDs, graphic displays etc. Adafruit also has BLE breakouts for adding to other boards.

And they already have free apps for both Android and  iOS for communicating with the BLE version of the Feather board. The apps are powerful and easy to use, but I wanted to create some custom functionality.My first project is to create an interface to give me more control over the Feather NeoPixel shield. This will come as no surprise to most of you - I always start learning new platforms with NeoPixels.








I'm not ready to talk much about the project yet. It's functioning and stable, but it's awkward to use. It's also a lot more complex than most of my Android projects, so I'm forced to get back into the whole UI/UX thing for the first time in years. Giving all those cues to the user is taking up a lot of my coding time, maybe more than the basic functionality.

In fact, I will probably have to break down the (soon to be released) tutorial into multiple steps - connecting, tracking settings, packaging data and UI manipulation - for both the Android side and Arduino side of things.

I'm telling myself all this work is worth it because I will finally have a full stack of parts that will allow me to create both household and wearable items that can be controlled over a phone by a non-techie. Stay tuned...


Also find me on: FACEBOOK