 |
|
 |
| Parallax Forums > Public Forums > Propeller Chip > TriBladeProp PCB: Uses 3 Propeller ICs for a Single Board Computer (SBC) | Forum Quick Jump
|
 |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 3/14/2009 10:19 PM (GMT -8) |   | Postedited:
"Blade #2" both SRAMs (2 x 512KBytes) with latch in and working (quick test using spin - attached). Memory holds valid during reset and new code download to the propeller.
Blade #1 now tested - VGA, TV, and SRAM with latch working (keyboard and mouse untested)
Photos of fully assembled board (almost - no EEPROMs, FLASH, or Blade #3 I/O pins). The cable links the on-board PropPlug to Blade #1. (On-board links can connect the PropPlug directly to Blade #3)
Errata for Rev A (375) attached
Links to other interesting threads:
Post Edited (Cluso99) : 3/15/2009 3:01:49 PM GMT File Attachment : SramTest1MB.spin 12KB (application/octet-stream) This file has been downloaded 72 time(s). File Attachment : SramTestBlade1.spin 10KB (application/octet-stream) This file has been downloaded 64 time(s). File Attachment : TriBladeProp Rev A.doc 20KB (application/msword) This file has been downloaded 98 time(s). | | Back to Top | | |
 |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 3/21/2009 11:02 PM (GMT -8) |   | PCBs have started arriving around the world - UK, USA, Netherlands (5-7 days)
I have requested some advice regarding forum rules for continuing this post. Meanwhile I will answer questions here. My website also contains information (specifications, schematics, BOM, photos, etc) http://bluemagic.biz/cluso.htm
Some of you have asked questions, so I will post and answer them here...
Q: Is there an audio out somewhere I'm not seeing?
A: No - use Blade #3 with an external connection. OBC - is there a Spin Studio Audio pcb? It may be possible to use the connector pins on SS1/SS2/J32 for soldering on a simple audio circuit.
Q: Can you give me a BAM list so I know exactly what to order. Some of these chips are a mystery. A: I have posted a BOM (parts list with Digikey and Future Electronics part numbers). ALL parts can be obtained between these 2 sources. Not all parts will be required. I will detail (soon) a list of what parts I recommend. How to build the pcb in sections and test along the way (partially done below), including the two modifications required.
Q: It looks like I could skip the surface mount USB stuff and use a Propplug. Confirm? A: The PropPlug section may be skipped and use an external PropPlug - I did this first. Each Blade (Prop) has it's own PropPlug input connector. The microSD connector is SMT but is fairly easy to solder. I also suggest the regulators be SMT (TO252) as these are also easy to solder, but if in doubt fit TO220 through hole parts.
Q: How about some pictures of this constructed. It'll help me. :) A: Already posted in the post above. Click the picture to zoom in once or save to Paint and zoom in.
How to build your boards... These are just answers to questions I might have asked...
Q: I note there are some components on the underside? How do I solder these?
A: Yes, there are some components on the underside of the pcb. I suggest you mount these before mounting the component above it on the top side. Mount the component and before soldering, trim (cut) the leads as close as possible to the pcb on the top side. Then solder the component on the top side. If you mount the underside components later, trim them as I mention and place them into the pcb and solder them on the underside. Note this will be difficult for the Resistor Network so make sure you do this before mounting the SRAM U24. On the photo I have not yet mounted any EEPROMs on the underside. Ensure you get the orientation of the component correct - they CANNOT be soldered on the topside as the pinout would be incorrect. (Underside components are shown on the overlay as dotted outlines)
Q: How do I solder the components? (I presume most of you will know this)
A: Solder the SMT components first. Then solder the low profile components next. Use a piece of foam to hold them in place and a breadboard (for cutting bread) or stiff cardboard to hold the foam and components in place. Turn the whole lot over keeping pressure between the breadboard and pcb - this will hold the components close to the pcb. Just solder (tack) one pin of each component (two diagonal corners on the ICs). Now turn the board over and ensure that the components are down tight to the board. If not heat the pin and push (careful not to burn yourself) the component down to the board (use a piece of cloth or something to protect yourself from burns).
Q: What options do I build?
A: Until I get a full description of the various options I suggest you email me.
Q: What should I get going first?
A1: First build the on-board PropPlug if you require it. Solder the SMT FT232RL U91 first. Be careful, this is a very fine SMT IC. If you don't know how to solder this either get someone else to do it or give this circuit a miss (you can use an external PropPlug). I found that I got bridges (shorts) between pins with the solder paste - I used solder wick to take off the extra solder causing the bridges. Do not overheat the IC. Next, solder R91, R92, R93, then U91, then C92, C93, then C91, then Q91 (WARNING - there is an error and the pins need to be bent/inserted differently to the overlay which is incorrect. See attached drawing/photo of this.) Lastly, push the J92 PropPlug connector carefully into the pcb - we do not really want to solder this until the other lower parts are soldered, but we have to be careful it doesn't come out of the pcb and short something. Once this is done - if you have another pcb that requires an external PropPlug you can test the PropPlug to it.
A2: Next, build the power supply. Solder in this order: Q1 & Q2 (if SMT), D4, C2, C3, SW1, J1 (2.1mm is the same as the PropProtoBoard), C1, then Q1 & Q2 (if t/hole). Check you are getting the +5V and +3V3 (means +3.3V) output -you can check at J3.
A3: Next get the Propellers you intend to use. Just solder the capacitors, resistors, PropPlug header, xtal and Propeller IC, and the LED circuit. You will note that each Blade (Prop circuit) uses identical style component IDs (e.g. the Prop IC is U11, U21, U31; xtal is X11, X21, X31). So what you need to get a minimal circuit running for each Blade is Cx1, Cx2, Rx1, Rx2, Jx1, Xx1, Ux1 (where "x" is 1, 2 or 3 for Blade #1, #2 or #3). This is a minimal circuit, without the EEPROM. Also solder the 3 LED test circuits (R1, R2, R2 and D1, D2, D3) - I used D1=Green, D2=Blue, D3=RED. Now you can check each Blade (Prop) by connecting to a PropPlug and downloading a program. I posted a program in one of the above posts to flash a LED - just connect one of the LEDx connection points to P24 (pin33) of the prop ( don't solder it - just carefully poke one end in the LEDx hole - it should flash when working correctly.
NOTE: If you are going to use 2 x SRAMs on Blade #2, it may be best to place a kynar wire cut to length under U21 soldered to the top of pin37 of the Prop chip. (Kynar wire is very thin modification wire with a teflon type coating ofter used for wire wrapping). Be careful to protect the other end from shorting with tape for now.
I will continue this later. Here are some things to consider..
* Blade #1: What options you will use. VGA and/or TV, Keyboard, Mouse? Do you require SRAM? If you only require a specific function, then you can place solder links directly to the pcb. Otherwise, you may want to put pinstakes and use shunts to link the options.
* Blade #2: What options you will use. 1 or 2 SRAMs, FLASH, MicroSD?
* Blade #3: What options you will use. External connections - Spin Studio or General?
* Do you want Blade #2 to load code into Blade #1 and #3 on power-up?
Added the latest BOM with part numbers and prices (Excel format - remove .txt from filename) Links to other interesting threads:
Post Edited (Cluso99) : 3/22/2009 12:57:05 PM GMT File Attachment : TriBladeProp_BOM.xls.txt 36KB (text/plain) This file has been downloaded 56 time(s). | | Back to Top | | |
  |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 3/22/2009 11:54 AM (GMT -8) |   | Recommendation for Blade #1 Assembly:
This Blade/Prop will be used as a Terminal Emulator (VT100?) using either composite video (TV) or VGA. The PS2 Keyboard will be used but the PS2 Mouse may not. If you do not plan to use the TV or VGA you do not need to fit it's conector and associated resistors. If you do not plan to use the PS2 Mouse you do not need to fit it's connector and associated resistors. To save costs, you may hardwire the links instead of using pin headers and shunts, but the pin headers and shunts provide the most flexibility. The EEPROM (AT24C512) may be omitted if you load the code from Blade/Prop #2, but it is easier to fit this EEPROM.
The SRAM and associated 74HC573 latch will not be required for the time being, so do not bother to fit these at this time. They are for later expansion of memory for higher resolution graphics. The FLASH chip should not be fitted at this time either.
So, this is what I suggest you fit:
- Prop circuit: Fit R11, R12, U12 on the underside of the pcb (first trim the legs as close to the PCB as possible on the component side before soldering). Then fit X11, U11, C11, C12.
- VGA: Fit resistors (mounted vertically at 0.1" pitch) 9, 10, 11, 12, 13, 14, 15, 16. Fit the VGA connector J14 later.
- TV: Fit resistors (mounted vertically at 0.1" pitch) 17, 18, 19, 20. Fit the TV (RCA) connector J15 later.
- KBD: Fit resistors (mounted vetically at 0.1: pitch) 3, 4, 5, 6. Fit the PS2 connector J12 later. When mounting J12 & J13, they share a common mounting hole, so carefully straighten this leg with pliers to make it easier fr both to fit through the hole. Do not solder until both legs are in the pcb.
- Mouse: Fit resistors (mounted vertically at 0.1" pitch) 1, 2, 5, 6. Fit the PS2 connector J13 later. See the comment for KBD connector J12.
- Pin Header LK11: Fit 2x8 Pin Headers (optional). Note if using 2 of 1x8 then hold them together with a few shunts to keep the alignment correct.
- Pin Header LK12: Fit 3x8 Pin Headers (optional). Note you will be using either 3 of 1x8 or 1 of 1x8 and 1 of 2x8. Hold them together with a few shunts to keep the alignment correct.
- Pin Header LK1 & LK2: Fit 2x8 for LK1 & LK2 combined.
- PropPlug: Fit the input connector J11. Ensure correct orientation.
- You may now fit J12, J13, J14, J15.
Recommendation for Blade #2 Assembly:
This Blade/Prop is designed to be the power-horse and use external SRAM. SRAMs can be 128Kx8, 512Kx8 or 2Mx8 (expensive). The 512KB are recommended and it is suggested you fit both (or one with the option of another later). If you will only ever fit one then you do not need to do the modification described in my post above and do not fit the latch U25 or RN1. The FLASH U25 (marked incorrectly as EEPROM on the PCB) is for later expansion.
So this is what I suggest you fit:
- microSD: Fit J22 - carefully solder the mounting lugs first (just the four corners is sufficient). Then carefully solder the pins with a fine tipped soldering iron. Use SMT solder paste if possible. Use solder wick if you need to remove excess solder.
- Note the modification required if using two SRAMs (as detailed below - later)
- Prop circuit: Fit R21, R22, U22 on the underside of the pcb (first trim the legs as close to the PCB as possible on the component side before soldering). Then fit X21, U21, C21, C22. I suggest you consider fitting the larger U22 EEPROM AT24C1024 which costs more.
- SRAM circuit: Fit RN1, U25 on the underside of the pcb (first trim the legs as close to the pcb as possible on the component side before soldering). Then modify U23, U24 (as detailed below - later). Then fit U23, U24, C23, C24, C25.
- PropPlug: Fit the input connector J21. Ensure correct orientation.
Recommendation for Blade #3 Assembly:
This BladeProp is designed for I/O expansion and communication with a PC if required for normal operation.
So this is what I suggest you fit:
- Prop circuit: Fit R31, R32, U32 on the underside of the pcb (first trim the legs as close to the PCB as possible on the component side before soldering). Then fit X31, U31, C31, C32.
- Pin Headers: Fit J33 1x4 (optional), J34 1x8 (optional). Fit LK3, LK4, LK5 3 of 2x2.
- Pin Headers: Decide what connectors you want for J32, J32A, J32B, SS1, SS2. You may not be able to fit/use all of these. Best to leave these off until you decide. If you require +5V on any of these connectors you will need to place a wire link on the underside of the pcb from the 5V hole between SS1 & SS2 and the other end of the pcb 5V hole between J13 & J14.
- PropPlug: Fit the input connector J31. Ensure correct orientation.
Refer to the schematics on posts above, or www.bluemagic.biz/cluso.htm
Modification for SRAMs U23 & U24 to be described here - later. (see picture on discussion on my previous post)
Enjoy - and please post any feedback Links to other interesting threads:
| | Back to Top | | |
 |  Ale Registered Member

       Date Joined May 2007 Total Posts : 1267 | Posted 3/27/2009 11:15 AM (GMT -8) |   | | Hei Cluso, boards arrived, they look geat!. Now I'll have to populate them. SOmething else for tomorrow! | | Back to Top | | |
    |  Ale Registered Member

       Date Joined May 2007 Total Posts : 1267 | Posted 3/30/2009 1:06 PM (GMT -8) |   | I was going to try the ZiCOG source posted on the other thread... I have to modify it for just one SRAM (I only have 1 512K DIP SRAM). I'm also planning on running a 6.55 MHz crystal instead of the regular 5MHz. Some nice boost would be welcomed  | | Back to Top | | |
      |  Dr_Acula Registered Member

       Date Joined Dec 2008 Total Posts : 606 | Posted 4/1/2009 6:48 PM (GMT -8) |   | This is a fantastic project. Every day almost there seems to be some cool progress.
I've got the board but I've been holding off buying parts till all the testing is done. It seems like this is going to work though. The thread seems to have split into two threads and I've slightly lost track of the parts and all the links. Eg some links go to the website http://bluemagic.biz/clusodocs/tribladeprop_a1d.jpg but then there are links that go back to these threads and it is all a bit confusing. I'm sure I saw a parts list somewhere. But then it seems some parts are not necessary? eg on that website above is a photo and two flash chips have not been installed and some ram chips are installed and some are not. Does the terminal prop need a ram chip? And does the middle prop need two or can it run with just one? Sorry about getting confused - I'm sure all the answers are in one of the theads. I did find this on the website "If there is sufficient demand, I may stock a kit of components.". Can I put my vote in for that please! | | Back to Top | | |
 |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/2/2009 1:19 AM (GMT -8) |   | James: I am sorry for any confusion. I have been heavily into getting ZiCog running. Also it's been coming so fast and furios I hav not had enough time to combine all the info in one place.
Above (page 3 of this thread) are two posts answering some questions and assembly suggestions/options. I think this is duplicated on my website www.bluemagic.biz/cluso.htm There are also some extra photos and if you click on them you can also zoom in to get better detail. However, the thread always has the latest info (discussion) but I also post a copy of materials such as Schematics, Parts Lists, Errata, etc on my website.
So far, I haven't fitted any Flash parts and only two days ago fitted (pushed in, not soldered) 1 eeprom which was required for the SD (microSD) driver of Rokiki's to work. Everything else has been fitted to my TriBladeProp except the connectors at the left hand edge because I don't know what I am going to add to them and therefore what pins to fit (multiple options here).
Blade #1 (the Terminal) does not require the SRAM or 74HC573. It is for later as I see getting hires graphics without SRAM will be difficult. If the SRAM is used, there are not enough pins for both the VGA/TV, keyboard and mouse so headers are provided to jump them by cable to Blade #3. I have fitted all the pin headers so that I can use shunts to swap between TV and VGA. I have tested the VGA, TV, and SRAM but not the keyboard and mouse.
Blade #2 (the Brain) does not require both SRAMs but I am recommending the 74HC573 be fitted as it also has outputs to enable the SRAMs, microSD, Flash and reset the other two Props (untested). If you fit the 74HC573 then you must do the modification to the SRAM as detailed on my website (RevA1). If you fit the microSD and/or Flash you also need the 74HC573 and the mod. For the ZiCog I am using the SRAM for the 64KB ram/eprom emulation and the remaining 960KB as a CPM ram disk. The microSd is another group (7-8 or more) of 8MB disk drives. I am trying to host the drives under FAT but don't yet know if this will be fast enough.
Blade #3 (the I/O) does nothing yet, except it works. Ultimately it will talk to the PC and other I/O expansion.
The ZiCog thread contains code and details relevant for getting ZiCog working on the TriBladeProp SBC.
As for kits, at this time there just isn't the demand. Freight is an extra 50%-100% to my parts costs.
I am often on msn and recently on OBC's Propeller IRC. email me and I'll give you my msn address. Links to other interesting threads:
Post Edited (Cluso99) : 4/2/2009 9:29:18 AM GMT | | Back to Top | | |
 |  Dr_Acula Registered Member

       Date Joined Dec 2008 Total Posts : 606 | Posted 4/2/2009 2:29 AM (GMT -8) |   | Wow cluso99, you are going ahead in leaps and bounds. The N8VEM came to life 8 months ago but only now are we even starting to talk about FAT on a SD card.
Thanks for the description. It helps narrow down which bits are the essential bits. Blade 1 and 3 can probably wait for the moment - we know the terminal will work as I've got Vince's Pocketerm running fine (I think that was OBC's code).
So blade 2 is where the action is. Ram drive and SD drive. And all the intricacies of getting the custom bios working etc. I'll look into getting the bits for blade 2, as I need some of those bits anyway for the N8VEM. Are you at the point where it can boot to an A> prompt and then get the full 64k of ram available? | | Back to Top | | |
 |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/2/2009 4:33 AM (GMT -8) |   |
James said... Are you at the point where it can boot to an A> prompt and then get the full 64k of ram available? Was there about 2 weeks ago. I can do a DIR on the 960KB Ram Disk. And yes, other than verify the VGA and TV work I have left the Terminal alone.
The Ram Disk took too long to load from the PC so I started on the microSD a couple of days ago. I now have blank images in the FAT file of 8MB drives (only using the first 128 bytes in a sector so the files are really 32MB) and a 960K CPM image (actually it is 1MB and contains the Z80 64K plus the 960KB CPM image together in 512 byte sectors so I can load quick as it will be preloaded during bootup). I posted them in .rar format on ZiCog last night. I am hoping the sectors within the files are contiguous so I can directly read/write into them. That way I can keep FAT16 meaning we can also boot prop code or whatever, by having PropDos sitting in a layer above.
FYI: I am using the onboard PropPlug emulator to load the code - saves multiple parts. The FT232RL (smt) wasn't too hard to solder with some solder paste and solder wick, even with my aging eyesight. The microSd smt socket was a breeze.
I was going to ask you a couple of questions about CPM last week regarding file sizes and 128/137 byte sectors, etc. I found most of what I needed and will emulate the extra 3+6 bytes for 137 byte sectors if I need to. I wrote a VB6 program to build the 64KB file from the cpm files. I also have an 8MB CPM file which just has the sector number as the first 6? characters followed by "*". A good test program to see that I am reading what I expect. Links to other interesting threads:
| | Back to Top | | |
 |  Dr_Acula Registered Member

       Date Joined Dec 2008 Total Posts : 606 | Posted 4/2/2009 5:40 AM (GMT -8) |   | Goodness me! You have so much working so quickly!
I'm still deep inside the coding for a wireless mesh, with auto discovery of new nodes and auto update of software using xmodem. Also working on ethernet to serial devices, so that a mesh can interface directly to the internet without needing a PC. We had a test link going recently from Canada to Australia so the concept is sound. Soon we should have a BBS system running. The aim ultimately is to be able to log into a home automation network from anywhere on the web, turn on things, sense things etc, but without needing to leave a PC on. Ultimately, nodes should be low power (?battery or solar even) but smart enough to think for themselves, recompile new updates of software etc.
One of the features of wireless is that everyone is sharing the same bandwidth. So you can't type "DIR" into a wireless mesh, because 10 boards will reply at once, and then each one spits out its listing and the whole thing goes epileptic. There are software solutions, essentially involving disabling echo within CP/M and random delays before responding. So sometimes you need to tweak CP/M itself. On a N8VEM this involves making a new eprom, so the prop solution could end up being quicker too. I've also been working on a hardware model of the wireless system, essentially a bunch of RS232 connections all connected together at a single point (but with the correct logic gates as you can't physically just connect them all together). I've also discovered you need more than one RS232 port - in fact I need one for the PockeTerm, one to a PC, one to the wireless transceiver, one to an analog I/O and relay board, and one to a watchdog reset circuit (using a picaxe chip). So that is a 1:5 RS232 router that accepts control signals at 1200 baud, but which can switch at any baud rate. I've just sent that off to be made tonight.
Getting back to what you are doing, ok the N8VEM has CP/M sitting in 16K of eprom and loads that into the top of 64k of ram, and then runs it. That version of CP/M has enough smarts to work out all the drives. I have a vb.net program that can build these eprom images with many different options (12 at present) using simple check boxes. But you still have to then download actual programs at 38400 baud to the drives.
Your model sounds better. Just to clarify, are you just taking a 1meg .bin image off the altair SIMH or whatever, and just emulating that as a total package? IE, CPM plus a whole pile of files. If so, that makes a lot of sense, because it would be much faster to package up and download.
If that is what is going on, I have some vb.net software that can link to the altair simh. It can link in two ways - either by saving a batch file that does a whole lot of things on startup and then starting the simh and running that batch file. Eg - load program x, compile program x, save program x, write program x back to the PC directory. So a compile of C or BASIC becomes a very fast single step operation. The other way to interface to the simh is to run the simh and attach it to a telnet terminal. And then from vb.net, hook into that telnet terminal with a winsock .dll This is done locally, but it probably could be done to another PC on the internet too. This is useful for moving groups of files from a PC directory into a 1 meg (or 8meg) .bin simh image. So you can copy all the .COM files with one keypress. Or all the Wordstar files. Or Basic files. It makes the whole process of creating disk images so much quicker when it is just a checkbox process.
The altair simh only lets you have 8 drives A to H. CP/M can only go to 8meg. But that means a SD card could hold drives A-Z with 8 meg in each =26*8. Ok, maybe a bit less because drive A would be the ram drive.
I'd better keep a close eye on this thread - all very exciting stuff! | | Back to Top | | |
 |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/2/2009 6:39 AM (GMT -8) |   | Very interesting... I have had a quick look a few times at the N8VEM forum. There are two things I would have liked on my board - sound and ethernet. Unfortunately, there is no room and they can be done externally. I saw a part recently that had the whole ethernet in the RJ45 connector - IC as well, serial or SPI out - do you think I can find it again! Like an ENJxxx in a socket.
Your RS232 board doesn't surprise me. Did you think about or are you using a prop for this, or just real gates?
My VB6 program is no where as sophisticated as yours. But it allows me to build the 64KB RAM/EPROM from files and I just added the CPM disk image (converting on the fly stripping the 137 byte sectors into 128 bytes) as well and combined it into a single 1MB file using the whole 512 byte sectors since it is being preloaded by spin/pasm into the SRAM. So it is as you said above. Heater just made me a 960KB drive with the files on it. As I said above, I created a blank file and a file with sectors filled with the sector number in each sector, each 8MB (ie. 32MB) and just copied them, renaming them DRIVE__A.CPM thru to H, and then copied to the microSD which uses FAT16. My board displays these files with code I wrote using the Femto SD Trainer code as the base. I also have an SD adapter and one of my laptops has an SD slot so I can read and write directly to the card 
I think if can get the drives to be files within the FAT16 system, then it will be easy to copy any CPM files required to the SD via FAT and have a spin section that will read them and copy them onto one of the drive files. Then there will be no slow xmodem to worry about. Well, other than your wireless exploits. I am thinking of putting the z80 block move instruction into the driver and heaters ZiCog can just call the other cog directly to do this.
By renaming FAT files, it would be easy to swap hard drives, but I guess there wont be much requiring 8 x 8MB drives anyway.
While writing this I have been running a walking bit code (spin/pasm) through my SRAM to test its integrity - looks good. Links to other interesting threads:
| | Back to Top | | |
     | 849 posts in this thread. Viewing Page : | | Forum Information | Currently it is Friday, November 20, 2009 11:07 PM (GMT -8) There are a total of 393,737 posts in 55,521 threads. In the last 3 days there were 82 new threads and 701 reply posts. View Active Threads
| | Who's Online | This forum has 17687 registered members. Please welcome our newest member, mark09. 54 Guest(s), 3 Registered Member(s) are currently online. Details OakGraphics, Phil Pilgrim (PhiPi), SRLM |
Forum powered by dotNetBB v2.42EC SP2.02 dotNetBB © 2000-2009 |
|
|