Author Archives: Pearce Melcher

Enginursday: When NOT to use a Raspberry Pi

via SparkFun: Commerce Blog

This isn't a Pi bashing thread, I cannot stress that enough. It's a question I'm sure you've seen or potentially asked. We've answered the question in tech support and personal conversations, but it's never really been covered in our blog.

For those confused as to why this is an addressable topic, there's been a question as old as the Pi: Why should I buy 8-bit/32-bit boards when I can get a Raspberry Pi for $35? Why buy a microcontroller development board when you can have the power of a desktop computer for around the same price? And the answer is, when it's the right tool for the job. What you lose in features and performance, you're gaining in ease of use and a more application-appropriate processor.

How hardware intensive is this project?

The 40-pin connector on the Raspberry Pi is a solid option for working with hardware I/O, but if the majority of the project consists of talking to these devices, then the Pi is probably not needed. One could make the "better to have and not need" argument with respect to the extra performance and features, but with that comes extra work. Take a simple LED blinking - using something like the Arduino Uno can have your LED blinking in around five minutes. The Pi, on the other hand, requires importing libraries and a bit more code. Still not the end of the world, but definitely can be done easier with an Uno (even easier with a 555 timer).

However, the more a software "lift" is required, such as hosting data or hardware states on a server, the more a Pi makes sense. It's not a binary choice however, there are a number of products in between that hit benchmarks in terms of the balance of hardware and software accessibility.

Power requirements

The Pi is awesome when it comes to putting together sensor systems. The ability to use things like Jupyter Notebooks on the same processor you're reading data from is incredible! But what if this sensor system is remote? The power-hungry Pi means finding a power source that matches the remote nature can be difficult. If no local power is available, bulky batteries could be your only option.

SPLOT electronics in case

The SPLOT, a remote sensing project by Pete Marchetto (former SparkFun Hacker in Residence). A good example of a project where a Pi might fit, but without it, it works a lot better.

On the other end, a properly configured Teensy can provide a remote or edge sensor system that can run for months off of a smaller battery pack. It will require a separate device for processing data (and storing it, depending on the route). But in most cases the more remote your project, the more power efficient you want it to be. Thus the Pi often isn't going to be your first choice.

Your background

I don't like that I'm making this argument, but I think it's valid. It actually might point you back toward the Raspberry Pi.

If time is something you don't have a lot of, you might want to go with the platform (or programming language) you know best. I have plenty of EE friends who constantly complain about how much of a pain in the butt working with the Pi is. Alternatively, I have a lot of friends with a software background who love working with the Pi and its terminal. If the goal is quick and you're more versed in microcontrollers and programming in C, then it's probably better to stick with what you know. That being said, I'll always plug the enormous library of tutorials the internet has to offer for both the Pi and other platforms.

The right tool for the job

I often compare it to this situation: What would you deliver pizza in - a Honda Civic or a Ferrari? Of course you're choosing the Ferrari! It'd be so much fun! Imagine the look on people's faces when you roll up to their house with their large pepperoni pizza in a $200,000 car with the pizza delivery sign on top. It's everyone's choice! But when you factor in insurance, gas, and how it's not really practical for pizza delivery... suddenly the Civic seems more appealing (no, selling the Ferrari so you don't have to deliver pizzas isn't an option in this analogy).

The Pi has almost limitless uses, but so do the myriad other boards available, so don't always go to the performance-for-price metric when choosing the right board for your project.

As always, I love hearing the opinions of our customers. How do you feel about using other boards or the Pi. Is one a no-go due to a personal barrier?

comments | comment feed

Sourcing in the Time of COVID-19

via SparkFun: Commerce Blog

Today I'd love to talk about the problem at hand and how smaller outfits and makers can navigate it. Obviously the important part of all of this is staying safe and healthy, which is why I have no qualms about the issue we're facing. However, it's definitely created more work for us here at SparkFun, and has affected projects I'm working on outside of SparkFun as well.

Unless you're a larger company, you're likely in a position where getting the parts for your product or project has become more difficult. How difficult it is really depends on the parts and amounts, and the "why" depends on several different aspects. Let's talk about some that might come up.

Chain Reaction

You're not alone - manufacturing closed down across the board, so in some cases, your supplier's suppliers are running into issues. We actually had this happen with a power supply we buy that couldn't be built due to a part that was out of stock with long lead times. For something like a power supply, that's upwards of 10 components that each represent a potentially lengthy lead time. Sometimes it's not an issue, but when the part is unique or the product is a priority, then you need to get creative.

International Shipping Package in front of Door

New product evaluation packages have been shipping directly to my house as I've been working from home. I'm sure the number of international packages have the delivery folk wondering...

Shipping

Shipping is also a big issue. Backlogged orders, preferential shipping for more important shipments (medical supplies), and decreased shipping ability in general is making things difficult, especially at the international level. This has the potential to put you in a more difficult situation: do you wait on the parts, hoping they get to you in a timely manner, or do you risk buying from another source and hope it gets there quicker than the original order (at this point potentially buying double what you need)? The uncertainty behind shipping can be a huge headache.

Shift in Demand

I bet you didn't think back in January it would be this difficult to get a webcam. The pandemic has created large swings in demand and where it's focused. Manufacturers are scrambling to keep up with demand on devices like IR thermometers, which may not have been properly planned for. Apart from the reasons above, there are always going to be lead times, so companies can't simply crank production to 11. Even if you're not directly working on a similar product (or even using a similar sensor), it could still have an effect on your ability to get the parts you need.

Being a Small Fish in a Big Pond

When you're talking about electronics in general, it's easy to fall into this category. The bigger consumer electronics manufacturers are making sure the two months of manufacturing that was lost isn't going to affect their ability to deliver the numbers they need to hit their goals (think Apple being short on the next iPhone at launch). These companies will leverage their volume business to make sure their orders get priority in shipping and manufacturing. I'm even hearing of some companies buying out manufacturing capabilities for the next two years. This means your product becomes second class when it comes to what makes into the cargo ship or onto the production line.

Is this Permanent?

No, in fact most of these things often happen separately. Work strikes at ports, sudden shifts in demand, manufacturing closures, and other similar occurrences all happen here and there with similar effects. What makes this different is all the effects happening at once, so your once clean-cut purchasing and sourcing track now resembles more of a maze.

The important thing to remember is that this is temporary. Take the lessons from it, but the supply chain will one day return to normal. I think the most we'll see is a move away from just-in-time manufacturing in the short term.

How to Navigate This

Many of us at SparkFun are navigating something of this magnitude for the first time, like most of you. Hopefully it has had very little effect on you, as I would assume has been the case for most (remember, we're talking electronics here, not toilet paper). But with the volume of parts that move through SparkFun, we've found a few ways give you a better chance of getting what you need on time. It comes down to either using the lower-risk suppliers or looking to the less popular ones.

When I say lower risk, I'm referring to the risk mentioned in the first part of the article. Your best option is going to be parts that are already built (in-stock), require minimal logistics (domestic shipping), and can be ordered immediately. If you're thinking of the cheap-fast-good explanation, these will be the "fast." For us in the United States, it's going to be companies such as Mouser, Digikey or Newark.

These are all sites that ship from domestic locations with stock on hand, and your stock is reserved the second you place an order. While the last part may not seem important, it is in relation to the small fish/big pond stuff we talked about earlier. It's easy for us small guys to get put on the back burner to appease the bigger companies. This won't happen with a system like the ones on those sites. If you're a bigger buyer/company, manufacturer reps might be a go-to as well, but the key question to ask is whether there is stock on hand.

Sometimes the amount you need isn't readily available from these sites or companies - that's when you need to start looking to the smaller, less popular retailers. Everyone is going to search the names they know first, so dig a few Google search pages back.

Take the webcams mentioned above, for example: the first places sold out were probably Amazon, Newegg, B&H Photo and the big box stores. Think about the more targeted uses for a webcam - you'll find specality online stores for things like VOIP or Home Security. If there's stock to be had, these will likely be the places to find it.

Getting into electronics components becomes a little harder for these sites, but Octopart is your friend, and you might end up finding another great fall-back supplier (secondary suppliers should be a big lesson for everyone through this).

comments | comment feed

Enginursday: The Decade of Pi

via SparkFun: Commerce Blog

In a pre-cursor I doubt anyone reading this needs, Raspberry Pi is a foundation out of the UK that produces a set of ultra-inexpensive computers capable of running operating systems at previously-unheard-of pricing. The boards these days range in price from $10 to $60. They marked a resurgence in the phrase "single board computer," and have become a new benchmark in performance for a number of incredible uses.

For me, the Raspberry Pi had an interesting effect: my friends suddenly understood what I did. Working at SparkFun during the time right before Raspberry Pi was somewhat frustrating in terms of explaining it to friends and family. Arduino had reached full swing, IoT was this new, exciting concept, we were lowering the barrier to entry for hobbyist and prototypers alike... yet this was all incredibly difficult to explain to anyone outside of electronics. When people asked what SparkFun did, I would say we're the land of misfit toys. But the Raspberry Pi somehow put what SparkFun does into context. I was able to relate what I did to things people saw on the Internet (doesn't sound too monumental but it really makes thing click in folks' heads).

At first, SparkFun saw it as too good to be true. After all, it's a lot for $35, even eight years later. We definitely were a little late to the party in adopting the platform, but when we did bring the platform into the catalog, it was incredible to see all the uses. Of course the main goal was to get the power of a PC into as many students' hands as possible, a goal that was achieved and more. But it soon grew to a level I'm sure the foundation had no intention of reaching.

Cryptocurrency

One of the other major themes of tech in the 2010s was cryptocurrency. With needs like distributed ledgers and mining, the $35 Linux box that is the Raspberry Pi was definitely going to come into play. The Raspberry Pi made early crypto-mining (and some alt-coins) accessible for anyone who wanted to get into it. When you had your crytocurrency, where were you going to put it? A Raspberry Pi-based wallet! I even heard rumors of large-scale crypto-mining operations consisting of thousands of Raspberry Pis. Either way, it's clear both trends helped in the other's success.

Raspberry Pi Crypto-mining Cluster

Gaming

PC gaming is a $135 billion dollar a year industry. While not as powerful as its full sized counterparts, the Raspberry Pi became a big part of PC gaming with the ability to run popular games like Minecraft, and also acts as an emulator for retro gaming. Of the latter, the RetroPie project became the most popular way to play your favorite games from the early years of gaming. Because the Pi gives access to pins that allow you to control hardware peripherials, you can get very creative with your controllers. In addition to creating things like aviation cockpit simulators, this has benefits in the adaptive gaming world as well.

Research

One use of the Pi platform you probably have seen less fanfare about is its impact on the research world. Raspberry Pi has made an excellent platform for collecting and storing data. The same could also be said about most of the microcontroller or microprocessor-based boards, but Raspberry Pi gained extra traction, perhaps due to its focus on education or the power it can provide. One specific project that stands out is using Jupyter Notebook for Open/Citizen science in areas like earth and environmental sciences.

Dust Collector

This is where this article goes to purely the opinion of the author. But a fear (loose term) that I have about the most popular use for the Raspberry Pi has been collecting dust on a shelf. The Pi is/was groundbreaking and at a price most people could afford as an impulse buy. Everyone wanted a $35 computer when it came out, but not everyone knew what they wanted to do with it.

I have many conversations around the Pi that include statements like, "Yea, one day I want to do with my Pi." It seems to me that a large percentage have been banished to the shelf of Never Going To Be Used. It isn't the worst thing, but think of the incredible device you have sitting there with no use. So, should you find yourself with nothing to do this weekend (Pi Day is on Saturday), dust that Raspberry Pi off and do that project you've always be telling yourself you're going to do.

Raspberry Pi Zero compared to the Elliott 405 Supercomputer

So much more...

In eight years' time, the uses and projects around the Raspberry Pi have become almost endless. The power of the boards themselves and the community sourced documentation online has become nothing short of incredible. There's something for everyone there. If I'm being completely honest, I too fall under the previous section and have a Pi sitting around waiting for me to create a smart mirror. Perhaps this is the weekend for that.

I want to encourage everyone to add their favorite projects they've seen or done in the comments below. There's such a wide array of uses for the Raspberry Pi, how did you use it in the 2010s?

comments | comment feed

Enginursday: Hackaday Supercon Super Wrap-Up

via SparkFun: Commerce Blog

In the wake of Maker Faire going away, it's inevitable that other events will soon take the spotlight among electronics enthusiasts. I see the Hackaday Superconference stepping up in this regard. The three-day conference (loose term) hosts a number of workshops and talks on a large range of topics. I use the term conference loosely as it's more of a gathering of electronics enthusiasts and makers with structured talks - truly something for anyone who may identify in one of those groups. So while it might not cover the range of topics that Maker Faire once did, it definitely fills a good chunk of the void.

As mentioned, Superconference consists of three days of workshops, talks, and general discussions and convening. What really sets Supercon apart from other events and conferences is the large area dedicated to working on projects or badge hacking. This also draws small group discussions that I feel are lacking at most conferences I attend.

I've been lucky enough in that for the past two years, SparkFun has spent its sponsor ticket on me. While I'm technically there on behalf of SparkFun to get a pulse on what people are finding interesting and what's the cool or new, it makes for quite the enjoyable trip to Pasadena. And while I try to carve out after-hours time to do some sight-seeing in the area, I always find it difficult to peel my attention away from Supercon. It's too fun and interesting.

Day one goes down at the headquarters for the parent company of Hackaday: Supplyframe. Mostly it consists of a few early workshops and check ins, but this presents a pretty cool opportunity to talk with others about what they're working on or start exploring the conference badge.

For those out of the loop, interactive conference badges have become a feature of a lot different electronics-oriented conferences in the past few years. This year, the Hackaday Supercon badge was something to behold. Featuring a Lattice Semiconductor FPGA, a fairly large screen and enough features and work spent on it that it warrants a separate article. So when the badge itself is powerful enough to run Tetris, it makes sense that a good a chunk of the conference is dedicated to the badge. Areas with tables and soldering irons provide a place for those who want to really dig into the badge and create something unique with it (more to come on that).

Hackaday Supercon Conference Badge

The workshops present their own unique aspect to the conference. Now, to be fair, it could just be that the conferences I've been to focus more on the companies attending, but the more free-form nature of the workshops seems a lot more appealing to me. I have yet to be able to sign up for one, but the topics such as "USB Reverse Engineering" always catch my eye. The workshop sizes seem fairly limited, so it's easy to hear the instructor and asking questions is a much more attainable task (I've been in some 100+ attendee workshops that made for a bad time). It seems as though I'm not the only one who appreciates the format and topics as they fill up fast. So if you plan on attending, register for the workshops you want as early as possible.

Day two happens at the Los Angeles College of Music down the road a bit (but still in Pasadena). While Supplyframe has a cool, co-working-type space there, the big differentiator is a room big enough to hold larger talks and the main stage. In addition, a smaller second stage is set up in the co-work space (but still pretty big). The topics of the talks are all over the map - everything from reverse engineering older pieces of equipment to learning the hot new trends in electronics, and even covering some very unique projects you might have seen on the Hackaday blog. With the two stages, it presents a bit of need for planning to make sure you're going to see the talks you would like to see. To get between the two stages, you have to go outside the building to an alleyway and then back in. The alleyway is where all the tables for badge hacking and general project work (along with the workshops) reside. I think this is one of the most special parts of the conference.

Main Stage at Hackaday Supercon

This brings me to another cool part of the conference: they feed you. Above I talked about trying to carve out some time to see the sights of Pasadena and do some tourist stuff. This included hitting some of the incredible looking restaurants I would walk by everyday from the hotel to the conference, but the power of free food and good conversation proved too powerful. It presented a time when most attendees' attention would be free and you could easily meet new folks or those who you only know from the web. Most conferences I attend focus your attention to talks, workshops and vendors exhibiting. There's very little time or opportunity to talk with other attendees. The meals at Supercon provide a great opportunity for this. I would even argue it presents a better opportunity than the parties they would host every night.

Alley where badge hacking and workshops happen

The big event of day two is the presentation of the Hackaday Prize, which presents an incredible opportunity to the recipients every year. This year it went to a project called FieldKit, which is working toward an open source hardware and software platform for collecting and sharing field data in environmental sensing. As a small aside, more than one person told me how excited they were that FieldKit won with what they're doing for the citizen science and environmental sensing communities. The team won the grand prize of $125,000, which will hopefully provide a solid launchpad for taking the project to the next level.

Day three looks a lot like day two - more talks and workshops at the same location. The big difference is the badge-hacking prizes presented at the end. If the workshops and talks didn't convince you how talented the people who attend Supercon are, this will. It's amazing to see what folks are able to accomplish with these badges and their spare time during the conference (of which there is very little). Of the things I can remember, there were people running VGA monitors off the badge, someone had a PowerPoint presentation running on theirs (because all conferences need PowerPoint), and a bunch more incredible things a conference badge shouldn't be able to do (if you were there and remember others, please put them in the comments below, I'm seriously spacing on them). Best of all, the prizes were just as impromptu as the projects, with the moderators judging the winners by audience applause and handing them a rolled $100 bill.

Robotic, 3D printed cat

Supercon has what you're going to get from most conferences, but there's something different about it. It could be that I just go to the wrong conferences, or don't pay enough attention at them or that Supercon pertains heavily to my interests, but I think presents a different atmosphere. It's less of a conference and more of meet-up of internet friends (if you plan on attending, have your Twitter handle ready, everyone is going to ask for it). The conversations I have there will remain etched in my mind for years to come. The talent and brilliance of every person I encounter is incredible, along with their willingness to share such. If Supercon has been something on your list to attend, I highly recommend it.

Talk on the main stage

Best of all, Hackaday puts all their talks up on their YouTube channel. Check them out if you have a free moment. Additionally, feel free to share your thoughts on Supercon in the comments below. I'm always interested in other perspectives as I have only attended in a certain context.

comments | comment feed

Enginursday: Housing Fixtures

via SparkFun: Commerce Blog

Connected devices have always held one appealing characteristic to me; making life easier. In recent months, I've added a number of connected devices to my house, most of them home automation related. while most are minor conveniences, one, in particular, has solved a huge problem for me, but in doing so has presented a new problem. In this Enginursday, electronics and 3d printing help me cover my outdoor connected outlet from precipitation.

I both hate and love living in a Townhouse. On the one end, upkeep is minimal, on the other end, It's a jungle of red tape when I want to change/fix something on the exterior of the house. A poor drainage design has lead to my window well filling with water during heavy rainstorms. It's not something I can readily fix, yet it can't go unattended as it will leak into my basement if it gets too high. My solution has been a pump made for situations like this, fashioned into a makeshift sump pump. The pump has a float switch which, once powered on, will only run the pump when liquid is above the 1-inch mark. While it's very capable and solves the problem, it presents a new problem. The pump's manufacturer recommends not leaving the pump powered while idle for longer periods of time (weeks). To keep the one thing keeping my basement dry happy, I only plug it in on days where I think it's going to rain. Here in Colorado, that can be highly unpredictable. Some days I leave it unplugged, then a rainstorm will spring up in the afternoon. I'll have to drive home from work, plug the pump in, then drive back. After tolerating this possibility for a little too long, I decided a smart switch would be a good addition. The ability to control the pump remotely has proved to be an excellent way to spend $50.

The smart plug from Kasa (TP-LINK) plugs into my existing outdoor outlet, but has a pretty novel way keeping the plug part dry. In addition to rubber covers over the outlet port, it hangs off the outside outlet similar to a drooping flower. This keeps the outlets facing down and away from precipitation. Despite this, I still fear a situation where water might get in and cause the plug to act erratically. There's currently a small piece of acrylic covering the house-mounted outlet, but it doesn't cover the smart outlet as well. So I figure if I'm 3D printing a better cover, why not make it the best it could be; add some self-sufficient lighting as well? (Congratulations, if you've gotten this far, you've reached the bottom of the rabbit hole of this dilemma.)

Current Outlet Cover

While it works for just the outlet, the current cover falls a bit short of covering the new smart plugs.

So to fully define the project. I want a device that will direct precipitation away from the house and outlets while providing a lit view of the outlets. This system should be self-powered (I'd rather not lose an outlet to powering this) and illuminate the outlets only when necessary. This breaks this project into two smaller projects; an electronic setup that will work well for most solar-powered lighting projects and the enclosure for such. I'll use an Arduino Pro Mini and the Sunny Buddy as well as a mini photocell and 3.5W solar panel for the electronics, but there are many ways that you can configure this project.

3D Printing

Ah, our old friend the 3D printer will come in handy here. The design is fairly simple, we want a roof-like structure to go over the outlet that will direct water away from the side of the house and the outlet. It'll need somewhere to store the MPPT Tracker for the Solar Panel and the Pro Mini controlling the LEDs and reading the ambient light sensor. The "roof" will have a way of keeping the solar panel securely in place. Finally, holes on the underside to mount the LEDs and a hole on the side for the photocell to properly detect the ambient light. This is definitely a structure that can be done with the laser cutter, but I feel this 3D printed part will make for a cleaner solution. I'll provide this direction for the structure, but stop short of providing the files for you. The big reason is I want to utilize the screw holes that are already in my siding, so not only does it not look right, but it probably won't work for your own application. If you really want the file, send me a private message.

The final design looks like this:

Redered View of Outlet Hood

There's 1 hole on the "roof" part which is a port for the solar panel's cable.

Rear View of the Outlet Hood

The shelf inside the structure will hold all the electronics with the exception of the solar panel.

It should keep everything dry and happy while providing a clean mounting point for the solar panel. Again, I'm not happy about the mounting points of the structure, but I'd be less happy with more holes in the siding on my house.

Electronics

The electronics are fairly simple; A Pro Mini, Sunny Buddy, 3.5W Solar Panel, Mini Photocell, 3 Super Bright White LEDs (5mm), and 3.3V Lipo Battery. In addition, you'll want wires and connectors for hooking everything up. You'll notice most of my projects use connectors and more temporary wiring solutions. When you have a clean enclosure for a project, you can sacrifice some of the cleanliness of the wiring in the interest of making parts more reusable/swappable. Finally, don't be lazy like me, use current limiting resistors on your LEDs to keep them happy and healthy. Also, a 4.7kΩ Resistor is needed for the voltage divider circuit for the photocell.

The LEDs will each be hooked up to their own digital pins on the Arduino (though you could do one I/O pin, this offers a bit more configurability). The Mini Photocell connects to one of the analog pins. But before that happens, I need to figure out some base readings for the light in the area this will be in. Using the hookup guide for the Mini Photocell I'm able to get proper readings for the day, shade, dusk, and night. I really only want an on/off configuration, but with each LED having their own pin, the potential for different lighting for different situations (if you use PWM pins, you can add dimming to the configurability). With the readings I want for day/night, I can set the threshold for our if-then statement in our code below:

//Illuminated Outdoor Outlet Cover. Most of this code was derived from         Hookup Guides on SparkFun.com for the various parts used.

const float VCC = 3.22; //Measured Voltage of Pro Mini Pin.
const float rVal = 4650; //Measured Resistance of 4.7 Ohm resistor.

const float DARK_THRESHOLD = 10000.0; //Threshold for light and dark, the one from the hookup guide for the Photocell works well.

void setup() {
  // Set pins to control 3 White LEDS individually (set both power and             ground pins as an output):
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);

  //Set the Pin Connected to the Photocell Voltage Divider output as an          input.
  pinMode(A0, INPUT);
 }

 void loop() {

  digitalWrite(3, LOW);
  digitalWrite(5, LOW);
  digitalWrite(7, LOW);

  //Read Photocell and Calculate

  int sensorVal = analogRead(A0); //Get the sensor reading.
  if (sensorVal > 0) {
    float photoV = sensorVal * VCC / 1023.0;
    float photoR = rVal * (VCC / photoV - 1.0); // Calculate the resistance at current reading.

    if (photoR >= DARK_THRESHOLD) {
      digitalWrite(2, HIGH);
      digitalWrite(4, HIGH);
      digitalWrite(6, HIGH);
    }
    else
      digitalWrite(2, LOW);
      digitalWrite(4, LOW);
      digitalWrite(6, LOW);
  } //If the resistance is above the threshold turn on the LEDs
  delay(60000); //Check reading every 60 seconds.
 }

Now the Photocell gets hooked up to the Pro Mini. The 4.7kΩ Resistor mentioned above gets hooked to the ground wiring as shown in the Hookup Guide here.

The LEDs and Photocell in Place in the Structure

As you can see, it's a tight fit in there, but everything fits fine (just not the most visually appealing

Once the code is loaded and ready to go on the Pro Mini and the Photocell and LEDs are hooked up, we can turn our attention to the Sunny Buddy. For this use, it's very plug and play. Before plugging things in, it's important to set the input current limit. Our Sunny Buddy Hookup Guide has a good section on how to do it and why. Once that's complete setup consists of plugging in the solar panel and powering the Pro Mini through the "Load" pins. For what I'm looking for out of the project, it is complete at this point. However, there's much more that can be done with a setup like this.

The Real World Test

Outlet Hood being held in place.

I should mention the filament color is because someone forgot to order more Chroma Strand Black ABS for the department (it was me, I forgot to order more).

Of course, I always think everything is going to be a breeze and go perfectly, so I never leave room for error. If it isn't clear yet, this is a section on my mistakes (lessons to take into account for you the reader). The finished product looks great. Well, 2/3rds of the finished product looks great. I had some issued with some warping on the print which is easily fixable, but I didn't have the time to do so. I'll update photos later with the final print. I also broke one of the crucial rules of electronics projects; test before you glue. For this reason, only 2/3rds of the LEDs function correctly. But to refer back to my choice to use connectors rather than soldering wires, this will prove to be a small issue in the long run.

In something I refuse to take the blame for, I was unable to actually mount the structure as well. What I thought was the screws holding the current precipitation blocker in place (see the first photo) only holds the acrylic to the woodblock underneath. There are two screws on the underside of the wood that holds it to the side of the house. This will take a bit of redesign in the CAD program, but again is not the end of the world. Still, the lesson here is make sure you fully understand how you're mounting a part you're designing before doing so.

Beyond that, everything else functions as expected. I will be adding weatherstripping to the side of the structure that touches the siding.

comments | comment feed

Enginursday: DIY Videoconferencing Wall Project

via SparkFun: Commerce Blog

Earlier this month, I had the chance to attend the Google I/O extended event at the Boulder campus. My initial plan was to hear about the latest and greatest, and enjoy what I assume would be an amazing food selection (it was). What I didn't expect was how drawn in I was by the work being done with Google Home. Most of the functionality of these products is incredibly close to high-end home automation systems from five years ago, with incredible advances in AI allowing easier ways to interact with the systems (think of the voice recognition and interaction available through Google Assistant and the Home Hubs).

I'm a pretty big Apple fan, so the fact Google hardware was getting me excited was a pretty big deal. Thanks to the sale that day, I went home and ordered a Home Mini and Nest Hub from Google (technically Nest now). After playing around with them, getting comfortable with the always-listening mics, and playing around with some custom commands, I was ready to take this to my realm: by putting it on a Raspberry Pi. It never crossed my mind that Google didn't have a version of Home Hub that worked on the Pi. Chromium OS and browser works on the Pi, Duo works on the Pi, even their AIY and Vision Kits are based off the Raspberry Pi, so of course I figured I could get the Home Hub software onto a Pi. Sadly, I was wrong. Among the many great things Google has put on the Pi, Home Hub wasn't one of them.

This was a bit crushing. I had grand plans of using a Pico Projector and turning a whole wall of my bedroom into a display for a Nest Home Hub, using an old receiver and floor speakers for audio (yes, a bit overkill, but it was part of the theme of the project). In addition, it was a major setback on writing this piece (After six years of Enginursday, I'm running low on topics and projects).

So with my mind still on projecting video on walls, I turned my attention to one of my favorite projects I've never been able to accomplish: the wall phones from the movie Spaceballs. If you're unfamiliar with the movie, it's a comedic play on the original Star Wars movies. The bad guys have a large spaceship that features video walls you can call people on. The best part about the walls (and a great bit in the movie) is that there isn't a mechanism to answer the call, so the call automatically goes through, leading to great lines like, "I told you to never call me on this wall!"

Spaceballs! The Thermostat

The decor in Spaceball I is "on brand."

Those familiar with the SparkFun building will know that our conference rooms are named after fictitious spacecraft, one of which being the spaceship from Spaceballs, Spaceball I. Ever since the room was named, I've wanted to recreate one of the video-call walls. But there have been two large snags: video conferencing on the Pi and auto-answer. Seeing as a conference room isn't the greatest spot for a device that can tune-in whenever, auto-answer wouldn't be something I'd need to overcome, but the video conferencing options up until recently had been a bit scant.

As of the last few years, there has been a surge in projects that have made video calls or conferencing more feasible. A lot of work has gone into the likes of UV4L and Jitsi Meet, and should definitely be looked into should you want to do video calls on the Pi. But for this project, Google Hangouts seemed to be the best fit. It would allow the users who could call the wall to be limited within our organization, and would allow for a more permanent, linkable solution.

The Project

The project itself is fairly simple and about as plug-and-play as it gets. In the past, set up of the Pi would have required some command line work, and this project still will a little bit, but the Rasbian image has come so incredibly far that most of these tasks either happen automatically or can be set from the desktop or browser.

I used the following parts for this project:

Once the Rasbian Image is on the MicroSD card, the majority of the setup is getting the Pi hooked up and booted. As a good rule of thumb when working with the Pi, everything should be connected when powering on so the peripherals are recognized by the system. In the past, you would want to update the Pi in the command line with sudo apt-get update and sudo apt-get dist-upgrade, but this seems to happen on boot now. In addition, a prompt comes up to change the password for the device; it's important for most uses of the Pi and this is no exception.

Once the Pi is up and running, Hangouts needs to be set up within the Chromium browser. Obviously a Google account is needed for this, but it's pretty straightforward on Chromium, like other browsers. I used my own Google account for this, but you could also create one for the wall specifically, so it's actually the wall you're calling. Once Hangouts is all set to go, you may have to change the mic and speaker sources if they're not your default. You can do this in the settings in the video call the first time, which should then default to these settings in subsequent calls. Finally once everything is set, you can make the browser window full screen by hitting F11. There's a command to make this happen with Chromium on startup as well. There's even a way to put it into kiosk mode. However, since I'm not the equipment administrator for said conference room, I'm going to make it as easy as possible to disable for now.

Video calling my dog from the conference room.

Imagine the projector being much more pico..."

Obviously this wasn't the project I wanted to showcase, and it kind of amounted to just a Hangout machine, but I felt it was a good start in the direction of video conferencing, which has a ton more useful applications than replicating movie gags. I do hope to get this project into a much more finished form as a staple of the Spaceball I conference room, but I think auto answer will be forever off the table. If you do want to replicate this with auto answer, I was going to take the direction this gentleman took with his video doorbell project using Python commands (PyUserInput) to replicate mouse movements and clicks.

comments | comment feed