Having a little trouble bringing blinky lights back to life

636 views
Skip to first unread message

Andrew Silverman

unread,
Sep 24, 2021, 4:52:48 PM9/24/21
to [PiDP-11]
So my PiDP11 had been left in my office for, well, the entire pandemic.  I just went in to pick it up and I'm now trying to bring it back to life.  The boot partition had been corrupted at some point, so I created an all new card with the latest RPi OS, and then followed the site instructions to redownload all of the PiDP11 packages and system images.

The system is clearly up and running, and I can see output in the terminal on my PC, and I can get it to boot the desired image by setting the front panel switches.  I can also use the lamp test switch and all LEDs light as expected.  However, none of the Address or Data LEDs blink the way they used to, either in the Blinky or IDLED images - I do get the ConsPhy, Data Paths, and Kernel LEDs, and those first two rotate around as expected with the rotary switches.  However I get no parity, Address, or Data LEDs regardless of what I do.

Does anyone have any idea why I'm not getting any blinky light output here?

Thanks,
Andy

Heinz-Bernd Eggenstein

unread,
Sep 24, 2021, 6:43:53 PM9/24/21
to [PiDP-11]
That sounds like most everything is ok, but the communication between the process controlling the blinkenlights and the SIMH process is not working. Strange.

So after you installed the latest RPi OS from an install image (this is currently  the version codenamed "Buster") you will want to get it to up-to-date with all the chages since the  install image was created, just to be sure (and reboot afterwards).

Usually this is done with
sudo apt-get update
sudo apt-get upgrade

But since Debian recently switched Buster to "oldstable" and the brand new "bullseye" to "stable", this won't work anymore. E.g. see https://www.raspberrypi.org/forums/viewtopic.php?t=318302 , long story short, you need to use

sudo apt-get update --allow-releaseinfo-change

instead of " sudo apt-get update " just once.
OK, so after you made sure the new Raspberry Pi OS is really up to date, does the problem persist?

HB

Anton Lavrentiev

unread,
Sep 24, 2021, 7:03:20 PM9/24/21
to Heinz-Bernd Eggenstein, [PiDP-11]
There used to be a script to check the pidp11 hardware without the whole shebang of simh and rcp server... I guess it'd be easier to start with that to see if everything is okay on the hardware part first.... Could be that some soldering corrosion happened during the year+ of the system being left alone?  Hope you'll be able to find it quickly!
Good luck

--
You received this message because you are subscribed to the Google Groups "[PiDP-11]" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-11+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pidp-11/811c8a26-364d-48a6-9fdd-45aa094cd9ban%40googlegroups.com.

Dave Johnson

unread,
Sep 24, 2021, 7:06:54 PM9/24/21
to Anton Lavrentiev, Heinz-Bernd Eggenstein, [PiDP-11]
Something that might be worth checking is the insulation on top of the USB jacks — if the pins have managed to poke through while sitting in the car it could cause issues 

  -- ddj
Dave Johnson

On Sep 24, 2021, at 7:03 PM, Anton Lavrentiev <anton.la...@gmail.com> wrote:



Andrew Silverman

unread,
Sep 24, 2021, 7:34:17 PM9/24/21
to [PiDP-11]
I had already done the update/upgrade when I wrote the original note, but not the --allow-releaseinfo-change.  So I just did that and there were no un-upgraded packages afterwards, so no net change.

Andrew Silverman

unread,
Sep 24, 2021, 7:49:59 PM9/24/21
to [PiDP-11]
Re: insulation, good thought, but doesn't appear to be the issue.

Andrew Silverman

unread,
Sep 24, 2021, 7:53:23 PM9/24/21
to [PiDP-11]
I found the test.py script in the installation directory and ran that.  It was able to sequence through every LED correctly without a problem, although the script fails with a python error when it reaches the switch tests, I suspect it's probably a Python 2->Python 3 thing.  However, I know it's reading switches correctly.

So I think we can rule out a hardware problem at this point - I can only think that we're looking at some kind of software error since everything was installed completely fresh today from the official OS image downloader (then updated per above), and the tar.gz's from the PiDP site (and the install script ran successfully). Still scratching my head!

Neil Higgins

unread,
Sep 24, 2021, 8:04:19 PM9/24/21
to [PiDP-11]
Andy, your PiDP has COVID - probably picked it up from a Telephone Sanitiser. Wrap it up in a soft blankie, let it recuperate for a couple of weeks, and all should be well. ;-)

If that doesn’t work, I’m suspecting (absent a schematic to look at) a dry joint on the line driver IC. Have look with a magnifying glass for a dull or cracked-looking solder joint.

Andrew Silverman

unread,
Sep 24, 2021, 8:35:13 PM9/24/21
to [PiDP-11]
I am thinking that perhaps the issue is solder related in that the blinky duty cycle may be encountering too much resistance to light the LEDs but when on solidly in the test script it's enough to get them to light.  I think that'll be my next avenue of investigation.

Thanks folks-

Heinz-Bernd Eggenstein

unread,
Sep 25, 2021, 4:19:59 AM9/25/21
to [PiDP-11]
> I am thinking that perhaps the issue is solder related

I doubt it, I think the hardware is just fine. The test.py code manipulates the GPIO pins directly to test the PiPD-11 PCB, and this seems to work just fine. What is not working tho is SIMH driving the LEDs , after an OS  software update, which could be caused by a problem with the remote-procedure-call subsystem.

So if you are otherwise running out of options, my instict would be to restore the thingy to the state in which it worked last time ==> try re-install on a separate SDcard with an older version of Raspbian (if only to exclude a hardware problem). You can find pre-pandemic images of Raspbian  here :  http://downloads.raspberrypi.org/raspbian/images/

 Good luck!

Cheers
HB

Andrew Silverman

unread,
Sep 25, 2021, 12:40:00 PM9/25/21
to [PiDP-11]
Well, I tried going back to the first available Buster image (2020-02-13) and I see the same behavior.  Kernel/Cons Phy/Data Paths light when the sim is running the blinky but none of the A/D LEDs.  And even those three are just a tiny bit dim/flickery.  So why would RPC work for some but not others?  I think I'm back to my original theory and am going to investigate the solder integrity.  I can also scope the un-lit LEDs and see whether there's any signal reaching them to help verify, if I get desperate.

Johnny Billquist

unread,
Sep 25, 2021, 1:26:05 PM9/25/21
to pid...@googlegroups.com
Didn't you say the lamp test worked?

Johnny
> --
> You received this message because you are subscribed to the Google
> Groups "[PiDP-11]" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pidp-11+u...@googlegroups.com
> <mailto:pidp-11+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pidp-11/a3ed5ad7-c234-47df-b8d5-1669b6238248n%40googlegroups.com
> <https://groups.google.com/d/msgid/pidp-11/a3ed5ad7-c234-47df-b8d5-1669b6238248n%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: b...@softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol

Andrew Silverman

unread,
Sep 25, 2021, 1:34:25 PM9/25/21
to [PiDP-11]
Yes - the lamp test works and so does the Python test script.  When the sim is isn't running the lamp test doesn't work, so I suppose it seems conceivable that this is really still software.  I think I may try an even older Wheezy image or something.  Is anyone running Buster successfully? I have to imagine someone would've said something in the last year if it wasn't working.

Johnny Billquist

unread,
Sep 25, 2021, 2:07:15 PM9/25/21
to pid...@googlegroups.com
Then it obviously can't be a soldering issue. The lamp test operates the
lamps in exactly the same way as the normal running system.

Seems to me it has to be something in the connection between
simh and the server that deals with the front panel.

Johnny
> <https://groups.google.com/d/msgid/pidp-11/a3ed5ad7-c234-47df-b8d5-1669b6238248n%40googlegroups.com?utm_medium=email&utm_source=footer
> <https://groups.google.com/d/msgid/pidp-11/a3ed5ad7-c234-47df-b8d5-1669b6238248n%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>
>
> --
> Johnny Billquist || "I'm on a bus
> || on a psychedelic trip
> email: b...@softjar.se || Reading murder books
> pdp is alive! || tryin' to stay hip" - B. Idol
>
> --
> You received this message because you are subscribed to the Google
> Groups "[PiDP-11]" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pidp-11+u...@googlegroups.com
> <mailto:pidp-11+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pidp-11/f84fb21f-d83f-46fc-bd65-050352cd6854n%40googlegroups.com
> <https://groups.google.com/d/msgid/pidp-11/f84fb21f-d83f-46fc-bd65-050352cd6854n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Andrew Silverman

unread,
Sep 25, 2021, 2:29:30 PM9/25/21
to [PiDP-11]
If it is, then I'm totally confused as to what the problem could be.  I went all the way back to a clean Stretch image from 2018-10-09, copied everything on and installed the sim (had to rebuild the client because it expected a newer version of GLIBC), and _still_ no blinkies on the A/D leds, but lamp test works and the top row/dial leds too, all switches work.)  Sad now. :(

Happy Bear

unread,
Sep 25, 2021, 4:09:12 PM9/25/21
to Andrew Silverman, [PiDP-11]
Suggest you check the voltage @ the LEDs. Maybe its just not high enough to light them.

ted

To unsubscribe from this group and stop receiving emails from it, send an email to pidp-11+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pidp-11/84155241-2e9e-4ecd-93f6-718206de46can%40googlegroups.com.

Andrew Silverman

unread,
Sep 25, 2021, 8:21:05 PM9/25/21
to [PiDP-11]
The lamp test works - all LEDs come on simultaneously.

Johnny Billquist

unread,
Sep 25, 2021, 8:30:52 PM9/25/21
to pid...@googlegroups.com
Then the test switch wouldn't/shouldn't work either. Then all lamps go on.

Johnny

On 2021-09-25 22:09, Happy Bear wrote:
> Suggest you check the voltage @ the LEDs. Maybe its just not high enough
> to light them.
>
> ted
>
>> On Sep 25, 2021, at 11:29, 'Andrew Silverman' via [PiDP-11]
>> <pid...@googlegroups.com <mailto:pid...@googlegroups.com>> wrote:
>>
>> If it is, then I'm totally confused as to what the problem could be.
>> I went all the way back to a clean Stretch image from 2018-10-09,
>> copied everything on and installed the sim (had to rebuild the client
>> because it expected a newer version of GLIBC), and _still_ no blinkies
>> on the A/D leds, but lamp test works and the top row/dial leds too,
>> all switches work.)  Sad now. :(
>>
>> On Saturday, September 25, 2021 at 11:07:15 AM UTC-7 b...@softjar.se
>> <https://groups.google.com/d/msgid/pidp-11/f84fb21f-d83f-46fc-bd65-050352cd6854n%40googlegroups.com?utm_medium=email&utm_source=footer
>> <https://groups.google.com/d/msgid/pidp-11/f84fb21f-d83f-46fc-bd65-050352cd6854n%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>>
>>
>> --
>> Johnny Billquist || "I'm on a bus
>> || on a psychedelic trip
>> email: b...@softjar.se || Reading murder books
>> pdp is alive! || tryin' to stay hip" - B. Idol
>>
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "[PiDP-11]" group.
>> To unsubscribe from this group and stop receiving emails from it, send
>> an email to pidp-11+u...@googlegroups.com
>> <mailto:pidp-11+u...@googlegroups.com>.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/pidp-11/84155241-2e9e-4ecd-93f6-718206de46can%40googlegroups.com
>> <https://groups.google.com/d/msgid/pidp-11/84155241-2e9e-4ecd-93f6-718206de46can%40googlegroups.com?utm_medium=email&utm_source=footer>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "[PiDP-11]" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pidp-11+u...@googlegroups.com
> <mailto:pidp-11+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pidp-11/FCF3B7BF-1DEF-4011-91C3-D8B3B1848064%40gmail.com
> <https://groups.google.com/d/msgid/pidp-11/FCF3B7BF-1DEF-4011-91C3-D8B3B1848064%40gmail.com?utm_medium=email&utm_source=footer>.

Andrew Silverman

unread,
Sep 25, 2021, 11:15:33 PM9/25/21
to [PiDP-11]
Most recent update: I downloaded the full Blinkenbone source from github so that I could compile the server API test app, and I have verified that it is able to connect to the server and turn on any of the LEDs including the ones not working with SimH.  This leaves me at a bit of a loss, since it seems that the hardware is perfectly fine.

I also tried downloading an older copy of the pidp11 tar to see whether perhaps there had been a more recently introduced bug, but didn't find any differences in behavior there.

So in summary:  Hardware seems fine. No matter how new or old the OS image is, or the pidp11 tar, the A and D LEDs refuse to light from SimH.  I also note that the Halt switch on the panel does not halt the simulator, but the state of the switches can be read fine when SimH is paused and you ask for the realcons status.  So all I can think at this point is that the RPC communication between SimH and the realcons panel is borked, but I have no idea how to troubleshoot further - is it environmental to the OS setup in some fashion, or is it a bug in SimH?  I find the latter hard to believe, since nobody else is having the same problem that I am.  Very frustrated...

Erik Hanson

unread,
Sep 25, 2021, 11:57:07 PM9/25/21
to [PiDP-11]
Just to rule something out, is the power supply fine? Is it the same power supply as before? If powering the PiDP board via the RPi, it could be that while the RPi is idle there's enough current and test programs, lamp switch, are fine... but while simh is running (loading down the CPU) the voltage sags. RPi power supplies tend to be 5.35vdc, for example, to compensate for high CPU load where a generic/cheap 5vdc supply will droop. I'm not sure I believe this is your issue any more than the cold solder joint idea, but it's something to think about, and cross off the list of possibilities.

Hope you figure it out.

Andrew Silverman

unread,
Sep 26, 2021, 12:17:50 PM9/26/21
to [PiDP-11]
Yeah, pretty sure that's not it. (Same PSU as before, lamp test lights everything up just fine with sim running, etc.)  Since the events occurring on the panel are those handled within the realcons server itself I'm becoming increasingly convinced that there is some kind of communication failure between SimH and the server, but there's nothing obviously wrong within SimH's show/set commands to the server. :-/

Andrew Silverman

unread,
Sep 26, 2021, 12:45:50 PM9/26/21
to [PiDP-11]
In case it helps anything, I started the realcons server with the option to log to the journal and I can see that it's clearly getting connected over RPC and enumerating the various controls, and then after two rounds of "getcontrolvalues" followed by "setcontrolvalues", it goes into an endless loop of reading the control values.  Perhaps that much is normal.  However, I don't see anything that indicates that other APIs are being called to update any of the LED states at any time.

Example:

Sep 26 09:38:01 pidp11 blinkenlightd[7008]: Start
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=11/70, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=SR, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=1)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=LAMPTEST, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=2)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=LOAD_ADRS, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=3)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=EXAM, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=4)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=DEPOSIT, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=5)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=CONT, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=6)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=HALT, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=7)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=S_BUS_CYCLE, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=8)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=START, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=9)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADDRESS, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=10)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=DATA, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=11)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=PARITY_HIGH, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=12)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=PARITY_LOW, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=13)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=PAR_ERR, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=14)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADRS_ERR, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=15)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=RUN, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=16)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=PAUSE, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=17)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=MASTER, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=18)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=MMR0_MODE, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=19)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=DATA_SPACE, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=20)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADDRESSING_16, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=21)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADDRESSING_18, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=22)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADDRESSING_22, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=23)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADDR_SELECT, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=24)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=DATA_SELECT, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=25)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=ADDR_SELECT_FEEDBACK, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=26)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=DATA_SELECT_FEEDBACK, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=27)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=PANEL_LOCK, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=28)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.name=POWER, ...
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=0, i_control=29)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   i_control > controls_count
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanelinfo(i_panel=1)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   i_panel > panels_count
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_setpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[9].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[10].value = 0x0 (2 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[11].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[12].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[13].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[14].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[15].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[16].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[17].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[18].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[19].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[20].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[21].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[22].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[25].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[26].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_setpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[9].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[10].value = 0x0 (2 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[11].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[12].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[13].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[14].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[15].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[16].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[17].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[18].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[19].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[20].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[21].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[22].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[25].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:    control[26].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]: blinkenlight_api_getpanel_controlvalues(i_panel=0)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[0].value = 0x0 (3 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[1].value = 0x1 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[2].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[3].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[4].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[5].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[6].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[7].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[8].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[23].value = 0x4 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[24].value = 0x2 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[27].value = 0x0 (1 bytes)
Sep 26 09:38:13 pidp11 blinkenlightd[7008]:   result.values[] += control[28].value = 0x0 (1 bytes)


Heinz-Bernd Eggenstein

unread,
Sep 28, 2021, 10:44:35 AM9/28/21
to [PiDP-11]
I think it might be useful to enable the debug output in the CLIENT as well, because that's where the problem seems to be.

I've never done that, but it is as simple as including / uncommenting

set realcons debug

in the boot.ini file used by the respective simh configuration , uor even interactively after escping to the simh prompt from the emulation, right?

Best
HB

Heinz-Bernd Eggenstein

unread,
Sep 28, 2021, 11:07:53 AM9/28/21
to [PiDP-11]
Oh, and while you are already at the simh prompt (after CTRL-E) , you could also try

show realcons

which will at least check whether simh considers itself connected to the blinkenlight API server, or not.

Cheers
HB

Andrew Silverman

unread,
Sep 28, 2021, 4:21:50 PM9/28/21
to [PiDP-11]
It's absolutely connecting to the API server.  Just a question to anyone for whom things work normally: When you do "set realcons test" from the SimH prompt, do the LEDs do a lamp test for you?  For me they do not, but the console shows the values of the switches that it has read normally and correctly.

Andrew Silverman

unread,
Sep 28, 2021, 4:29:59 PM9/28/21
to [PiDP-11]
Also, as to debug output from realcons:  I see corresponding events that seem to match with the activity from the API server's debug log output.

A bunch of "realcons_console_pdp11_70__event_operator_exam" at startup, followed by 
realcons_console_pdp11_70__event_cpu_reset
realcons_console_pdp11_70__event_operator_reg_exam_deposit
realcons_console_pdp11_70__event_operator_reg_exam_deposit
realcons_console_pdp11_70__event_operator_exam
realcons_console_pdp11_70__event_run_start
realcons_console_pdp11_70__event_opcode_any
....lots of opcode_any...
the occasional "realcons_console_pdp11_70__event_opcode_wait"
...more opcode_any.... until you break the simulation.

I am unclear whether I should see additional API calls associated with setting LED values, or whether that happens implicitly under the event_opcode_any processing.

Heinz-Bernd Eggenstein

unread,
Sep 28, 2021, 4:30:39 PM9/28/21
to [PiDP-11]
Yes, on "SET REALCONS TEST", all LEDs light up simultaneously for ca 2 or 3 seconds
and then go back to their previous state

HB

Andrew Silverman

unread,
Sep 28, 2021, 4:32:02 PM9/28/21
to [PiDP-11]
Yeah, I don't get that.  So that's broken too.

Heinz-Bernd Eggenstein

unread,
Sep 28, 2021, 5:57:39 PM9/28/21
to [PiDP-11]
BTW, Did you apply the patch for the known bug of sporadic panel freezes that is mentioned here: https://groups.google.com/g/pidp-11/c/C5PSSzfcMHc/m/BmMk3LZ8BgAJ

After rebuilding the software from fresh downloads, you want to have this, whether it's related to the current problems you are having or not.

HB

Andrew Silverman

unread,
Sep 28, 2021, 6:11:10 PM9/28/21
to Heinz-Bernd Eggenstein, [PiDP-11]
No, was unaware. I’ll add the patch and see what happens.  FYI I was able to successfully build the Java GUI panel and that works perfectly with client11 (if you run rpcbind with the -i option) whereas the server11 seems to have this broken behavior either way, so that’s a data point.

Andy Silverman, Principal Program Manager
Azure Hardware Architecture (AHA) Group

From: 'Heinz-Bernd Eggenstein' via [PiDP-11] <pid...@googlegroups.com>
Sent: Tuesday, September 28, 2021 2:57:38 PM
To: [PiDP-11] <pid...@googlegroups.com>
Subject: [EXTERNAL] Re: [PiDP-11] Having a little trouble bringing blinky lights back to life
 
You received this message because you are subscribed to a topic in the Google Groups "[PiDP-11]" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/pidp-11/f1YQ4WbpA9k/unsubscribe.
To unsubscribe from this group and all its topics, send an email to pidp-11+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pidp-11/7eca9a3d-b564-4f95-ab8a-704f1ce47f0fn%40googlegroups.com.

Andrew Silverman

unread,
Sep 28, 2021, 6:23:02 PM9/28/21
to [PiDP-11]
Well, applied the patch, but unfortunately didn't cure the main problem. :-(

andy

unread,
Sep 28, 2021, 7:21:13 PM9/28/21
to [PiDP-11]
someone mentioned it earlier: try a different meatier power supply, 5.1V?

Neal G.

unread,
Sep 29, 2021, 9:16:04 PM9/29/21
to [PiDP-11]
It might help to begin at the start.
Which Pi do you have?
What is the output of SimH "show version", "show realcons", "set realcons test" ?
With these we can determine who's PiDP-11 is most like yours, or if your build of server11 and client11 are wildy different than expected.
For comparison, my PiDP-11 uses a Pi-2, the SimH output looks like this:

sim> sh ver
PDP-11 simulator V4.0-0 Current  REALCONS build Aug 14 2019
    Simulator Framework Capabilities:
        32b data
        32b addresses
        Threaded Ethernet Packet transports:PCAP:TAP:UDP
        Idle/Throttling support is available
        Virtual Hard Disk (VHD) support
        RAW disk and CD/DVD ROM support
        FrontPanel API Version 12
    Host Platform:
        Compiler: GCC 8.3.0
        Simulator Compiled as C arch: ARM (Release Build) on Aug 14 2019 at 18:18:20
        Memory Access: Little Endian
        Memory Pointer Size: 32 bits
        Large File (>2GB) support
        SDL Video support: SDL Version 2.0.9
        No RegEx support for EXPECT commands
        OS clock resolution: 1ms
        Time taken by msleep(1): 1ms
        OS: Linux raspberrypi 4.19.75-v7+ #1270 SMP Tue Sep 24 18:45:11 BST 2019 armv7l GNU/Linux
        git commit time: $Format:%aI$

sim>sh realcons
REALCONS 11/70, host="localhost", host panel="11/70", interval = 8 msec, connected, boot image filename not set, nodebug,
panel BlinkenBoards driver hardware state = ACTIVE,
server info=
Server info ...............: pidp11_blinkenlightd - Blinkenlight API server daemon for PiDP11 v1.4.1
Server program name........: ./server11
Server command line options:
Server compile time .......: Nov 22 2020 17:15:51

sim>sim> set realcons test
Verify lamp test!
Switch SR          = 260
Switch LOAD ADRS   = 0
Switch EXAM        = 0
Switch DEPOSIT     = 0
Switch CONT        = 0
Switch HALT        = 0
Switch S INST/S BUS= 0
Switch START       = 0
Switch ADDR SELECT = 6
Switch DATA SELECT = 2
REALCONS device for blinkenlight panels. Build Aug 14 2019.
Contact: www.retrocmp.com; j_h...@t-online.de

and, yes, when I run "set realcons test" all the LEDs light up for 10 seconds or so.
- Neal G.

Andrew Silverman

unread,
Sep 30, 2021, 3:53:50 PM9/30/21
to [PiDP-11]
It's a Pi 3, which as stated at the beginning of the thread, used to work just fine.  All of the hardware is as it originally was when everything worked, before I rebuilt the SD card.

sh ver: PDP-11 simulator V4.0-0 Current  REALCONS build Aug 14 2019. Same as yours.

sh realcons:  Shows a newer build date because I rebuilt it the other day to take the patch for avoiding periodic crashes. Behavior was no different with the one untar'd directly from the distribution, of course.
sim> sh realcons
REALCONS 11/70, host="localhost", host panel="11/70", interval = 8 msec, connected, boot image filename not set, nodebug,
panel BlinkenBoards driver hardware state = ACTIVE,
server info=
Server info ...............: pidp11_blinkenlightd - Blinkenlight API server daemon for PiDP11 v1.4.1
Server program name........: ./server11
Server command line options:
Server compile time .......: Sep 28 2021 15:19:35

Set realcons test: Also nothing remarkable, except no lamps.
sim> set realcons test
Verify lamp test!
Switch SR          = 0
Switch LOAD ADRS   = 0
Switch EXAM        = 0
Switch DEPOSIT     = 0
Switch CONT        = 0
Switch HALT        = 0
Switch S INST/S BUS= 0
Switch START       = 0
Switch ADDR SELECT = 4
Switch DATA SELECT = 2
REALCONS device for blinkenlight panels. Build Aug 14 2019.

Andrew Silverman

unread,
Oct 1, 2021, 1:57:47 PM10/1/21
to [PiDP-11]
I knew it was going to be something simple.  Problem solved.

1) I had the keylock wired to the pcb terminals that allow it to trigger a simulated power off.
2) The keys to the lock were somehow lost in my open-plan office space during the pandemic.  I normally leave them in the lock and in the "on" position. Despite the fact that the arrow on the keylock is pointing at "power", over the course of the last year someone must've put the switch in a position where it's actually continuously reading in the "off" position.
3) I desoldered one of the wires from the keylock and OF COURSE everything popped back to life.

One of the misleading aspects of the behavior that kept me from trying this earlier is that if the keylock is in this position when SIMH starts up, you still get the "kernel" LED and the address/data display knob LEDs, which function normally once REALCONS is connected, which is a little counterintuitive for a device in the simulated "off" state.

So with all that said - anyone know of a source for a replacement keylock?  :-) Without the key I'll need to replace the whole key switch in order to restore that to a functional state.

Heinz-Bernd Eggenstein

unread,
Oct 1, 2021, 3:32:09 PM10/1/21
to [PiDP-11]
Hurray!!!
Glad it's running again.

Well, didn't we all get 2 keys per lock actually, so someone could donate their spare key to you perhaps? I'm in Germany  so there are probably more economical options.near you.

HB

Johnny Billquist

unread,
Oct 1, 2021, 8:58:08 PM10/1/21
to pid...@googlegroups.com
Good that you figured it out.

Bad that the console simulation is doing it wrong. If the key is off, it
should at least treat all LEDs equal.

Johnny
> Contact: www.retrocmp.com <http://www.retrocmp.com>; j_h...@t-online.de
> Contact: www.retrocmp.com <http://www.retrocmp.com>;
> j_h...@t-online.de
>
> and, yes, when I run "set realcons test" all the LEDs light up
> for 10 seconds or so.
> - Neal G.
>
> On Tuesday, September 28, 2021 at 5:23:02 PM UTC-5
> andr...@microsoft.com wrote:
>
> Well, applied the patch, but unfortunately didn't cure the
> main problem. :-(
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "[PiDP-11]" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pidp-11+u...@googlegroups.com
> <mailto:pidp-11+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pidp-11/29a45594-dad0-4076-a10b-1f6a9a8e7ce3n%40googlegroups.com
> <https://groups.google.com/d/msgid/pidp-11/29a45594-dad0-4076-a10b-1f6a9a8e7ce3n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Neil Higgins

unread,
Oct 1, 2021, 9:22:36 PM10/1/21
to [PiDP-11]
Shame on me for impugning your soldering :-( Glad it wan’t COVID, though :-)

steve...@gmail.com

unread,
Oct 1, 2021, 9:43:09 PM10/1/21
to [PiDP-11]
Johnny wrote:

"Bad that the console simulation is doing it wrong. If the key is off, it 
should at least treat all LEDs equal."


I don't think it's a problem unique to the PiDP-11/70. There are situations on the PiDP-8/i that will have only the Fetch and Execute lights on even though it's PDP-8 architecturally not possible for both of them to be on at the same time. Go into any PiDP-8/i boot script and add in a line like:

set env -p "Go? " BOOT_GO = 0

before the actual simh boot command. The boot script will wait at the prompt with both Fetch & Execute both lit.

It would be my guess that the Pi GPIO light multiplex addresses of Fetch & Execute  in the -8/i are the same as the addresses of the two lights in the 11/70 and that something about how simh starts up is affecting those two addresses.


 -- steve

 

Neal G.

unread,
Oct 1, 2021, 10:27:35 PM10/1/21
to [PiDP-11]
Excellent! Glad you were able to figure it out and the problem has a clear explaination.
- Neal G.

timr...@gmail.com

unread,
Oct 2, 2021, 2:19:58 PM10/2/21
to [PiDP-11]
Are there different keys?  Are they matched to said switch?  I'd kinda doubt that, but who knows.  My keys (2) have a "102" stamped on a metal plate in the middle.  I'd offer you one as I don't really need both.  But if it won't match yours and you can't check I am not sure if this is much help to you.  :)

On Friday, October 1, 2021 at 12:57:47 PM UTC-5 andr...@microsoft.com wrote:

Jonathan Morton

unread,
Oct 3, 2021, 12:35:44 AM10/3/21
to timr...@gmail.com, [PiDP-11]
> On 2 Oct, 2021, at 9:19 pm, timr...@gmail.com <timr...@gmail.com> wrote:
>
> Are there different keys? Are they matched to said switch? I'd kinda doubt that, but who knows. My keys (2) have a "102" stamped on a metal plate in the middle. I'd offer you one as I don't really need both. But if it won't match yours and you can't check I am not sure if this is much help to you. :)

It's not unheard of, but also by no means guaranteed, for cheap locks bought in a large batch to all be keyed alike. Anyone with more than one of these should be able to test this by trying the key from one keyswitch in another.

The keyswitch used here uses a cheap tubular core, as is very common for PC case locks, desk drawer locks, and also the backup mechanical override of many hotel safes. Tubular locks were originally designed as a high-security device, but were rendered obsolete almost overnight by straightforward impressioning tools which take only a few seconds to use, and which themselves *become* a working key for the lock in the process of taking an impression. It appears that such tools are now available in a three-pack (one for each common size of core) for about $25. It's still possible to design a tubular core to defeat such tools as well as single-pin picking methods, but 99% of them don't bother, and those that do will find that attention to detail made obvious in the price.

IMHO, it'll be easiest to just install a new keyswitch.

- Jonathan Morton

Heinz-Bernd Eggenstein

unread,
Oct 3, 2021, 7:58:59 AM10/3/21
to [PiDP-11]
I think if you look closely at my key (Aug 2021 batch) it's obvious that those have no real coding at all, they are just toy one-fits-all "keys" that are meant to look like real keys (of course it's not sure that Oscar used the exact same model/vendor for the PiDP-11 we are dealing with here).

Which is perfectly fine btw, because apparently the keys that would come with a real PDP-11 or PDP-8 would also fit any PDP-8 or -11!! At least that's what the claim is for real PDP replacement keys you can buy online.

  IMG_PIDP11_key_small.jpg

Jonathan Morton

unread,
Oct 3, 2021, 9:00:53 AM10/3/21
to Heinz-Bernd Eggenstein, [PiDP-11]
> On 3 Oct, 2021, at 2:58 pm, 'Heinz-Bernd Eggenstein' via [PiDP-11] <pid...@googlegroups.com> wrote:
>
> I think if you look closely at my key (Aug 2021 batch) it's obvious that those have no real coding at all, they are just toy one-fits-all "keys" that are meant to look like real keys (of course it's not sure that Oscar used the exact same model/vendor for the PiDP-11 we are dealing with here).
>
> Which is perfectly fine btw, because apparently the keys that would come with a real PDP-11 or PDP-8 would also fit any PDP-8 or -11!! At least that's what the claim is for real PDP replacement keys you can buy online.

It does seem that the G102 pattern is one of many standard keys that you can easily obtain both keys and locks for.

https://www.aliexpress.com/item/32811760147.html

- Jonathan Morton
Reply all
Reply to author
Forward
0 new messages