New Technologies and Hardware Tools for May 2017

Jared Wolff · 2017.5.13 · 10 Minute Read · engineering · iot

Over my past few posts there has been a common theme of “using things that already exist.” This stems from a mindset of building things from scratch whether or not they’re actually warranted or needed.

For instance, you may work with a fussy firmware engineer who finds the provided vendor code just deplorable to use. That person then takes extra time to go about writing their own platform or system that replaces the vendor code. But what has she done? Taken a much longer route to get to the same end: building a usable product for the end customer.

Sometimes this engineering is warranted due to the constraints of the product. Sometimes it’s for giggles but other times it’s completely unnecessary.

Since my early days in technology up until recently, I didn’t quite believe in spending money in exchange for value. I really didn’t even know what it meant. How do I pay for “value”?

Value

You pay for value when you find someone who has gone though all the same things you have and you want to pick their brain on a consistent basis as you work though the trials and tribulations. This “value” will not only save you time from making the same mistakes but also save you some serious cash down the road.

For instance, a startup is trying to figure out how to manufacturer their product. They reach out to the community to find answers. They find an individual and pick their brains and realize they have found someone that could help them get from A to Z. They grant that person an option to buy their stock in exchange for their time and maybe even an hourly wage if they require a significant amount of time.

I digress, value is the secret sauce that already exists to get you further down the road without hitting potholes. It’s the treasure map that gets you from where you are to the magical X as quick as possible. It’s knowing the answer to the bridge troll’s riddles so you can get on with your journey.

**Catch my drift?**

With the inspiration of saving time and getting products to market in interesting and scrappy ways, I discuss some of the most interesting upcoming technologies for a connected Internet of Things and why they’re important.

Things to Watch Out For

I sometimes get giddy when I see a new technology or something that is going to improve the lives of engineers and non-technical people alike. Here are a few things that i’ve been looking into lately.

Get Help

I think one of the coolest things you can do in the modern age is to hire a completely distributed team of people to help bring your project to life. On top of that, they don’t even need to be an employee!

In my previous article, How to Develop to Your Product Prototype, my designer was actually a freelancer who had excellent skills and knowledge about the various facets of product design. I chose him based on his experience and his portfolio. Not based on where he went to school or how long he had been in the industry. Good work, comes from people of all shapes, sizes and colors.

When you’re just starting up this may save you thousands of dollars as long as you have the right people to drive the team forward. If you’re reading this and you’re saying “I have no idea what constitutes good engineering and design work and what doesn’t” then this is a good indication to find someone who can!

Prototype Boards for Reasonable Prices

US based company, CircuitHub, is enabling companies and hackers alike to get their boards assembled conveniently and for a decent price. I first had heard about CircuitHub from a long time friend of mine which used CircuitHub for a good chunk of their prototype and pre-production builds.

The most interesting aspect here is that they’re streamlining the process of getting boards built and assembled reducing the cost of prototyping significantly. Soon enough, I envision young girls and guys with no formal electrical engineering training building and manufacturing products though services like this. Honestly, without these types of innovations, it’s just too costly to do it the traditional way. I wouldn’t be surprised within the next 10 years some young unknown person builds an amazing hardware platform with nothing but the change in their pocket and the keyboard underneath their fingers.

(As an aside, the traditional way is to: raise millions of dollars, buy expensive tooling, have a factory set up a production line, etc. More and more companies are thinking about keeping their manufacturing in house especially when the products are dead simple!)

There are also other very happy customers as well. Take a look at these more recent tweets:

![Twitter Circuithub](images/twitter_circuithub.jpg)
![Twitter Circuithub 2](images/twitter_circuithub_2.jpg)

You can“t go wrong with a service that“s accessible and that makes your life easier!

Cellular Enabled Devices

Nordic first announced their platform which is slated to come out sometime this year with a much more solid adoption sometime around 2018-19. I’m chomping at the bit to get a completely certified module because that would be a game changer!

Speaking of modules, a company called U-Blox sells low power cellular modules that are reasonably priced but not the best for cost sensitive designs. On the plus side, they do have one module that is completely certified and post certified with AT&T. More info his here. There is another company called Telit which also has post-certified modules which can then be integrated into final products.

**Why does certification and post-certification matter?**

If you’re trying to bring a product to market, the most irritating thing that can happen is you find yourself waiting for FCC, CE or the results of other related tests. These certifications usually are the last barriers which need to be breached in order to sell connected products to the general market as a whole.

There are other products like the Particle Electron, have already been certified forward and back only leaving you to build the application. This is a great option for limited teams. The only thing that irks me is the fact that you don’t have control over your very valuable data. Plus, they have a monthly subscription which adds to your overhead.

Lasers

Range finding has been something that’s been used in robots for years. Designs often use either infrared technology or ultrasonic. There’s a (relatively) new kid on the block and that’s laser range finding.

Tiny integrated circuits can now have tiny lasers built into them which can do very fast time of flight calculations to determine how far you are away. Chips like ST’s VL53L0X is a great example of this technology in action. Adafruit even has a breakout board which makes testing this technology even faster!

I consider it another tool in the toolbox when it comes to anything IoT.

Programmers

I’ve been using the Black Magic Probe for the past few years thanks to a recommendation from a previous colleague (Thanks Liam). It’s a great alternative to the otherwise extremely cost prohibitive alternative of a Segger programmer.

Why does this matter?

The Black Magic Probe is an open source platform that leverages powerful open source development tools. Anyone can roll up and add support for other processors or include functionality that is only pertinent to their design. Not only is there more freedom, but the cost is 10x less ($60USD versus $600+) than that of an industrial grade option. There are knock-offs of the industrial options but that gets into hairy legal territory which is something I’d like to ethically avoid!

Right now they support a wide range of Cortex-M based targets. Here’s their infographic for the details:

Blackmagic Capabilities

I’ve particularly used it on the Nordic NRF51 family of chips. It was perfect for programming and debugging while developing the firmware. If you’re looking for a programmer and you’re using one of these chips look no further.

Oh the Tangled Webs We Weave

It’s a growing responsibility of hardware companies to understand not only the nitty gritty of product development but how to get the data generated by their devices back to the cloud. Data usually implies a service which then implies reoccurring revenue. Who wouldn’t want that?

Microservices

If you haven’t heard already the new technology everyone is talking about in the web world are “microservices'. Microservices were created using the inspiration from the frustrations of web engineers around the world. The biggest problem?

**Scaling**

Before this type of service existed, a web engineer would have to spin up a server using a service like Heroku or hosting it on a VPS (on a site such as Digital Ocean ). They would start off small and then, as demand increased, managed the capabilities of the server and scaled according to what was needed. For web engineers, there’s always this question of ‘When should I pony up and start scaling?' or ‘What if things brick overnight while i’m sleeping!?' Microservices are the answers to this concern.

Microservices

Let’s start with a quick example. I write a javascript function which is then hosted on AWS Lambda . That function only gets invoked when someone clicks a button on my homepage to submit an email address. I would get charged pennies on the dollar for that processing versus the traditional “always on“ nature of a VPS hosted solution.

As I mentioned earlier, it also enables you to scale without having to worry about increasing resources on your project. AWS Lambda spins up an instance of your function separately every time it’s invoked. Leaving you to worry about how efficiently things are implemented and the functionality of your code rather than worrying about how much resources you have when things start to break. It’s “magically“ done for you.

Another IoT related advantage is that functions, by nature, are separated. Thus, you can polish one function, like a call from an IoT device sending an update, from the call to the same database looking for all the devices data history. This compartmentalizes functions from each other and reduces risk of causing an error in already existing code.

It’s exciting to see this technology take off and the potential uses for it. This, by no means, is meant to replace traditional web services but it’s another option in the tool chests of engineers looking to scale without having to worry about the process of doing so. The easiest way to get started is to go check out Serverless. Serverless is a framework that abstracts all the headaches that you’d normally have to go through to implement an AWS Lambda function. You can get started with Serverless here .

Database

Just earlier this week, I took a look at Fauna DB. The interesting concept about Fauna versus every other database services is that they charge you based on the use and how many entries you have rather than the time that you database is on (no matter what the load is). Following the Serverless model, there is absolutely no maintenance besides entering your credit card information for payment!

It’ll be interesting to use a service like this on an IoT project due to the relative infrequency of sensor data. For instance, you may have a device ping every hour as a keep-alive, plus send any data as the device is being used.

Let’s say a round 30 requests a day per unit. If you have 1000 units in the wild, that’s 30,000 requests which calculates to 30¢ a day in charges. (The pricing I used for Fauna is here.) That’s about $9 a month. The alternatives start at $18 a month just to get started.

With the introduction of Serverless, services have slowly moved toward this type of model because it automatically scales with use without you, the design engineer, having to worry about adding my dymos, daemons, or whatever you’d like to call it.

Conclusion

There is a constant stream of new products and services that come out every month. There are also timeless technologies that can be be used despite their creation years ago. My goal is to keep sharing them as I discover and exploit their usefulness.

Until the next time, explore and let me know how it goes! 😎👍

Last Modified: 2020.3.10

Subscribe here!

You may also like

How to Connect the nRF9160 Feather to Mosquitto

One thing that’s always tripped me up as an IoT developer is figuring the best way to transmit data. There are many different kinds of radios and mediums. On top of that, there are…

The nRF9160 Feather Launch

I was a complete failure. My prototype wasn’t working. I spent at least an hour trying to rework a frustratingly large LTE module on an impossibly small circuit board. It wasn’t…

The nRF9160 Feather with Bluetooth

One of the cool things about Zephyr is its modularity. It’s also one of things that makes development on the platform difficult. This is especially true if you’re not use to the…