I have an ALIX (PC Engines).
I am doing an install from my desktop over the network to the ALIX CF card.

It is not working.
I have only spent several hours so far so I must persist ...

I think I have the DHCP and PXE bit sorted.
I have a tftpboot directory in my desktop root.
This contains a copy of the pxeboot file.
When I access the ALIX via the serial port (cu) and turn it on it talks to the DHCP server and uses pxeboot.
It tries to load "bsd" but doesn't find it.
After several tries it stays with a boot> prompt.

If I enter "boot bsd.rd" at the prompt I get:
booting tftp:bsd.rd: "numbers" "numbers"
entry point at "numbers"
Ã*
Yes, that is an "i" with an accent. The "numbers" are alphanumeric and look like memory addresses.

I have tried to write a boot.conf that says "boot bsd.rd" and put it in /tftpboot and also in /etc. It doesn't seem to have any effect.
Right now though I seem to able to at least use boot> interactively and am more interested in getting bsd.rd to run.

As I said before, I can't seem to get boot.conf to have an effect.
AFAICS, boot.conf is used to tell the kernel to communicate via the serial interface, as in this example from boot (8):
# echo "set tty com0" > /etc/boot.conf
I think I am GTG except that when bsd.rd starts up my tty session ends.
I suspect that the kernels don't automatically communicate via the serial console.

This might help display some of the confusion:
"Note that /etc/boot.conf is only needed if the kernel you wish to boot from is not named bsd, or other pxeboot defaults are not as you need them (for example, you wish to use a serial console)."http://openbsd.org/faq/faq6.html#PXE

That's the URI that ocicat referenced.
Variously throughout the docs it is said to go in /tftpboot or /etc.

I've used pxeboot before, but never with a serial console so I've never bothered with boot.conf. But ... I know that pxeboot has to get it from somewhere, and the only place available is the tftpd server.

Looks a bit like a bug in the documentation - It might be a good idea to make a little noise about it on the openbsd mailing list, or post a PR about it.
Us BSDers are rather proud of our documentation: If there is a problem with it, the projects would like to know about them so they can be fixed.

__________________The only dumb question is a question not asked.
The only dumb answer is an answer not given.

Looks a bit like a bug in the documentation - It might be a good idea to make a little noise about it on the openbsd mailing list, or post a PR about it.
Us BSDers are rather proud of our documentation: If there is a problem with it, the projects would like to know about them so they can be fixed.

I incidentally posted elsewhere saying just that several moments ago. :]
FWIW, the documentation is accurate, it does however not cater to the skimmer. Unfortunately (I guess) most people frantically searching for a solution are speed reading. Pick a long man page and read the whole thing - got a spare hour? :]

There are though incorrect hyperlinks in the online manpages which is another matter altogether ...