Electronics&Hardware Hacking&Uncategorized04 Jul 2010 12:00 am

Remember the PCI card from a few weeks ago?

Not too long after that, I did send out an order to manufacture some boards – and this last week they finally arrived! I’ve assembled a few, tested them, run into a few problems, solved them, and finally got a pretty basic PCI Port-80h debug card working.

In this post I’ll walk through these things, and talk some more about the PCI interface.

(more…)

Electronics27 Jun 2010 10:18 pm

Oh, finally…

So, this post is a little bit late as well, I almost didn’t manage to make this work :) I’ve been now tinkering with writing a USB device stack for my USB stick for literally the past two weeks now; Being a new space, I’m used to the idea of having issues, but between incredibly stupid bugs, very minimal documentation, and errors in some critical hardware documentation, this has been quite a challenging project.

On the plus side, I now have my USB stick behaving as a virtual com port – so it will be trivial to write extensions and make it start to do really useful stuff (haven’t quite got around to that yet, so expect a part 3)

Additionally, in the process I’ve become pretty familiar with  how USB works, and I’ll try to more simply define it for those who are interested in getting started.

(more…)

Uncategorized20 Jun 2010 02:12 am

Well, it was my intention to talk about USB in more detail today, but my USB project has been a little sidetracked – today I wrote the majority of my USB Device implementation but am still stuck debugging a hardware feature that’s not quite working how I think it should… I have a pretty good understanding of USB now from this project, but do actually want to make sure all of my assertions hold before documenting it ;)

So, nothing too interesting this week; Next week should be good though. (and the week after, and the week after. I have quite a bit lined up now, just not all done yet)

Electronics&Projects13 Jun 2010 12:00 am

Another week has gone by already? Well, I do at least have something to show for it.

So the thing I spent the most spare time on this last week has been designing a FPGA-based PCI card. This is something I’ve wanted to do for some time now (and have an earlier unfinished attempt that was far more complex), but I have recently encountered some inspiration for a board that will be somewhat useful, or at least interesting.

This board isn’t really much of anything special, but it will fill a specific niche, and will be sufficient to try out a lot of interesting things I’ve been thinking of in the PCI space.

So, This isn’t going to be an exceptionally impressive post, but I did collect screenshots from various stages of the board’s development, and  I’ll also discuss the design decisions behind this board.

(more…)

Electronics&Projects06 Jun 2010 12:00 am

Hi again,

As promised, this week’s project entry is much less entertaining;

I did attempt to get this project a bit further today but distractions have taken their toll. Expect this one to come up again in the future :)

So, not too long ago I had the bright idea to build a little USB stick; My motives at the time were apparently highly questionable, so I am here about a month later with a fairly limited use USB stick

One of my major goals behind this project was to have an excuse to work out the details of USB, and try some stuff out, which I’m still doing now. Once I get that done with, I will attempt to explain just how all that works; USB is a bit elaborate, but it’s increasingly interesting and important these days, as serial and parallel ports are becoming more rare. I have another project along these lines too, but it’s quite a bit more low-level.

For this post though, I’m just talking about the hardware design of this project. (more…)

Electronics&Hardware Hacking&Projects30 May 2010 12:00 am

3 blog posts already, amazing – though very shortly I may have to start talking about far less interesting projects, or post less frequently. This is starting to take quite a bit of time, and I’m running out of interesting things I’ve been doing. :)
So, recently I’ve started looking into ASIC design – it’s will still be quite a long time before I can practically start thinking about trying to design my own chip, however, in the meantime some chip reverse engineering has attracted my attention.
Now, I mostly operate from a home-lab environment, and it’s not really safe to involve things like… high concentrations of Nitric acid. But, having recently acquired a decent cheap USB microscope (the Veho VMS004DELUXE USB Powered Microscope), I decided to give chip disassembly a shot for the amusement value. Given my lack of professional tools this has little potential to be really educational, but it was pretty interesting. This is a pretty picture-heavy post,  if that wasn’t clear enough already… (more…)

Electronics&Projects23 May 2010 12:00 am

Another week has gone by, and it’s time for another project!

This week’s project is a little bit more complex than the last one, but it’s still pretty small. It’s a small board that drives an 8×8 LED matrix. It’s actually a pretty silly project because I only have a dozen or so of these LED Matrices around (I’m not sure I can even buy these specific matrices anymore) – I actually bought them back in 2005 – they’re 8×8 arrays of red/green LEDs. They’re organized with a common anode per row, and then red/green cathodes per column. (Davr also got some, and has a number of entries on his blog about his efforts)

Just for fun, I set out to design a board that would sit on the back of the LED matrix and make it easy to drive from a small microcontroller. My design goals were to have current drivers on the common anodes, and provide a shift register to easily configure the other LEDs. I also wanted to be able to easily chain multiple boards together to make a much longer array. (Read on for more details about the design…) (more…)

Electronics&Projects16 May 2010 12:00 am

Here’s the first installment of my weekly project report thing :) Wish me luck!

So, not terribly long ago I decided it was really time to give microcontrollers another go; My history with microcontrollers in general has been a little sketchy, because not only are they pretty limited systems, but they don’t really allow a lot of creativity in solving your problems. Being mostly self-taught on ARM and x86 CPU architectures, the little 8-bit uCs generally seemed more like a pain than anything else.

However,  I was determined not to let my history deter me, and to try again. I ordered some AVR DIP chips for prototyping and a serial programming cable. Unforuntately, like so many well laid out plans, this didn’t wind up working out – not knowing too much about the AVR landscape, I had inadvertently ordered a serial programmer that requires an actual native serial port to work (it wouldn’t do anything with my USB-serial converter… And seriously, who has a native serial port around these days?)

Being incredibly stubborn and unwilling to  wait further to order yet another programmer, I decided to take matters into my own hands – After reading the AVR documentation on programming their chips (which is actually quite good), I put together a small CPLD based programmer which has served my needs. Read on for the full details…

(more…)

Uncategorized10 May 2010 06:48 am

I’ve decided that every weekend (starting next weekend) I’ll update this blog and detail one of my projects; I’ll either write up something that I’ve already completed, something that’s in progress, or something that I’m planning to do in the near future.

If nothing else it could be interesting to follow,  and will serve as somewhat of a historical record of what I’ve been up to.

I’m a little worried at this point about running out of content, but I do have a bundle of little projects that I’ve completed in the recent past that I can write up, for the first several weeks. Hopefully I have something further by the time I’m done with those… :)

Most likely I won’t take the effort to provide project design files or documentation, but if there’s interest I can probably make that sort of thing available – These are mostly just hacky personal projects after all (though, at least a few of them have larger intended audiences).

(Small update: Apparently comments were broken, but they’ve been fixed now)

Uncategorized10 Jan 2010 11:53 pm

Hi! It’s been a while since my last post; I’ve decided that I should post more often even if I don’t have a lot to say, as sometime soon I will have more to talk about.

As usual, there have been a lot of projects in progress, but nothing I want to share publicly at this time. A few things have happened since last post though:

  • I entered and did horribly in LudumDare #15 (Caverns) (My horrible entry)
  • I’ve worked on some hardware projects (Like this Optical Switch, which switches between optical audio inputs. Yes, I’m too cheap to get a receiver, but with this I don’t need one.)
  • I’ve built my XNA game engine up and it’s quite capable, I’m now in the process of actually putting together a game with it. (No screenshots publicly available yet. Maybe soon)
  • A pile of other small stuff; I’ve tinkered with driver development, played with some hardware ideas, thought about a lot of stuff I won’t be doing for months, learned some math,… you get the idea.

Some things coming up in the near future:

  • As I said, I’m working on an XNA game. I’m hoping to release it before too terribly long, so expect to see more about it soon.
  • I am working on designing a PCI card / general purpose hardware development platform – This took a back seat to the XNA game a month or two ago, so is only half done, but I’ll be posting about that when I get it further as well.
  • Revisiting the DS wifi is on my list for “after the current set of important projects,” But I’m going to make more of an effort to get to it this year.

Well, that’s how life is. I’ve got far too much to do but pretty happy with what I am doing. I wonder if  anyone is still paying attention to this blog :)

I’m still somewhat interested in teaching, and maybe I will still get to that arcane series on software rendering I was thinking of – Any other suggestions on things to write about?

    « Previous PageNext Page »