Looking to build my first SBC, advice welcome! - Page 1
Forum section: electronics / general

author: Unknown
author_rank: Unknown
timestamp: September 11, 2013, 05:55:25 pm
content: I thought something like this would make a good starting point:http://searle.hostei.com/grant/6809/Simple6809.htmlI'm not too fussy on exactly which version I use, but the 6809 and its variants seem to be quite widely used in older electronic musical instruments, which is one of my main areas of interest at the moment.If I go through with it and find that I'm capable of assembling a working one, I'd like to alter the design to make it expandable so when I get to writing my own programs for it I could plug in different peripheral components to experiment with, for example DAC, ADC, simple display controllers (LEDs etc, not CRTs), that would be mapped into free address space.Would I be able to do this just by buffering all the A/D lines from the CPU and run them out to some 40-pin IDC sockets or something? What about the other control lines from the CPU? They're shown connected directly to Vcc but I may one day need to use them for something. Could these be connected to Vcc via weak pull-ups instead and broken out like the A/D lines in case another device needs them? If this approach is correct, what value resistors would be appropriate? If not, what do you veterans suggest?

author: legacy
author_rank: Super Contributor
timestamp: September 11, 2013, 06:02:59 pm
content: from the Simple6809 schematic it appears to me there is something wrong with the ACIA around TXclock and RXclock. I think the schematic is not correct, 6850 should have external baud rate generator ... mmm

author: Unknown
author_rank: Unknown
timestamp: September 11, 2013, 06:05:49 pm
content: Quote from: legacy on September 11, 2013, 06:02:59 pmI thought it looked odd actually... but then, it looks like it's fed from the E output of the 6809. Might it be divided down internally somehow, set by some register or another? The page owner seems pretty confident it works. But I'm sure I've seen other designs that needed their very own crystal for that.

author: legacy
author_rank: Super Contributor
timestamp: September 11, 2013, 06:09:31 pm
content: I suggest you 8051i realized this board8051 has internal uart, like 8085, it only needs 11Mhz clock (precise value in order to have the correct baud rate in the uart section), ram, rom (rom is fetched by PSEN, ram by glue logic), latch (data/address are multiplexed), a pretty glue logic for address-decoding (in order to access the right ram chip or device, e.g. a memory mapped AD, DA) and the proper reset circuit!it's easy circuit, and you can find "basic" interpreter for intel, or you could put a "monitor" (e.g. paulmon if i remember correctly) inside the eprom and start programming with sdcc, uploading your code and executing it.

author: legacy
author_rank: Super Contributor
timestamp: September 11, 2013, 06:11:01 pm
content: Quote from: BulletMagnet83 on September 11, 2013, 06:05:49 pmyes it may be, it should be investigated ... or you could easily build a fix baud rate generator, i have a scheme around in case.

author: edavid
author_rank: Super Contributor
timestamp: September 11, 2013, 07:33:11 pm
content: Quote from: legacy on September 11, 2013, 06:02:59 pmThere is nothing wrong with it, it just gives a fixed baud rate of 115.2Kb (or 28.8Kb).(Actually I think it's out of spec for a 6850, you might want to use a 68B50.)

author: Unknown
author_rank: Unknown
timestamp: September 11, 2013, 07:40:07 pm
content: Thanks for the input so far guysAny thoughts on the expansion idea?

author: edavid
author_rank: Super Contributor
timestamp: September 11, 2013, 07:56:26 pm
content: Quote from: BulletMagnet83 on September 11, 2013, 07:40:07 pmSure, you can do it. You wouldn't want to run long ribbon cables though.Of the control lines, you would probably only care about the interrupts. 4.7K or 10K pullups would be good.

author: legacy
author_rank: Super Contributor
timestamp: September 12, 2013, 12:39:44 am
content: Quote from: edavid on September 11, 2013, 07:33:11 pmcould you explain more details please ? 6809.E should be related to 6809.CLKthe crystal frequency is 7.3728Mhz, and the bus frequency should be 1/4 of the crystal frequencyso the bus frequency propagated through 6809.E should be 7.3728Mhz / 4 = 1.8432Mhzam i right ?we are supposing ACIA clocked at 115200HzACIA is able to divide {RX,TX}clock by {1,16,64} through counter divider select bits registers {CR0, CR1}1.8432Mhz / 1 = 1.8432Mhz1.8432Mhz / 16 = 115200Hz1.8432Mhz / 64 = 28800Hz6809 datasheet6850 datasheet

author: legacy
author_rank: Super Contributor
timestamp: September 12, 2013, 12:50:26 am
content: It thinkthistiny 6809 project looks better, it uses modern FT245 USB-uart

author: dannyf
author_rank: Super Contributor
timestamp: September 12, 2013, 01:00:45 am
content: With most of today's mcu, you don't need the rom nor the rs232 chips. With a bigger chip (like stm32f4), you don't even need the ram -> making it a single chip computer.

author: westfw
author_rank: Super Contributor
timestamp: September 12, 2013, 01:43:48 am
content: I'd love to have some "modern" SBC layouts for 8051, 6809, 6502, etc. You know - narrow or SOIC *big* RAM chips, ISP-capable cpus (if applicable) EEPROM/Flash instead of EPROM. FTDI chip or connector instead of max232. Serial-bootloadable.Except I'm not quite sure what that means. SMT or TH? Let people populate it with those "junk" parts they've collected, or require new (but cheap!) purchases? Tiny board or big board? protoboard friendly, Shield-friendly, or just "whatever" ? GALs were all the rage for decoding "last time around", but these days no one has programmers and chips are hard to get. Do you aim for low power (there goes the GAL), or do you not care? And why struggle with all that when you can go out an get an Arduino for $20?

author: Crazy Ape
author_rank: Regular Contributor
timestamp: September 12, 2013, 02:00:00 am
content: Quote from: westfw on September 12, 2013, 01:43:48 amSMT or TH?SurfaceMountTechnology orThroughHole.But I think you know that, so I'm puzzled byQuote from: westfw on September 12, 2013, 01:43:48 am

author: legacy
author_rank: Super Contributor
timestamp: September 12, 2013, 02:25:37 am
content: Quote from: westfw on September 12, 2013, 01:43:48 ammeans to be practical ! You should prefer DIP packages because they don't require to be soldered, they needs sockets which need TH, but the PCB looks easier in TH way. Unfortunately modern PC are missing the RS232 port, so you can have still fun using USB-2-UART, and this is the reason of the FT245 chip! Is it provided in smd package ? You have to choose if to solder the chip to a smd-dip adapter or to solder the chip directly on the PCB.about Arduino ... you can choose how to have fun, or to blink a led just writing a sketch in C++ on a system on chip, so called Avr8, ram, rom, uart all inside the chip, or to build an SBC in where you have to provide ram, rom, uart, and glue logic to handle them, and toy with assembly and C in order to put a monitor, then a firmware on the board. Which is the most amazing ? it depends on you !

author: legacy
author_rank: Super Contributor
timestamp: September 12, 2013, 02:34:46 am
content: personally i like boards like this oneit is a 32bit with nvram, i have realized in my spare time, all in DIP packages

author: marshallh
author_rank: Unknown
timestamp: September 12, 2013, 03:18:35 am
content: 6800-based smart VFD display

author: edavid
author_rank: Super Contributor
timestamp: September 12, 2013, 04:04:25 am
content: Quote from: marshallh on September 12, 2013, 03:18:35 amHey, that's a 6803! Much fancier than a 6800.

author: westfw
author_rank: Super Contributor
timestamp: September 12, 2013, 05:21:59 am
content: I meant: what would people WANT on a "modern" x51 SBC?I have a (paper, untested, unbuilt) 50x50mm (cheap to have fabbed) smt PCB.I have a similar single-sided TH design (80x100mm) (theoretically homebrewable.)Each has generic 40pin x51, 32k (or more) RAM, latch, GAL, and Serial EEPROM for holding a serial-downloaded program for copying to RAM.I don't know whether either one is worthwhile, or whether I should just pony up $100 for a board from silabs...

author: GK
author_rank: Super Contributor
timestamp: September 12, 2013, 05:31:49 am
content: Meh. Upgrade the front shocks and shoehorn in a BBC.

author: Unknown
author_rank: Unknown
timestamp: September 12, 2013, 12:31:51 pm
content: Legacy, that 68k board looks niiiceI'd love to work my way up to something like that one day... but the thought of soooo many A/D lines to wire up makes me die a little bit inside, and saps my enthusiasm! Maybe one day. I have some old books on that CPU after all.Why struggle when I could get an Arduino for $20? Well... I have some of those already! And while there's still plenty to be learned on the software side of things using that platform, I find the hardware a bit boring. A project that requires good assembly, test and debugging skills on the hardware side will give me training that's more applicable to my current job. Recreating, adapting and expanding upon those simple designs will, in my opinion, eventually make me a better engineer

author: legacy
author_rank: Super Contributor
timestamp: September 12, 2013, 01:45:39 pm
content: Quote from: BulletMagnet83 on September 12, 2013, 12:31:51 pmthank you, i am trying to build a plastic case in order to let her to looks more prettier. Also the bad side of the story is firmware ... well i have written an easy bootloader able to upload srec file. The solution is easy: you upload an exec, you put it into non-volatile-ram. You can also see the pretty toy-language called "little" i have developed in C++ and opened thisthisthread. The idea is to provide something to be run in this kind of SBC, but you may prefer Basic, forth, or whatever you want. "little" is written in C++ and the binary may be too heavy for a tiny SBC, but you could port "little" to C, reducing and optimizing (guess if it is really possible, but it may be), or you could rewrite it from the beginning! 6809 SBC has a basic rom, it is pretty from what i can see from the emulator. Check it out!

author: westfw
author_rank: Super Contributor
timestamp: September 14, 2013, 05:29:23 am
content: I guess that part of my personal problem is that I like SBCs to be "minimal" (like, right now, I'm thinking "if I put a 256k NVRAM chip on there connected to the 8051, for both program and data memory, then using a GAL or even the traditional 7400+74138 logic for memory interfaces is probably overkill.") But if you're going to build a minimal system, you might as well skip the more complex SBC and just use a more modern single-chip solution. Sigh.

author: legacy
author_rank: Super Contributor
timestamp: September 14, 2013, 10:42:22 am
content: I think the real fun comes combining an old CPU with CPLD or FPGA, in case i am using spartan_II, which are 5V tolerant and PLCC packaged!

author: westfw
author_rank: Super Contributor
timestamp: September 16, 2013, 07:19:48 am
content: You know, working on a DIP-based SBC-type system, with those big parallel address and data buses going for inches or (remembering things like S100 and MultiBus) feet, diving between and around pins, makes me feel like the time I've spent carefully minimizing and isolating traces on arduino-sized boards (mm instead of cm) has been pretty silly.Of course, perhaps that old technology really is Just That Slow.

author: Unknown
author_rank: Unknown
timestamp: September 16, 2013, 08:20:29 pm
content: Thanks for the input Wilfred! 6809 dev tools do seem to be a bit thin on the ground compared to the others so I am starting to question the wisdom of my choice thereTrying to do as much research as possible before wasting money on parts I can't use, without also using that as an excuse to avoid building anything! Seems like the Z80 or 6502 versions have more potential as there's no shortage of softwareI suppose for my intended purpose either would do equally well. Hopefully doing some bits-buying after payday... but we'll see how that works out.

author: free_electron
author_rank: Super Contributor
timestamp: September 16, 2013, 09:16:39 pm
content: Quote from: westfw on September 12, 2013, 05:21:59 aman F120 cpu !

author: westfw
author_rank: Super Contributor
timestamp: September 16, 2013, 10:04:32 pm
content: OS9 was supposed to have been a pretty sweet system. I don't know if you can still use it.Also, didn't MIT have a 6811-based robot board (handiboard?)

author: westfw
author_rank: Super Contributor
timestamp: September 16, 2013, 11:31:36 pm
content: The Radio Shack Color Computer ("CoCo") was the most well-known 6809-based personal computer. It ran OS9, I think. (OS9 was vaguely unix-like, along the lines of MSDOS 2.x) Unfortunately, it was likely to have been based on a bunch of support chips that are hard to find any more (but perhaps good candidates for implementing in an FPGA/CPLD.)The MIT Robotics board was "Handy Board", and it looks like there is still some support community. I'm not quite clear on the relationship between 6809 and 6811; The 6811 is more microcontroller-like (and one of the big claims to fame was some eeprom memory that could be used for short programs), and is "similar" in architecture. But "similar" could mean as far off as 6809 is from 6800, or 8086 from 8085...

author: Crazy Ape
author_rank: Regular Contributor
timestamp: September 17, 2013, 02:15:02 am
content: You could always design a board that could take either a 6502 or a 6800, you'd just need to map in a different boot-rom based on which CPU you have plugged into the board.Other than a slight clocking difference you'd need to cater for, the two CPUS arealmostinterchangeable at the hardware level. The Apple 1 board for example, had this interchangeability designed into it.Some more info:"The Apple-1 motherboard was designed in such a way as to make it possible for the hobbyist to remove the 6502 processor and use a Motorola 6800 as the CPU instead. This was not a trivial operation, as the 6502 and the 6800 were not pin-compatible (the earlier 6501 was pin-compatible, but was withdrawn after Motorola sued MOS Technology). However, some other hardware would need to be added, and the software needed to operate it would be completely different."http://apple2history.org/history/ah02/Video of Apple 1 board running with a 6800.The pin-outs are very similar.http://www.cpu-world.com/info/Pinouts/6800.htmlhttp://images.wikia.com/microchip/images/e/e5/MOS-6502-pinout.jpg

author: Unknown
author_rank: Unknown
timestamp: September 20, 2013, 03:17:31 pm
content: That's a cool-looking system! I'm hoping to build rather than buy, but once I get home from work I'm gonna have a proper read through the docs and see if there's anything in the design I can steal. I'm quite taken by the red/green address and data displays, that definitely needs robbing for whatever I build if only for the aesthetic appeal.Given we've had a slow day today I've spent most of it reading more about Grant's projects, and doing some datasheet diving... and now I'm leaning towards the 6502 version of the simple SBC, possibly built with WDC's brand-new compatible parts so I don't have to take any chances on eBay shitpiece socket-pulls that may or may not work.Mouser seem to have everything I need: The CPU, ACIA (65C51, which the datasheet claims is a replacement for the 6850), and the 65C22N VIA. I thought I might as well get a few of those when I get around to a parts order, as I pretty much have a complete system then, with all the I/O I could possibly want.Has anyone reading this thread worked with WDC's 65xx toolchain before? I know it's not going to be a piece of piss like Arduino but how's the learning curve on it? If all I want to accomplish (to start with anyway) is to shove some bytes around to prove the machine works is there anything else I should be using? If the machine WORKS and I decide to take things further, $40 for a proper licence doesn't seem like a lot.

author: Crazy Ape
author_rank: Regular Contributor
timestamp: September 20, 2013, 04:27:43 pm
content: Lots of home made 6502 systems to gain knowledge from.http://www.6502.org/homebuilt/

author: senso
author_rank: Frequent Contributor
timestamp: September 21, 2013, 03:12:37 am
content: No love for the intel 80186, my first experience with what I call crippled micro-controllers was in the university, programming this bad boy in assembly, REAL funny to put half the address bus and the data bus into two breadboards and then implement address decoders with discrete logic, shall I say, I failed the subject due to a busted 4 bit buffer that was half dead, half because at each power up the outputs would either choose to be high or low, regardless of the inputs, and the professor never discovered what was going on, he said, maybe its a wiring fault, rip that crap and redo it(again, I have made that mess of wires 3 times), in the end, I couldn't program or follow the class, so bye bye till next year..That and the segmented or what the hell was the memory distribuition

author: westfw
author_rank: Super Contributor
timestamp: September 21, 2013, 04:54:52 am
content: if you don't want to debug hardware, and don't want to put up with "weird" architectures, you might as well stick with programming in python on a raspberry pi. (that way, all you have to learn is unix system administration skills!)

author: legacy
author_rank: Super Contributor
timestamp: September 22, 2013, 03:04:36 am
content: anyone knows an EAGLE's project for such a SBC ?

author: westfw
author_rank: Super Contributor
timestamp: September 22, 2013, 05:05:42 am
content: I have several 8051 "paper" designs (not built yet, so I don't know whether they work.)

author: legacy
author_rank: Super Contributor
timestamp: September 22, 2013, 01:11:28 pm
content: I realized an 8051 board, and a 68000 board, also a 68hc11 is up running out of the proof of concept, any way i was used to use Orcad software which i was licensed at work, at home i just have a licensed copy of Eagle Cad, may be also a copy of PCB Express, but ... never done nothing with them, so i am looking for a short start up.

author: zx80nut
author_rank: Newbie
timestamp: November 17, 2013, 11:40:29 pm
content: Hi.I stumbled on this forum by accident looking for something, and I saw my pages mentioned....and yes, they really do workRegarding the 6809...The E output is directly derived from the incoming clock / 4 and is constant rate, so this is ideal for running the 6850 baud rate clocks (as well as the E signal for which it is intended).7.3728MHz / 4 = 1.8432 MHz to the ACIA. Then using a div 16 clock setting in the ACIA, so 1.8432 MHz / 16 = 115200, giving the required exact baud rate.As has been mentioned, the 6850's are being overclocked but I have had no issues with any of my chips, however, use a 68B50 if possible (I actually updated my web pages to mention this earlier today)Several others have built the 6809, 6502, Z80 and CP/M designs with no issues (I'll be adding a photo gallery of other people's builds to the pages shortly), but please feel free to contact me if needed - I'm more than happy to help out.Regards.GrantMy simple SBCs...http://searle.hostei.com/grant/6809/Simple6809.htmlhttp://searle.hostei.com/grant/z80/SimpleZ80.htmlhttp://searle.hostei.com/grant/6502/Simple6502.htmlhttp://searle.hostei.com/grant/cpm/index.htmlMy main page...http://searle.hostei.com/grant/

author: zx80nut
author_rank: Newbie
timestamp: November 18, 2013, 10:04:22 am
content: Hi.Bit more help regarding this thread...Above someone mentioned using a 6551 instead of a 6850. They are not identical so can't be interchanged as-is.However, a 6551 can be used instead of the 6850 with minor code changes (the status bits to be checked/control registers to use x16 external clock) and I can design the replacement code needed if required - please feel free to ask. I'll see if I have a spare 6551 and I'll try it.Many designs are on the net, but my goal was to produce a design that really can be used by beginners and experienced people alike. They are intended to be the simplest practical expandable and useable design that I could do so that the core design is not hidden inside a more complex schematic. They can be built and work "out of the box" exactly as-is, all have been tested by rebuilding by myself and others, and then you can expand as needed without the clutter of already-present peripheral chips that may not be needed in your design.SBC schematics often look complex due to expansion devices already present on the design, I hope to show how easy a computer system really is.Regards.Granthttp://searle.hostei.com/grant/

author: legacy
author_rank: Super Contributor
timestamp: November 18, 2013, 07:43:47 pm
content: it would be pretty if we design a pcb in order to realize these tiny boards, what do you think about ?

author: westfw
author_rank: Super Contributor
timestamp: November 19, 2013, 08:53:10 am
content: Someone should do a PCB featuring the "common" components (RAM, EPROM, UART? Is there a 32pin or smaller parallel IO chip?) Maybe using a cheap modern connector (PCIe, like the Freescale "Tower" boards? Only smaller?)

author: legacy
author_rank: Super Contributor
timestamp: November 28, 2013, 07:57:54 pm
content: i have foundthis6809 project, it looks pretty with schematic and files included

author: legacy
author_rank: Super Contributor
timestamp: May 01, 2014, 02:17:02 am
content: here, in my free time, i am still toying around building a 68hc11-F("F" means no multiplexer, and much more internal ram, ~1k) board.any news, guys ?