16

Personal project: I design and build single-board computers with old processors like Z80, 6502 etc when I'm not being too lazy. A few run CP/M. One that's been more interesting in terms of digging deeper has been an 80C188, for which I've written a BIOS (despite the chip's built-in peripherals and interrupts being at non-standard addresses) mostly in C, which it can use to boot DOS from an image file on an SD card (bit-banged off the UART chip with FatFs). (Yes it's slow, but so is a 5.25" floppy.)

Work: My first project at my current job. Not particularly exciting compared to some stuff on here, but it got me into making useful contributions to the open-source CRM we used at the time. Was building a basic extension to deal with duplicated organisation names. So learned CiviCRM fairly deeply, a bit of Drupal, a bit of PHP. It's a shame we don't use that system any more, the community was cool.

Comments
  • 3
    It would be awesome if u‘d make some blogposts about ur hobby project. I always enjoy reading hardware related stuff akthough I only do software 😅
  • 3
    @mojo2012 I should do I suppose but if I'm spending time on those projects I'd rather spend it designing/coding!

    Got another couple of ambitious ones in mind but not started. One would be a J-11 (single-chip PDP-11). Another would be a 68030.
  • 3
    @d4ng3r0u5 I am an Electrical engineer by education (still in college) so I started a single board computer project myself, but I made the rookie mistake of trying to do too much, too soon. I started with an ARM Cortex A8, 2-Gbit 1066 MHz RAM and whatnot. Needless to say, it ended up as a disaster but I still learned much more in a few months than in my time at college. My fav project so far.
  • 2
    @rithvikp Oh I haven't done anything with BGA chips like those would probably be. All veroboard. What went wrong with your project?
  • 2
    @d4ng3r0u5 Multiple mistakes: I had to stick to using only 4 layers in the PCB design because 6 layer boards were ridiculously expensive. So, I ended up having some of the high speed RAM traces in middle of the power planes and I couldn't match the impedances of some of the traces. I went with 0603 capacitors and resistors which were a pain to solder. I placed a wrong footprint with one of the most critical components, the voltage converters (I placed MSOP-8 3mmx3mm instead of uSIP-8 2.4mmx3mm).

    I am actually thinking about doing a new board with less complicated components and hopefully, what I learned from these mistakes will help.
  • 1
    @rithvikp Yeah, that's much more hardcore in terms of PCB design than anything I've done. The speeds I'm running at I don't really need to give two shits about differences in properties of traces (apart from putting the crystal as close as possible to whichever chip contains the inverter for the oscillator).
  • 2
    @rithvikp Z80 is a good one to start with btw if you don't mind it being 5V/8-bit vintage/not having on-chip peripherals like a modern microcontroller. Or maybe Z180, that's an extended Z80 with serial ports, timers and a rudimentary MMU built in.

    If you then add some non-volatile storage, and your memory configuration is suitable, you open up the possibility of running CP/M, for which there's a lot of old software around.
Add Comment