Want To Learn Ethernet? Write Your Own Darn AVR Bootloader!

There’s a school of thought that says that to fully understand something, you need to build it yourself. OK, we’re not sure it’s really a school of thought, but that describes a heck of a lot of projects around these parts.

[Tim] aka [mitxela] wrote kiloboot partly because he wanted an Ethernet-capable Trivial File Transfer Protocol (TFTP) bootloader for an ATMega-powered project, and partly because he wanted to understand the Internet. See, if you’re writing a bootloader, you’ve got a limited amount of space and no device drivers or libraries of any kind to fall back on, so you’re going to learn your topic of choice the hard way.

[Tim]’s writeup of the odyssey of cramming so much into 1,000 bytes of code is fantastic. While explaining the Internet takes significantly more space than the Ethernet-capable bootloader itself, we’d wager that you’ll enjoy the compressed overview of UDP, IP, TFTP, and AVR bootloader wizardry as much as we did. And yes, at the end of the day, you’ve also got an Internet-flashable Arduino, which is just what the doctor ordered if you’re building a simple wired IoT device and you get tired of running down to the basement to upload new firmware.

Oh, and in case you hadn’t noticed, cramming an Ethernet bootloader into 1 kB is amazing.

Speaking of bootloaders, if you’re building an I2C slave device out of an ATtiny85¸ you’ll want to check out this bootloader that runs on the tiny chip.

A Surprisingly Practical Numitron Watch

Regular Hackaday readers are surely familiar with Nixie tubes: the fantastically retro cold cathode display devices that hackers have worked into all manner of devices (especially timepieces) to give them an infusion of glowing faux nostalgia. But unfortunately, Nixie displays are fairly fragile and can be tricky to drive due to their high voltage requirements. For those who might want to work with something more forgiving, a possible alternative is the Numitron that uses incandescent filaments for each segment.

There hasn’t been a lot of prior-art that utilizes Numitrons, but that might be changing, given how fantastic this wristwatch created by [Dycus] looks. With a multi-day battery life, daylight readability, and relatively straightforward construction, the Filawatch is likely to end up being something of a reference design for future Numitron watches.

[Dycus] has gone through three revisions of the Filawatch so far, with probably at least one more on the way. The current version is powered by a ATmega328 microcontroller with dual 16-bit LED drivers to control the filaments in the KW-104S Numitron display modules. He’s also included an accelerometer to determine when the wearer is looking at the display, and even a light sensor to control the brightness of the display depending on the ambient light level.

If there’s a downside to Numitron displays, it’s their monstrous energy consumption. Just like in the incandescent light bulbs most of us have been ditching for LED, it takes a lot of juice to get that filament glowing. [Dycus] reports the display draws as much as 350 mA while on, but by lighting it up for only five seconds at a time it can be checked around 150 times before the watch needs to be recharged.

Its been a few years since we’ve seen a Numitron watch, and it’s interesting to see how the state of the art has advanced.

[via /r/electronics]

Monitoring Air Quality, One Sleepy Meeting At A Time

To those of us in the corporate world, the conference room is where hope goes to die. Crammed into a space too small for the number of invitees, the room soon glows with radiated body heat and the aromas of humans as the time from their last shower gradually increases. To say it’s not a recipe for productivity is an understatement at best.

Having suffered through too many of these soporific situations, [Charles Ouweland] took matters into his own hands and built this portable air quality meter for meetings. With an OLED display on top and sensors inside, it displays not only the temperature, humidity, and barometric pressure, but also the CO₂ concentration and the levels of volatile organic compounds (VOC), noxious substances sometimes off-gassed from building materials, furniture upholstery, and coworkers alike.

The monitor quantifies his meeting misery, which we’re sure wins him points with his colleagues. For our part, though, what we find interesting is his design process. He started where many of us would, with an Arduino Uno. The sensor modules, a CCS811 for VOC and CO₂ as well as a BME280 for temperature, humidity, and pressure, both needed 3.3 volts, so he added a regulator to knock the Arduino’s 5-volt supply into range and some MOSFETs for level matching. Things were getting bulky, though, so he set about reducing the component count. The Uno went by stripping out its already programmed MCU. That killed the need for the regulator and MOSFETs, since everything would be happy with 3.3 volts. A few more rounds of optimization led to the final product, compact enough to run on a pair of AA batteries.

This is a great lesson in going from prototype to product. And it’s so compact, it could even ride on top of a Roomba to map the conference room’s floor-level air quality.

Review: FG-100 DDS Function Generator

I don’t have a signal generator, or more specifically I don’t have a low frequency signal generator or a function generator. Recently this fact collided with my innocent pleasure in buying cheap stuff of sometimes questionable quality. A quick search of your favourite e-commerce site and vendor of voice-controlled internet appliances turned up an FG-100 low frequency 1Hz to 500kHz DDS function generator for only £15 ($21), what was not to like? I was sold, so placed my order and eagerly awaited the instrument’s arrival.

The missing function generator is a gap in the array of electronic test instruments on my bench, and it’s one that maybe isn’t as common a device as it once might have been. My RF needs are served by a venerable Advance signal generator from the 1960s, a lucky find years ago in the back room of Stewart of Reading, but at the bottom end of the spectrum my capabilities are meagre. So why do I need another bench tool?

It’s worth explaining what these devices are, and what their capabilities should be. In simple terms they create a variety of waveforms at a frequency and amplitude defined by their user. In general something described as a signal generator will only produce one waveform such as a sine or a square wave, while a function generator will produce a variety such as sine, square, and sawtooth waves. More accomplished function generators will also allow the production of arbitrary waveforms defined by the user. It is important that these instruments have some level of calibration both in terms of their frequency and the amplitude of their output. It is normal for the output to range from a small fraction of a volt to several volts. How would the FG-100 meet these requirements? Onward to my review of this curiously inexpensive offering.

Continue reading “Review: FG-100 DDS Function Generator”

The Lichtspiel: Not A Simple Child’s Toy.

For his niece’s second birthday, [Stefan] wondered what a toddler would enjoy the most? As it turns out, a box packed with lights, dials and other gadgets to engage and entertain.

For little Alma’s enjoyment, three potentionmeters control a central LED, a row of buttons toggle a paired row of more lights, a rotary encoder to scroll the light pattern of said row left and right, and some sockets to plug a cable into for further lighting effects. Quite a lot to handle, so [Stefan] whipped up a prototype using an Arduino — although he went with an ATmega 328 for the final project — building each part of the project on separate boards and connected with ribbon cables to make any future modifications easier.

[Stefan] attempted to integrate a battery — keeping the Lichtspiel untethered for ease of use — and including a standby feature to preserve battery life. A power bank seemed like a good option to meet the LED’s needed 5V, but whenever the Lichtspiel switched to standby, the power bank would shut off entirely — necessitating the removal of the front plate to disconnect and reconnect the battery every time. The simpler solution was to scrap the idea entirely and use the charging port as a power port instead — much to the delight of his niece who apparently loves plugging it in.

Continue reading “The Lichtspiel: Not A Simple Child’s Toy.”

LiquidWatch Is Dripping With Style

Some of the entries for the 2017 Coin Cell Challenge have already redefined what most would have considered possible just a month ago. From starting cars to welding metal, coin cells are being pushed way outside of their comfort zone with some very clever engineering. But not every entry has to drag a coin cell kicking and screaming into a task it was never intended for; some are hoping to make their mark on the Challenge with elegance rather than brute strength.

A perfect example is the LiquidWatch by [CF]. There’s no fancy high voltage circuitry here, no wireless telemetry. For this entry, a coin cell is simply doing what it’s arguably best known for: powering a wrist watch. But it’s doing it with style.

The LiquidWatch is powered by an Arduino-compatible Atmega328 and uses two concentric rings of LEDs to display the time. Minutes and seconds are represented by the outer ring of 60 LEDs, and the 36 LEDs of the inner ring show hours. The hours ring might sound counter-intuitive with 36 positions, but the idea is to think of the ring as the hour hand of an analog watch rather than a direct representation of the hour. Having 36 LEDs for the hour allows for finer graduation than simply having one LED for each hour of the day. Plus it looks cool, so there’s that.

Square and round versions of the LiquidWatch’s are in development, with some nice production images of [CF] laser cutting the square version out of some apple wood. The wooden case and leather band give the LiquidWatch a very organic vibe which contrasts nicely with the high-tech look of the exposed PCB display. Even if you are one of the legion that are no longer inclined to wear a timepiece on their wrist, you’ve got to admit this one is pretty slick.

Whether you’re looking to break new ground or simply refine a classic, there’s still plenty of time to enter your project in the 2017 Coin Cell Challenge.

Hackaday Prize Entry: MappyDot, A Micro Smart LiDAR Sensor

[Blecky]’s entry to the Hackaday Prize is MappyDot, a tiny board less than a square inch in size that holds a VL53L0X time-of-flight distance sensor and can measure distances of up to 2 meters.

MappyDot is more than just a breakout board; the ATMega328PB microcontroller on each PCB provides filtering, an easy to use  I2C interface, and automatically handles up to 112 boards connected in a bus. The idea is that one or a few MappyDots can be used by themselves, but managing a large number is just as easy. By dotting a device with multiple MappyDots pointing in different directions, a device could combine the readings to gain a LiDAR-like understanding of its physical environment. Its big numbers of MappyDots [Blecky] is going for, too: he just received a few panels of bare PCBs that he’ll soon be laboriously populating. The good news is, there aren’t that many components on each board.

It’s great to see open sourced projects and tools in which it is clear some thought has gone into making them flexible and easy to use. This means they are easier to incorporate into other work and helps make them a great contestant for the Hackaday Prize.