Posts

Showing posts from July, 2024

Sent front panel and acrylic insert out for fabrication; wasn't working on my 3D printer

FRONT BEZEL AT THE LIMITS OF MY 3D PRINTER BED Although technically the front panel fits on the bed, it is near the edges in the zone that Creality marks as risky to use. I tried to run off the print several times, but it kept fraying into a spider web of filaments instead of a smooth surface, eventually turning into a giant melted glob of plastic on the nozzle.  SENT OUT FOR FABRICATION, SHOULD HAVE BACK BY MID AUGUST I sent the files out to have them printed by a service. Rather than spending 16 hours on my printer, assuming nothing went wrong, I just have to wait for the completed parts to arrive by post. I laser-cut the acrylic insert through which the LEDs are seen, while the front was 3D printed in white nylon.  BOUGHT A REASONABLE METAL BOX AS THE ENCLOSURE I needed an enclosure to fit the EDUC-8 into, with the front panel being the part that is really visible. I found a metal box on Amazon that was close enough so that it should work. 

Power down button works well, PiDP-10 card configured for a friend

THE POWER DOWN BUTTON CONNECTED TO RPi 5 BOARD WORKS PERFECTLY I wired up the pushbutton to the J2 pads on the Raspberry Pi 5 and tested it out. Indeed, when you push the button twice, it does a proper shutdown and then powers down the Pi. This is the functionality I needed to have in place to support the friend (see below) who will run this strictly as a PDP-10 console replica but never connect over networks to it.  SET UP SD CARD FOR A FRIEND WHO BOUGHT A PRE-BUILT PiDP-10 I configured the latest 64 bit Debian Linux for the Raspberry Pi, set it up for the east coast of the US, and installed the PiDP-10 software on it. Testing it on my kit, I ran the replica in the same way as the friend, using the button on the rear to safely power down at the end of my test.  The friend has received a pre-built PiDP-10 product. He bought a Raspberry Pi 5 to stick inside to power it, but didn't have the monitor, keyboard, or network terminal access to do the configuration himself. I set up a...

First cut at a power-down button for PiDP10 fails, but I see a clear route to a different solution

REPLICAS LIKE THE PiDP10 MAKE USE OF A RASPBERRY PI RUNNING LINUX The base for these replicas is a version of the simh simulator running under Linux on a RPi, with the blinking lights and switches of the replica tied into the simulator. Like any machine running Linux, the coherence and integrity of file systems depends on all changes getting flushed out to permanent storage, in this case an SD card.  A sudden drop of power can therefore result in a corrupted file system. Files can disappear, startup can be delayed by the need to attempt recovery with programs such as fsck , and over time it can lead to an unbootable system. The right way to avoid this is to do an intentional shutdown of Linux, which flushes out all buffers and thus ensures file system integrity.  REPLICAS ARE OFTEN RUN WITHOUT A MONITOR AND KEYBOARD ATTACHED TO THE PI This headless operation may involve the user connected via SSH, Telnet or serial terminal connections from another computer or terminal. In that...

Final handles printed, all installed, and first of two PCB support brackets printed

KEPT THE PRINTER GOING TODAY SPITTING OUT EDUC-8 PARTS The final handles were completed today. All the handles are on the PCBs now which really makes the insertion and removal of cards much easier. The look nice too.  Their are two brackets that sit between the front panel and main connector board, with holes on the side to screw into the enclosure and hold everything together. One of the two was printed today and I did a test fit. Tomorrow I will print the other bracket and get them installed.  I have a Freecad file for the front panel but was warned that I will have to adjust cutouts for the switches before it will fit properly. Given the fifteen hours it will take to 3D print the part, I want it to be correct. 

Two more handles printed; installed the handles I have on EDUC-8 PCBs

ONLY NEED THREE MORE HANDLES FOR THE MACHINE, THEN TWO BOARD MOUNTS I am getting nearer the end of the 3D printing effort, with two more handles printed this afternoon and only three more before I am all done with them. I anticipate finishing tomorrow. I then have two mounts to print that will hold together the front panel and motherboard such that it can be mounted into an enclosure.  HANDLES INSTALLED ON THREE BOARDS, STARTING ON THE FOURTH With the two handles on each board, it is so much easier to pull them out or push them into the motherboard connectors. The handles also provide the vertical spacing between boards that ensures that one board doesn't short against another. 

Short visit and another handle printed

 ONLY HAD A TWO HOUR WINDOW IN THE SHOP I made use of the time to fire up the printer and produce another handle, as this takes about 90 minutes. There is an 11 minute period where the printer brings the head and base to temperature and then does its alignment work. I also want a bit of time for the head to cool down a bit before I turn off power which will stop the cooling fan.

Still unclear how I will proceed on PiDP10 power switch hack; printed three more PCB handles for EDUC-8

HAD A SUGGESTION HOW TO RESOLVE KEYSWITCH ISSUE One of the other builders of this kit saw my post about the inability of the modern USB-C power supplies to provide power to a 'dumb' receptacle because they need to negotiate voltage and current with the device they will power.  He mentioned that the Raspberry Pi 5 has a jumper which can be momentarily shorted to act like the 'Power on' button of the Pi. This is not the same behavior as expected with the hack - switch turns on machine while the key is in one position and turns off when put in the other position. The jumper can cause the machine to power up if it has been powered down before, but it won't cause it to power down. Further, it can't be continuously shorted by the switch turned to the On position, instead it should be a short connection.  ONE OPTION IS TO BUY ANOTHER POWER SUPPLY BUILT FOR 5V DUMB CONNECTIONS If I buy a supply that only provides 5V and does not engage in the protocol negotiation like s...

Printing the PCB handles, one and a half hours at a time

EACH HANDLE REQUIRES ABOUT 90 MINUTES TO COMPLETE This includes the time heating up the printer and a bit of cool down before I remove the finished part. There is a trivial amount of time to add some more glue to the bed before the next print.  Since I have completed three of a total of twelve that are required, I have about 14 hours of print time ahead.  ADDITIONAL CONSTRAINTS ON WHEN I CAN PRINT Since I don't want anything plugged in or working when I am out of the shop, this further constrains the printing as I can't start one if I will be leaving in less than 90 minutes. Before the end of the week, in any case, they will all be done

Tried to add hack suggested for PiDP10 to add a power keyswitch and USB power connection

ONE OF THE HACKS SUGGESTED IS TO ADD A POWER KEYSWITCH The holes are already provided on the back panel for a 12mm keyswitch and for a USB-C receptacle for power. The main PCB has a spot to add connectors to wire these up, after which the power comes from the receptacle, switched by the keyswitch, and feeds the Raspberry Pi through the GPIO pins.  When I removed the USB-C power supply from the RPi and moved it to the new receptacle, nothing happened. No power at all. I grabbed another of the USB-C receptacles I bought, hooked it to a VOM and plugged in my charger. Still nothing. REALIZATION - USB-C POWER IS A SMART PROCESS I did a bit of reading and realized that USB-C will negotiate with the device to which it is plugged, agreeing on the voltage required and the current capacity of the USB source, before energizing the power lines. Indeed, it is capable of operating at multiple voltage levels as well as current capacities.  My charger from the RPi shows that it is capable of ...

First handle printed - need eleven more

Image
SUCCESS PRINTING HANDLE FOR PCB Each PCB requires two handles and their are six total PCBs in the EDUC-8 thus I need a total of 12. The first one came out great but it did take about an hour and a quarter to print.  I have a two to three days of steady printing during the times I am in the workshop before I have all the handles complete. I then have two side brackets that hold the main PCB in its vertical orientation inside a case - these will take about a half day to print. 

3D printing handles and brackets for the EDUC-8 computer

PUTTING MY CREALITY CR-10S PRO TO WORK PRINTING PARTS FOR THE COMPUTER The various PCBs that comprise the computer are supported by a plastic holder and the ends of the board have plastic handles, similar to those used on DEC flip-chip modules, to facilitate insertion and removal. Gwyllym Suter provided files for these parts, which I am using to finish the machine. There is an acrylic plate that covers the lights and surrounds the switches of the machine. I will make this with a laser cutter in the coming days. That combined with a metal enclosure will complete the system, at least until I build some peripherals to use with it. 

Repaired the switch defect, now enjoying the PiDP10

FOUND A SHORT BETWEEN ADJACENT DIODES ON THE SWITCH MATRIX It was not obvious at all looking through the stereo microscope, but a continuity tester verified that it was indeed a short between two very close leads on the PCB. I resolved the issue, tested the switches and now it works just fine. APPLYING ONE HACK TO THE KIT The kit came with holes to place a keyswitch and a USC C female power socket on the back panel and solder points on the main PCB. This allows me to plug the USB supply in the rear and use the keyswitch to power on the Raspberry Pi. POWER OFF STILL REQUIRES CARE, NOT JUST THE KEYSWITCH The DEC software needs to shut down in an orderly manner to protect the integrity of its filesystems. This is done for ITS by issuing the 5down command, which shuts down in five minutes. Wish it was quicker but that is a possible hack for the future. Then, the Linux system on the Raspberry Pi has to be shut down in order to protect the integrity of the Linux file systems, using shutdown ...

Finished building PiDP-10 kit; fixing one switch mounting and replacing one failed LED as my last actions

SOLDERED 74 SWITCHES ONTO THE PCB AND TESTED THEM FOR CORRECT OPERATION This took some time as I had to first organize the switches into five groups and then for each switch position make sure I installed from the proper group. They are dark blue, light blue and light green on/on toggle switches plus light blue and light green momentary on toggle switches.  One of the mounting tabs is soldered first to hold all the switches loosely on the PCB. Then each tab is heated and the switch manually pressed down and arranged to form clean lines with symmetry. Once they are positioned, then the center and normally open contacts are soldered to the board; finally, the bottom mounting tab is soldered to give the switch extra mechanical support. The test software shows which switches are activated, allowing me to check that every one worked properly.  ASSEMBLED ENTIRE KIT AND FIRED UP THE DEC SOFTWARE I stacked the acrylic panel in front of the LED board and attached that to the front beze...

Possible anomaly with chip sent with piDP10 kit

FOUND TBD62783APG CHIP IN LIEU OF UDN2971A IN THE BAG OF PARTS The kit does list the part as UDN2981A or equivalent, and the data sheet does match the type of chip and the pinout. Because it was a completely different part number, I tried to test it with my Retro Chip Tester Pro, which had an entry for UDN2981x in its menu. TESTER FAILED THE CHIP The tester reported that the chip failed, but I am not completely comfortable with the reliability of the tester for this part. Since I will be testing my kit tomorrow anyway, I will wait until the results of that before I investigate this further.  If the kit doesn't seem to work, I can put the chip on my breadboard tester and test it myself. It is an eight circuit darlington driver. Thus I should be able to drive LEDs with the outputs and switch them on and off by the input provided. 

Set up RPi with software and have kit ready for first testing

GOT SYSTEM READY FOR PiDP10 KIT With the cable to connect my monitor to the Pi, I booted up and configured the system. I then downloaded the PiDP10 software and installed it. The system is now ready to be connected to the kit and run tests. LEDS SOLDERED, CONNECTORS ADDED AND BOARDS CABLED TOGETHER I soldered the 126 LEDs then clipped all the leads. The connectors went on the two boards after which the ribbon cable was attached. As well, I inserted the ICs into the sockets and put on the mounting hardware for the RPi.  TESTING OF THE LIGHTS AND SWITCH CIRCUITRY AHEAD The maker of the kit provides a test program that will illuminate all the LEDs on the front panel. It also displays the state of the switches. Since the switches are not yet inserted or soldered onto their board, the value read should be 0 for every switch. Using wire to bridge the contacts of each switch position on the PCB, the software should so that position turn to 1.  NEXT STEPS AFTER THE TESTING Assuming th...

Got my PiDP10 kit and began building it

PREPARING RASPBERRY PI 5 REQUIRED UNEXPECTED CABLE I imaged the latest 64 bit OS for the new RPi 5 and prepared to start it up so that I could download and install the PiDP10 software. However, I quickly discovered that they had moved to micro-HDMI connectors so that my display cable won't fit.  I ordered the micro to full size HDMI cable as well as the 27W (!) power supply now required for the RPi 5. When I get them in a couple of days I will load the software and prepare the system to be mounted into the PiDP10.  SOLDERING PARTS ONTO THE KIT Today I soldered 75 diodes, 26 resistors, 3 IC sockets and an RPi header onto the circuit boards. I then placed 124 LEDS into the PCB, placed the LED holder panel atop them and set it up at my soldering station. Tomorrow I will solder them down, ensuring they are nicely lined up. WHAT ELSE GOES INTO THE KIT? In addition to a few connectors and some mounting hardware, the main components that need to be placed and soldered are the 74 rock...

Built and tested crowbar circuit, corrected issue in power supply and verified it works exactly as it should

CROWBAR CIRCUIT IS A MODERN ADDITION TO THE POWER SUPPLY A crowbar circuit and card was designed to add to the power supply, forcing a dead short if the output voltage exceeds 6.2V. The powers supply has a fuse added into the secondary circuit, which will blow if the crowbar trips.  The PCB set I bought had a power supply board but not a crowbar board. I used some perfboard to solder together the circuit, which is only a Zener diode, capacitor, resistor and two SCRs in parallel. The way it wires into the power supply is odd, with very thin traces supporting the short circuit current if the crowbar were to trip.  Furthermore, the power supply board is designed to only work when cabled to the missing crowbar card, but the schematics are out of date and don't show the connectors involved. For example, the connector bringing the full 11V DC to the crowbar card is two wires, but they are only bridged on the crowbar card. Without it connected, the power supply will not work properly...

Suspect slightly tarnished chips changed out on A board; EDUC-8 now working properly

LOOKING FOR SLIGHTEST HINT OF COLD SOLDER JOINTS I found a few chips that were much better than the ones I had replaced on other boards, but these were the very chips involved in the logic chain that clocks the accumulator (AC) shift registers, where I was seeing the erroneous behavior. I pulled them, cleaned the leads of two using a method suggested by Gwyllym Suter, and put in a brand new chip in place of the third. The solder joints looked perfect so I restacked the card into the EDUC-8. MACHINE WORKING PROPERLY The bad behavior where the AC was being wiped out by instruction fetch activities was gone! I entered quite a few instructions into memory and ensured that they produced the proper results. I then toggled in the test program suggested in the article, which clears the accumulator and then counts up to 256 before halting.  It worked just as it should. The machine is, as expected, painfully slow in operation but working just as it would have if I had built it in the 1970s f...

Memory working, power supply load tested, narrowing in on issue with the A board

Image
MEMORY WORKS CORRECTLY ON THE EDUC-8 I can deposit values into selected memory locations and see the properly when I go back and do an examine of the location. I set up a short program or two which executed properly (except for the A board issue below).  ACCUMULATOR BOARD PROBLEM The A board houses the accumulator. The EDUC-8 is a bit serial machine, so that a 'bus' is a single signal with multiple open collector sources. The machine has four of these - A bus, B bus, C bus and D bus - which are used as source and output of bit streams at various points during execution. The accumulator (AC) register is constructed a shift register, given the bit serial nature of this machine. The input to the shift register is the A bus and when it is clocked it shifts in the bits to update the AC. The logic on the A board determines when pulses are applied to the shift register to cause it to update from the A bus.  The updates should be during execution phases of instructions that are changi...

Replaced all chips that had tarnished legs and iffy solder joints; behavior is much better but not perfect

INCREMENTING AC SEEMS TO INCREMENT IN BOTH FETCH AND EXECUTE PHASES This points to a timing or decoder signal not getting to the gates determining when to do the increment operation on the accumulator. In general the incrementing seems more reliable and the PC was stepping in single word increments before I added the memory board to the stack. MEMORY BOARD ADDED INTO THE STACK I decided to insert the memory board after removing the temporary wires from the front panel entry keys that had been driving the memory buffer (MB) register. I tried to do some deposit and exam operations, to check whether memory was working, as well as running instructions from there. The PC no longer increments when doing any fetches. It cannot be loaded with a non-zero value. The memory contents show up in the MB as all one bits or sometimes half ones and low order zero bits. When I execute an instruction, it believes it is a TAD (op code of 000), which is not what I would expect when the MB claims to have al...