This is an old revision of the document!


/* Imported from Wayback Machine

 Original URL : https://www.retrobrewcomputers.org/doku.php?id=builderpages:speed3ple:ecb-4pio-r04
 Snapshot date: 2025-12-16
 Generator    : wayback-archiver

*/

ECB 4PIO r04

Update 16.Apr.2021: I checked the errata again and did some more fix + tests. I still have some weird outputs on a few ports. (more details below)

To enable the 4PIO board in RomWBW: I used the following settings in the .\RomWBW-v3.0.1\Source\HBIOS\Config\SBC_std.asm to compile the ROM for the SBC CPU board:

PIO_4P .SET TRUE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD
PIO4BASE .SET $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD


Se the boards excellent documentation home page for details, as I could have made some mistakes here.

Also: There is a newer version of this board in development by user b1ackmai1er!

Note errata here : [[boards:ecb:4pio:r04]]

Text Images

4PIO R04 board completed. Jumper set for 90h

I didn't have a IDC 18pins connector in my parts bin, so had to make custom thing in the relay board end.

|\\ Coming up: controlling 220v lamp with Z80 SBC/4PIO!                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|\\ \\ R04 version:\\ \\ A small adjustment of 1.2mm is needed to get the ECB connector in line with hole\\ \\ \\ Tip: When using a IDC connector, I had to cut the corner of the plastic frame for the 26pin connector or it conflicts with the PIO chip it self (The chip is slightly longer than its socket). It's a very tight space with a full 40pin chip(52mm) and a 26pin IDC(41mm) on the ECB board (b=100mm).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |{{[[lib:plugins:ckgedit:fckeditor:userfiles:image:builderpages:speed3ple:images:img_20210306_144514small.jpg]]                                                                                                                                                                                                                                                                                                    |
|\\ \\ \\ \\ Thanks to very helpful info from b1ackma1ler, i checked the schematics and did some modification to the pcb and it started to respond!\\ \\ Pin 2 and 3 for IC7 is switched on the pcb, so that's probably why I struggled to get this board to respond. {{[[lib:images:smileys:icon_smile.gif|:-)\\]]
The IC7 is the 74ls139(Dual 1of4 decoder) 2bit in, 4 bit out.

Instead of lifting the pin5(IC7A - O1), I chose to cut/isolate the pin by cutting the pcb trace on the underside of the board. Pin6(IC7A - O2) is connected to pin15(IC7B - E) by wire.

Schematics: pin2 = A0, pin3 = A1, pin5 = O1

PCB: pin2 = A1, pin3 = A0, pin6 = 02 (mods)

74ls139 truth table:
\\ {{[[lib:plugins:ckgedit:fckeditor:userfiles:image:builderpages:speed3ple:images:img_20210415_200324small.jpg]] \\ {{[[lib:plugins:ckgedit:fckeditor:userfiles:image:builderpages:speed3ple:images:img_20210415_200425small.jpg]] |\\ \\ Address setting:\\ The jumperblock(JP4) is for setting the board address.\\ \\ \\ To set the board to an address of 90h:\\ Convert 90 hex→binary: “10010000”. The highest 4 bits(“1001”) is AB7-AB4.\\ \\ The “1” is the same as no jumper(See schematics R9-R12 - this is pullup resistors to 5v+).\\ \\ For an address setting of 90h, the jumper setting would be: (Se image)\\ \\ AB4 = No jumper = 1 (Lifted to 5V by pullup resistor)\\ AB5 = Jumper installed = 0 (Grounded by jumper)\\ AB6 = Jumper installed = 0 (Grounded by jumper)\\ AB7 = No jumper = 1 (Lifted to 5V by pullup resistor) |{{[[lib:plugins:ckgedit:fckeditor:userfiles:image:builderpages:speed3ple:images:img_20210412_102924small.jpg]] | |\\ \\ Me playing with relays!\\ \\ The test program “piociots 1” makes the relays shift on/off in a pattern. Since there is no 12V power connected at this time, the relays doesn't really click fully on/off, but there is a sound there and the control LEDs are blinking.\\ \\ \\ \\ {{[[lib:images:smileys:icon_exclaim.gif|:!:\\]]
During testing, I noticed something strange about the A5-A7 ports that I can't seem to understand. Maybe a glitch somewhere? Bad connection? Speed issue? Will investigate more about this.


builderpages/speed3ple/ecb-4pio-r04.1765852154.txt.gz · Last modified: (external edit)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0