Jon Thomasson's Build Log

Yeah it’s funny, I’m just using mine as a fan to cool me off right now! It’s been going for nearly 2 hours so far. I got my filters off Amazon: https://www.amazon.com/dp/B00XIN1ENI/ref=sr_ph_1?ie=UTF8&qid=1498865912&sr=sr-1&keywords=solder+fume+filter. Then I just cut them to fit the fan size. There’s a ton of options for filters, any of these should work:
https://www.amazon.com/Carbon-Filter-Activated-Weller-Absorber/dp/B009AE8DWO/ref=pd_cp_469_2?_encoding=UTF8&pd_rd_i=B009AE8DWO&pd_rd_r=BKBGTJHKWMRM417ZPKSJ&pd_rd_w=hbxIM&pd_rd_wg=G72hu&psc=1&refRID=BKBGTJHKWMRM417ZPKSJ

https://www.amazon.com/Carbon-Filter-Activated-Xytronic-Absorber/dp/B005C5HUI8/ref=pd_bxgy_328_2?_encoding=UTF8&pd_rd_i=B005C5HUI8&pd_rd_r=7ZHXBB3HZXV4ZDARGSPZ&pd_rd_w=pKIFO&pd_rd_wg=CD1Ro&psc=1&refRID=7ZHXBB3HZXV4ZDARGSPZ

https://www.amazon.com/Weller-WSA350F-Carbon-Filters-Absorber/dp/B000EJ1BUU/ref=sr_1_1?ie=UTF8&qid=1498865291&sr=8-1&keywords=Weller+WSA350F

Then the only other thing is if you’re adding the filters, you’ll need a grill or something to hold them on the fan. Or maybe 2 rubber bands would work? I just used the grill from the power supply, but you could probably just get that on Amazon too. Something like this:

https://www.amazon.com/80mm-Black-Finger-grills-screws/dp/B016N6X06K/ref=sr_1_1?ie=UTF8&qid=1498866275&sr=8-1&keywords=80mm+fan+grill

That looks pretty similar to what I have. I had to be somewhat gentle when threading the screws through the pcb. I don’t know if I was being paranoid or not, I just wasn’t sure how much force the pcb could take. So I used 6 screws in total for my setup - 4 for the grill and filter and then 2 for the pcb.

Amazing how different search results can be for different keywords. I was searching for “active charcoal filters” and it just wasn’t giving me what I wanted. I didn’t think about searching for “solder fume filter” or anything like that.

PCBs are quite strong. I haven’t worried about bending or damaging them too much in a long time after I had to put together an old Intel CPU + Heatsink and the board was getting mega flexed. They can take a lot of beating up for sure.

I have 7 more boards if anyone else wants one. I’m throwing in the resistors too since I bought those in bulk they’re basically nearly free to me. There may be some countries I can’t send them to, but I’ll definitely give it a try. I don’t mind paying for shipping since the boards are so tiny. I’m stationed in California for reference. Anyway, send me a PM with an address where to send it if you’re interested. I’ll just post back here if I run out at some point.

Got most the parts today, minus the battery and the PCB. I’ve never noticed how aUSB micro connector is soldered. It’s quite intense. Not sure how I’m supposed to solder it.

Also I noticed that the pictures of your board aren’t present anymore @jonthomasson.

Looking forward to killing myself on the 0805 parts though :smiley:

Wow, that’s great! My guess is the PCB should arrive either Wednesday or Thursday. With regards to the USB micro connector, yeah that’s pretty much the hardest thing to solder on that board. The good news though is that the only pertinent pins you need to solder are pins 1 and 5 since we’re only using the 5v and ground pins for powering the charge circuit. So the 3 pins in the middle shouldn’t matter if they get bridged etc. Then you can just solder in the through hole pins on each side to give it some structural support. There are 2 pads under the connector, but you don’t need to worry about those unless you have a hot air gun to heat the solder under the component.

That’s weird the pics are missing. If you want to check them out on my hackaday page you can: https://hackaday.io/project/24508-solder-sniffer-9000. All of the pics are there in addition there’s some 3d views and the pcb view. Let me know how it goes or if you run into any snags.

A post was split to a new topic: Missing pictures from posts

I re-uploaded my pics this morning for the Solder Sniffer. I’m not sure why they went missing.

Finally got time to solder the board up! I haven’t done that small of parts before and man do they look horrible! :blush:

But I was able to get enough solder on the USB connector and on the U1 and U2 ICs. :slight_smile: I had one mistake where I bused a couple of the pins on U1 together and had to cut the bridge. Overall it went okay. I took a picture of where I got last night and then one of it completed. It works great!

Just need to clean up the filter’s edges and maybe tape them off? Also need to think about what to do with the leads of the fan. For now I’ll just wrap them around the fan as is.

On a side note, man that red LED is super bright!

2 Likes

Awesome job! I’m glad you were able to get it all working. I really like the look of that fan too! For the filter I just trimmed it down with a pair of scissors. I didn’t think about taping the edges, but maybe that would keep the edges clean. For the wires, you can either just trim off the excess or I folded them up and stuffed them in the small area between the battery and the fan. It’s seriously cool to see someone else build one of these! You made my week! These things really come in handy. I had to do some work in the attic last week and I used it to keep cool.

:grin: I’m glad I got it working too. I was worried about burning out U1 when I was soldering it, but it seems to be fine.

Yeah I trimmed down the filter too, I just did a really poor job on it it seems. I think I need to get some thinner screws since they don’t want to go into the fan holes. I should have some somewhere, but I’ll have to look later.

I’m thinking I’ll tape the wires against the side to keep them folded nicely. That’s a good idea to use it as a portable fan. I might have to get it a little more ruggedized before I use it for something like that.

Glad I could make your week! The fan is an Antec brand. They do have some nice ones out there for sure.

1 Like

I finally had some time to solder together a project I designed a few months back. It’s a simple little fpga development board that I code named the Spartan Mini.

I had the yearning to create this little fella when I was trying to learn verilog towards the beginning of the year. At the time I had a Digilent Nexys 3 development board that I had purchased off ebay and I was going through this neat little book called FPGA Prototyping By Verilog Examples. It was an older book, so it didn’t teach System Verilog, but I really enjoyed the style of writing and it was very practical in that it provided plenty of homework examples that you could work through and put into practice what was taught. I started thinking that it’d be fun to try and make a small development board that I could use in other projects, and the rest is history.

I decided to use the Spartan 6 FPGA because it was the one I had used in the Nexys 3 board, as well as it had the option of a less intimidating TQFP footprint, vs the BGA package that seems to be more common with the newer designs. There was also a ton of documentation and support behind it which really helped me out. There were numerous examples of projects I found online that I pulled from. None of them had everything I wanted, but they helped me in verifying I was hooking everything up correctly. Some of those projects were the Papilio and the Numato Mimas board.

For the feature set, I wanted a board that had a dedicated power switch, and various powered options. The final design can either be powered via a micro USB, 3.7-6v wall wart, a li-ion battery via an optional JST-PH connector, as well as a VIN jumper. The board can either be programmed via the USB, as well as the JTAG connection. For the USB controller I’m using an FT2232, which provides both a JTAG and RS232 link to the FPGA. The board also has 8Mb of PSRAM (pseudo-static ram). I discovered PSRAM with the Nexys 3 board. The benefit of PSRAM is that the FPGA can interface with it like normal SRAM. Under the hood however, the chip uses DRAM, but takes care of the refresh circuitry automatically. Because of this, PSRAM has the ease of use of SRAM, but essentially at a lower cost similar to DRAM.

Other than that I have 8 programmable Leds, 2 buttons, and a slide switch connected to the physical board. I found with the Nexys board that I was constantly using the Leds on the board to display not only the status of registers, but it also makes it really easy to display a byte of data when debugging. To facilitate expansion and prototyping I added 5 PMOD (short for peripheral module) ports, which seem to be a growing standard with FPGA boards. The nice thing with these connectors is there’s already a slew of useful peripherals that companies have developed that can be plugged in directly to the board.

In a later revision of the board I thought it might be neat to have the option of adding a Kicad template that would allow easy creation of daughter boards or shields that would connect via the PMOD connection points. I started playing around with creating templates in Kicad and built a little expansion board template.

Using the template I created a simple little proto board type shield that I’m hoping will make prototyping designs easier.

I discovered that there’s just enough room to squeeze a skinny breadboard between the headers, to provide for some more prototyping options:

Here’s a link to the github repo.

4 Likes

Got some new boards back from oshpark. One is a li-ion coin cell charger, and the other a breakout board for a 1.5" oled. Now I just need the time to assemble and test. :slight_smile:

Let us know how that connector soldering goes. Drag soldering ftw!

1 Like

Yep, drag soldering is a somewhat magical experience. Just need enough heat and flux and anything is possible :grin:. I’ve noticed that the solder bridges have become increasingly harder to detect though the older my eyes get. What I’m really scared of at this point are BGA components where the solder joints are hidden. When I get to that point though maybe I’ll invest in a reflow oven.

1 Like

USB microscopes are cheap too, that could help detect if you created bridges

1 Like

That’s a good idea. This one may fit the bill. It’s only 2 megapixel, but maybe that’s enough for this application. Christmas is right around the corner.

I’ve been fortunate recently to have a few rainy days where I can further test my fpga board. I decided it would be fun to try and port an NES core to my board. I chose to try out this core built by Brian Bennett. This one seemed pretty well structured, and simple enough that I could hopefully add onto it in the future.

The first step for me was to update the constraint file of the project to map to the pins I had configured on the Spartan Mini. This was relatively straightforward. Next I plopped on my bread board shield and began to build up the connections needed to display the vga video. The way this core works is it uploads rom files from the computer to the fpga via the usb to uart link. After fiddling with the app for a bit, I was able to get games to load and display on the monitor. :slight_smile:

Next I thought it would be fun to swap out the VGA connection for a small TFT pixel clocked LCD I bought at Adafruit. I used the TFT Friend board Adafruit sells to connect the TFT display. The connection was fairly straightforward. The 8 bit rgb signal was wired into the most significant bits of the display, along with the hsync, vsync, data enable, and pixel clock pins. The video sync module was modified to allow for an 800x480 display area to accommodate the resolution of the TFT. To center the image in the display I’m just shifting the x value of the sync module by 80 pixels in order to compensate for the wider screen.

For the audio, I used an Adafruit PAM8302A amplifier board to run the sound output to an old pc speaker. The last piece I needed was the controller. The project was setup to use an original NES controller, which I didn’t have. I decided to try and build my own controller on a breadboard and get it working that way. The actual build of the controller was pretty simple, I just arranged some tactile buttons with pull down resistors on a breadboard in a way that resembled an NES controller.

The inner workings of an NES controller are fairly simple, basically the 8 buttons are hooked to a parallel to serial shift register which is mapped to the memory location $4016. Writing to that address latches out each individual button state. In my controller module i have 2 8 bit registers to hold the state of my buttons. Whenever $4016 is read the bits are shifted out one per clock cycle onto the data bus. To test the controller out I found a Controller Test rom online that was simple to use. It basically just lights up the buttons as they’re pressed.

Here’s the finished prototype:

1 Like

Fantastic! Love seeing the older games on new hardware.

Nice work @jonthomasson!

Thanks @ChrisGammell and @hedrickbt. I have a soft spot for the NES since that was the system I grew up with. Can’t believe it’s been 30 years ago. Time sure flies!

1 Like