Look! Over there! A pile of bad news!

I’ll get straight to the point here: There’s no silver lining to this post. There’s a lot of bad, and a lot of scrambling to make the best of a very bad situation.

To start it all off: The screens on the V3 badges did not work. More accurately, they do work but they have a different driver chip in them. It is a problem that is fixable via code, but I am not a programmer in anything more than the most basic things. I can take existing libraries and combine them, but interfacing with hardware on the level of a display chip is well beyond me. For completeness’ sake, the driver is an HX8347D – In SPI mode/pinout. I have had a hard time finding any libraries for the HX8347D in such a configuration, and then there’s another hurdle – None of the libraries I’ve found work on the ESP8266. Fixing this issue in, at this point, less than three days is just not going to happen.

In addition to that, the V3s have a handful of other problems. There’s something screwy between the ATTiny and the ESP8266, which is causing the ESP8266 to not boot properly. This IS a code issue, as putting the ATTiny into a bare code state with only specific pins set does allow the ESP to boot up. The CP2102 also doesn’t connect to the ESP module – I’m not sure what the issue is as I haven’t poked into it at all, but the module connects to USB, but it doesn’t connect to the ESP. And the final issue is that the adhesive used for the battery packs is just not good enough. The pressure from the wires is enough to eventually separate the battery pack from the board.

On the plus side: The voltage regulators work – Both of them. I had also included a method for bypassing the CP2102 when prototyping, so that works to upload code. It’s annoying because an external adapter is needed, but it works. The ATTiny also works largely as intended from what I can tell (Although I haven’t tested it much).

So where do I go from here, with a pile of largely unusable DigiBadges?

I’ll likely simply do nothing with the pile. Replacing the screens is costly and time-consuming, resources better spent making sure this issue is resolved for future versions. I may put them up on the shop with a notification about the issues. Doing this will take some time, however, so I’ll need something in the meantime.

That something is going to be a modified V2 badge. It won’t decode JPEGs, but it’s a known device. It works. I’ll have to do some modifications for components that the PCB house can source and place, but that should be fairly simple. It should also be a bit cheaper than the V3 design, since it has much fewer components. Depending on cost, I may keep it around as a “Light” version of the badge.

Additionally, because of the no-longer-linear progression of badges, I’m not going to call them the V2+, V3 New, or whatever. I’m not entirely sure what I WILL call them at this point, but trying to keep generation numbers would just become a headache.

As far as BronyCon goes, I’ll still be there, at booth #33 in the Artist’s Alley. I’ll be showing off the V3 badge I’ve made work by swapping the screen on, and will be more than happy to answer any questions you may have.

As always, feedback, input, suggestions and the like can be voiced on Discord, on Twitter, or on Facebook.

Weekly Update – July 15, 2017

In this update, I’ll be covering two primary things: Convention Appearances and Future Devices. At the moment, I’m simply waiting on updates for the V3 orders, so there’s not much to go on with that.

Convention Appearances

There are three scheduled and confirmed conventions that we’ll be appearing at:

  • BronyCon, on August 11-13, in Baltimore Maryland. This will be the final appearance of Matchfire Electronics. Future appearances will be as Phoenixborn Technologies.
  • Nightmare Nights, on October 27-29, in Dallas Texas.
  • Retro Game Con, on November 18-19, in Syracuse NY.

At BronyCon, we will only have the DigiBadges. There just isn’t enough time or money to get anything else done. I’m hoping that we can get a case design by Nightmare Nights, but that’s going to be a lot of pressure on Alabaster, so I guarantee nothing. Hopefully we’ll have them ready by Retro Game Con, but again, no guarantees. It’s not that long after NMN. Beyond cases goes into the next category:

Future Devices

There are currently two devices slated for certain investigation, and a handful of others that are categorized under “Hopeful Thinking.”

For the first two, I have Product One and Product Two.

Product One is a “DigiBadge Light” – Those of you that were around for the Kickstarter for the V1 should remember this. The difference in the V1 Light and V1 Hacker, or V1 Standard, was primarily that the Light used the ATMega168 instead of the 328. Additionally, the 328 on the Hacker was socketed rather than soldered directly to the board, and the screen was similarly detachable.

For the new DigiBadge Light, there’s a slightly different goal in mind. The V3 DigiBadge is significantly more expensive than the V2, with a final price of $50 vs the V2’s $15. This is due to a number of things, but primarily it is due to components. I personally assembled the V2s, which meant that I saved money in two ways. First, I could use components from non-standard sources, without datasheets and sent to me in ziploc baggies. Second, I didn’t have to pay an assembly cost.

However, there was a significant issue: Of the 150 boards and components that I assembled, only 85 were in functioning order at BronyCon. This was a significant problem. I managed to fix a decent number after the convention, which I then sold at Nightmare Nights, but that should never have happened in the first place. The root of the issue is split between time and equipment. As it stands, time would have been extremely tight again, and getting the proper equipment is incredibly expensive and also takes up space I don’t really have.

Assembly costs are completely necessary and will end up saving me a ton of time and a decent amount of money, too. Fewer bad units means more potential sales. However, assembly requires a different set of components. While I could potentially use the dirt cheap components like I used for the V2, I would have to purchase them myself, wait for them to arrive to me, and then send them off to the assembly warehouse. That would waste a lot of time and the money spent shipping them would probably make it not worth doing. For components on the V3, I had the assembly warehouse source them. This meant some things which cost $0.10 each on the V2 cost almost $1.00 each on the V3. And there are significantly more components on the V3.

The Light version will be trimming down things on the V3 to make a more affordable version. My current plans have the Light having the same ESP-12 module as the V3, but some other features will be removed. There will be no on-board USB support, and I’m considering making the V2 run off of 3 AAAs and then through a LDO regulator to a lower 2.7v. The Light also won’t have the ATTiny power controller, instead using its on-board ADC to monitor power. Because the ESP8266 has built-in Flash memory, I am also considering removing the SD card slot. There are a lot of things to take into consideration, but hopefully I can get the device to a cost that’s a little bit lower.

Product Two is a direct result of the Light. Without the CP2102, there will need to be a way to program the Light. For that, I intend on making a CP2102 breakout board. Why, when there are so many readily available on places like Amazon?

For one, almost all of them do not break out the RTS pin, which makes programming the ESP8266 a bit more difficult than it needs to be. And those that do often have them in an awkward location. A CP2102 board designed with breaking out the RTS pin in mind would be a lot easier to use, and could be consistently available for purchase with the DigiBadge Light.

Another thing is that none of the CP2102 breakout boards I have seen have a voltage regulator. The CP2102 does have a built-in 3.3v regulator, but it is very small and can’t power much of anything. Putting a LDO on the board should be fairly cheap and easy to do, and gives a significant boost to available power.

The final reason is simple logistics. I want to be able to sell the means to program the DigiBadge Light right alongside the badge itself. Yes, I could purchase and re-sell the programmers, but I would have to mark up such devices in order to make it worth it. At that point, people could get it from where I got it, for cheaper. I don’t like to rip off my customers. Then there’s also the matter of supply. I would have to hope that the supplier decides to keep them in stock, and in decent quantities. Otherwise, I’d be in an interesting situation if they decide to discontinue it.

Creating my own CP2102 breakout allows me to have the features I want on it and also to ensure they are available.

What about “Hopeful Thinking?”

Well, there’s a handful of devices I would like to visit or re-visit. The LED Matrix pendant, for one, would be a great thing to re-try my hand at. I have most of the supplies to build them, but at this point in time I know I could design a better version. I would love to investigate a different battery and make the PCB only slightly larger than the LED Matrix.

I also want to visit further on the idea of a magnetic field viewer. It would function along the same principle as the Elektrosluch, except instead of directing two inputs into an audio output, it would direct an array into a visual output. It would require a lot of fiddling on my part, but it’s theoretically possible.

Another thing I want to work on is a remote control vehicle core. Due to the cost of getting anything with custom wireless certified, I would build it around something that’s already certified, and it might not be practical, but it’s something I want to look into at the very least.

That’s all for now. As always, you can catch me on Discord, on Twitter, or on Facebook.

Weekly Update: July 1, 2017

Late? It’s like a habit or something.

This week’s lateness is due to some problems at my day job, along with spending most of the day poking at the latest prototype.

Good news! It works… mostly. There are a number of issues with the board, some dumb, some not, but it serves its primary function.

The bad parts about the board:

  • The ESP-12E Module’s Ground pin ended up not being connected to the rest of the PCB’s ground plane.
  • Connecting GPIO 0 to a transistor to control the backlights ended up in failing to boot.
  • The resistor setup for the buttons ended up being too varied to be usable how I wanted it to.
  • The footprint for the boost regulator had pads that were too small and couldn’t be soldered by hand

However, those were either jury-rigged to work with the prototype, worked around, and all have been fixed on the next prototype:

  • Re-routing traces re-connected the ESP-12E Module’s ground pin to the rest of the ground plane.
  • The backlight will be controlled by the ATTiny84
  • The Resistor setup for the buttons is scrapped, and they’ll be detected and controlled via the ATTiny84
  • Footprints have been adjusted as necessary.

I spent most of my programming time working on the code for the ATTiny84, and I’m willing to call it functionally complete. I may go back and tweak or change some things, but it works as it sits. I’ll probably upload it to GitHub later in the week. It’s both a program for the ATTiny84 AND an Arduino library to communicate with it easily. I’m pretty happy with the latter – It was a lot easier than I expected, too!

And in non-DigiBadge news, Matchfire will be changing its name.


Well, I’ll toss a link at you: http://www.matchfire.com

These guys are a marketing firm, but they look a little too similar to this Matchfire. In the name of not causing confusion or friction down the road, I’ve decided to re-name my company. To what, I’m not sure, but it’ll be changed. If you have any suggestions, you can send them on Discord, on Twitter, or on Facebook.

Weekly Update: June 10, 2017

One step forward, one step back, and maybe a step or two to the side.

No, we’re not dancing. I’m describing the power for the V3. With BronyCon approaching faster than I’d like – 9 weeks away from now – I can’t really take too much time to re-design things. I tried two things: One, a separate power supply board, and Two, using a single buck/boost regulator.

Neither of those are going to happen.

The separate power supply board is simply too expensive to start off with. If I was getting 500 of them, that wouldn’t be an issue, but with a production run of around 100 units, it’s about 3x more expensive than it should be. That said, an updated V3, when I have the opportunities to purchase in larger quantities, may feature a separate power supply board. Additionally, such a power supply board would be available separately for whatever sort of crazy contraptions you can think up. I AM going to be integrating most of the power supply board’s design into the V3 – That is, the ATTiny84 for control and additional GPIO and battery monitoring.

The voltage regulators, on the other hand, are going back to the ones that have been tested and I know work. The single buck/boost one I simply could not get functioning. If that was an issue with the soldering, or board design, or something else, I don’t know – And I don’t really have the time to figure that out. Both of the other regulators I have tested and work fine. Thankfully, there isn’t much of a price difference, it’s just a matter of squeezing them onto the board. Which I’ve already done.

In other news, it seems unlikely that there will be a case ready for BronyCon. While I really hope this next design will be the one I get a fully functioning prototype out of, I’ve said that for the other ones, too. I’ll be honest – There is entirely a possibility that the V3 will not be ready before BronyCon. I really doubt that will happen – Especially with having someone else manufacture them – but it IS possible that things just don’t work out. That said, there’s still about six weeks to work with, so I’m not terribly worried yet. I’ve already placed an order for more prototypes, so right now I’m just waiting for them.

At this point, I’m sure you know the drill. DiscordTwitterFacebook.

Weekly Update: June 3, 2017

Hey guys!

I’m late again. Was working on the latest V3 prototype last night and suddenly it was 3 in the morning. Oops. At least I grabbed a shiny picture:

So, what makes this different from the previous versions? Well, pretty much everything. It’s largely the same circuitry, but everything’s been moved around and reorganized to fit better and have fewer traces having to go entirely across the PCB just to go back to where they started. There are a few changes, though.

First and foremost, I’ve decided to try and make a separate “PowerBoard” for the device. This consists of a boost-buck regulator instead of two separate regulators, plus an ATTiny84 to control it. The ATTiny84 has 11 GPIO pins, of which two are being used for I2C communication with the ESP8266, one is being used for monitoring battery voltage, and the last one is being used to control the voltage regulator. This leaves seven GPIO pins free to use for the device the PowerBoard is attached to. The V3 ties one of them to a button, to turn the power back on when that button is pressed. The ATTiny84 runs directly off of the battery power – or USB power if it’s available – so is, essentially, always on and monitoring the inputs. Its power consumption is fairly minimal, and will be minimized as much as possible. It’ll likely be put into a sleep state when the regulator is off, turning it back on when it’s awoken.

The PowerBoard being an I2C device does a few good things for the V3 board. First, as it monitors the battery voltage, the I2C ADC can be removed. That ADC was, roughly about the price of the ATTiny84. The single voltage regulator instead of two is also about even in terms of price. Additionally, since the PowerBoard is an I2C device and we’re not controlling the voltage regulator directly from the ESP8266, we’ve freed up a GPIO pin on the ESP. That has now been tied in to a transistor which controls the backlight, removing the need for the I2C Digital Potentiometer.

In addition to that, there’s the six unused GPIO pins from the ATTiny84 that are broken out, in addition to an ICSP header for programming said ATTiny84. In all, the 18-pin breakout header has pins for all three voltages: +5v USB power, +3.3V Regulated power, and the Battery raw voltage. The regulator can handle anything from 1.8 to 5.5v, making a LiPo battery perfectly suitable (Although I’d recommend adjusting the ATTiny84’s programming to not discharge it too much. And there’s no charging circuit). There’s also two ground pins, the ESP’s three SPI pins, the two I2C lines, the ESP’s ADC line (Which is linked to the buttons, but with the right resistors you can add more. Or you can read them from something else), and all seven of the PowerBoard’s GPIO pins. One of them is linked to the power button, but this can allow for an external wakeup from another device.

The PowerBoard also allows for a great deal of versatility in V3 design. If I wanted to make a LiPo powered V3, it would only require changing the battery and a different PowerBoard with a charging circuit included. If I decided to redesign with a more robust and powerful regulator, it would only require changing the PowerBoard.

I’ve ordered some prototype PCBs for the PowerBoard, which will let me test the voltage regulator circuit independent of the V3, and I’ve inquired into what would be necessary for manufacturing it. It may turn out to be too expensive to do in this fashion, but at the very least I’ll have the circuit tested and not have to worry about that on the V3.

Until next week, you can find me on Discord, on Twitter, and/or Facebook.

Weekly Update: May 27, 2017

So, this one’s a bit late. I apologize. It’s been a long weekend at my primary job and it’s worn me out.

On the plus side, that’s now over, AND I have three days off this week. Once my DigiKey order arrives, I’ll be able to hop into some more testing. And speaking of testing – A major landmark in this past week! I managed to upload code to the ESP-12 on the new board. It looks a bit funky, as I had to horridly cobble on some headers into places where they were never designed to be in order to bypass the CP2102 chip, but it worked.

Look at those horridly-cobbled-on headers!I also soldered on the SD card slot, and that worked mostly flawlessly too. The test program picked up the SD card and files just fine, and while a separate one didn’t I’m not too bothered. The SD card is also much easier to remove, unlike the first prototype where it was incredibly difficult. As you can see, it’ll have to be moved to the side some to allow for proper access to the mount hole, but that’s a minor issue.

However, I ran across two issues when attempting to put the rest of the devices on the badge: One, I forgot to order the 1% resistors for the buttons (Oops…), and two: It now isn’t uploading any more programming. I’m not entirely sure at which point the uploading failed, so I’ll have to go back through step by step and test things as I go to see where things went wrong.

Additionally, I discovered an issue in the way the voltage regulator(s) were set up. While they seemed to be functioning (I only managed to test the USB regulator), they wouldn’t stay on even when the ESP was programmed to keep them on. So I’ve begun looking at ways around this issue. Currently, I’m poking through a design that uses an ATTiny running directly off of the battery or USB power (Yay diodes!). The ATTiny can be run as an I2C slave, meaning no extra pin usage on the ESP-12 – In fact, what would have been the power line would now be a free GPIO line. I’ve done some testing with the ATTiny85V that I have and it looks good so far. The ATTiny85V has just barely the number of wires I would need, though, and for curiosity’s sake I looked into the ATTiny84. The 84A has 11 I/O pins to the 85V’s 5, and was actually slightly cheaper on DigiKey. I sent a request to the PCB Manufacturer to get the price of the 84 to see if they can acquire it at a similar price. Additionally, if I use the 84, I could potentially drop the digital potentiometer and drive the backlights from the 84. The digital potentiometer isn’t extremely expensive, but being able to offset the additional price of the 84 some would be great.

I have a DigiKey order that I’m waiting on that has a few 84s to experiment with along with the 1% resistors. I’ll be designing a new PCB to get prototypes of once I have a few more things figured out and adjusted, as there are a handful of things that didn’t line up on their footprints quite so nicely.

If you want to yell at me for being extremely late with this update, you can find me on Discord, on Twitter, and/or Facebook.

Weekly Update: May 20, 2017


I did this:

My reflow oven isn’t the best, so running it on the automatic settings generally doesn’t work. Putting it on manual typically works like a charm. Unless you set it to heat, step out of the room, and get distracted. I think the thing was well over 300C, probably 350C, before I caught it. As you can see, that’s well beyond rated temperatures. Also, it smelled. Oh boy, did it smell.

Anyway, that was the first test of the V3 Prototype 2 board. Getting the CP2102 soldered on correctly is being a complete bear, so I’m likely to bypass it for the next test, just to make sure everything else is working correctly. I only have one more ESP8266 module not attached to something, so if I fry this one I’ll have to wait until Monday when more arrive.

Honestly, at this point, the biggest holdup is the CP2102. Getting it to solder properly has been a bear. I have a new, fine-point tip ordered for my soldering iron that may help with any bridges that form, but as long as I can get the device itself working, I’m less concerned about the UART bridge. Thankfully, the minimal equipment to test is, well, very minimal – A handful of resistors, two transistors, and the ESP12 module. That’s enough to make sure the ESP’s wired correctly, and once that is confirmed I can go from there.

Now that I have the boards, I’ll be back to prototyping and testing, and I expect a more substantial update next week. You can find me on Discord, on Twitter, and/or Facebook before then.