• ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
  • ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
Guidelines
Any failures related to Hotkey UWP service? Click here for tips.
Check out our WINDOWS 11 Support Center info about: OPTIMIZATION, KNOWN ISSUES, FAQs, VIDEOS AND MORE.
HP Recommended
Y3E02AV HP ProDesk 600 G3 Microtower PC
FreeDOS

I have not been able to establish basic RS232 Serial communications in FreeDOS on this PC.  It came initially with Win10 installed (HP techs verified Serial Communications via FreeDOS before purchasing).  FreeDOS serial communications would not work via VMWare in Win10 so I uninstalled Win10 and installed FreeDOS natively.

 

I tried both auto bios setup to the following standard serial settings as well as manual without success:

IO Address A: [3F8] B: [2F8]

Interrupt A:[IRQ4] B: [IRQ3]

 

I see the following behavior for both com1 & com2:

 

>mode com1: baud=9600 data=8 stop=1 parity=n

 

>mode com1

>port status [ xmit-shift-empty, xmit-hold-empty ]

 

If I try writing something to the port, it fails as follows:

>echo hello > com1

>error reading from device com1 write fault

>(A)bort (I)gnore (R)etry (F)ail

I can then hit the ‘A’ key twice to exit out of it.

 

My protocol analyzer is setup for 9600, 8, n, 1 on the other end of the serial cable.  It should see any bits coming across the serial connection (this scenario worked for the cmd window in win10 but not with FreeDOS as primary OS or with VMWare in Win10).

 

Ideas?

26 REPLIES 26
HP Recommended

Hi

 

Would a Linux installed with Grub then be able to boot Linux, W10 and FreeDos at will on power up?

 

FreeDos is effectively a little Linux.

 

Now you may already have done this, so please be tolerant...

 

http://www.windmill.co.uk/rs232-communication.html

http://www.bb-elec.com/Learning-Center/All-White-Papers/Serial/FAQ-RS-232-Connections-That-Work.aspx

 

https://www.cyberciti.biz/faq/find-out-linux-serial-ports-with-setserial/

 

So the cabling and pin-outs are working normally.

 

After 2 days of thinking, I found the proggy I used to use....

 

http://www.bttr-software.de/freesoft/comm1.htm

Author: Erhard Hilbig, Germany (1998).

1998-11-26: v7.5. Last version for DOS. (Thanks to Howard Schwartz and the author for obtaining the update).

Download conex75.zip (95K).

 

Com Port 1; 9600 baud, NO flow control, 8 bits and NO Stop bit.

 

(I have it on a floppy somewhere).

 

 

HP Recommended

Run:

(1) mode com1: baud=9600 data=8 stop=1 parity=n

(2) mode com1: /status

 

If all is okay you should see a port config msg after 2. Otherwise the o/s isn't linking the address to com1 for some reason.

 

Hope this helps.

 

B

 

Edit:

Tim, if you run MODE /STATUS do you get a port listing? Are COM1 and COM2 listed? Do the listings also contain the port addresses (the hex addresses)?

HP Recommended

 

Bob_ii:

_______________________________________

running the following:

>mode com1 baud=9600

>

>mode com1 /status

*** SERIAL PORT 1 STATUS ***

port status [ xmit-shift-empty xmit-hold-empty ]

use MODE COM1 BAUDHARD=1 to read *configuration* from UART

>mode com1 BAUDHARD=1 /status

UART is 16450 or newer. reading status:

no parity, 1 stop bit, 8 bit, 9600 baud, RTS on, DTR on     (It is normally RTS auto, DTR auto...)

>echo "Hello">com1

Error reading from device com1: Write fault

(A)bort, (I)gnore, (R)etry, (F)ail

I usually have to hit 'A' twice to get the cmd line back again.

 

>mode com2 /status & baudhard=1/status response was identical except it responded with RTS auto & DTR auto.

 

This is the results for mode /status:

>mode /status

*** SERIAL PORT 1 STATUS ***

port status [ xmit-shift-empty xmit-hold-empty ]

*** SERIAL PORT 2 STATUS ***

port status [ xmit-shift-empty xmit-hold-empty ]

*** PRINTER PORT 1 STATUS ***

port status [     ]

*** VIRTUAL PRINTER PORT 2 INFORMATION ***

Free for redirection to serial ports

*** VIRTUAL PRINTER PORT 3 INFORMATION ***

Free for redirection to serial ports

*** VIRTUAL PRINTER PORT 4 INFORMATION ***

LPT4 is Free for redirection to serial ports

*** CONSOLE STATUS ***

CON codepage support (FreeDOS DISPLAY) not loaded.

SCREENSIZE: 80 columns, 25 Rows, Mode 3, Font Height 16

Switchar is '/',  Numlock is off.  Scrolllock is off. Capslock is off.

______________________

 

CF4: Thank you for the wonderful URLS.  These are very simple tests.  Since its a company PC, I'd have to 'go through some hoops' to get the software that you suggest to install on this PC (haven't reached that point yet).  BTW, The serial link was working in a Win10 cmd window prior to wiping the drive and installing FreeDOS.

 

HP Recommended

Some thoughts:

 

(1)  COM port config in the BIOS is wonky. (A security config that prevents user access to ports?)

 

(2) There's a FreeDOS TSR running that's affecting the COM ports.

 

(3) removed

 

I'd be tempted to disconnect anything connected to the COM ports, do a cold boot, run the same MODE commands again.

 

Edit

Is there a security config in the BIOS that protects ports/USB/etc? Maybe have a look in the BIOS first (since the port worked under Win10).

 

Edit 2:

Something just occurred to me -- do those COM ports require a driver to work in FreeDOS? Or are they acutal hardware ports (vs a software-created port for use in Windows)?

 

Edit 3

I wonder how HP verfied the ports via FreeDOS? Because I'm thinking on a standalone FreeDOS system you won't have access to the ports. Why? Win 10 probably configured the ports during startup. So unless you can find a DOS serial driver this probaly isn't going to work.

 

Quick fix: Find a standalone board with jumper-configed COM ports. Set the ports to COM5 and COM6 (I'm not sure of the addresses off the top of my head).

HP Recommended

Hi Bob_ii,

 

Addressing your thoughts:
(1) COM port config in the BIOS is wonky. (A security config that prevents user access to ports?)

This could be, it doesn't like it at all when I swap the win10 and FreeDOS drives.  It won't even let me see the bios settings when putting the FreeDOS drive in.  I'll have to change those with the win10 drive in it.

 

(2) There's a FreeDOS TSR running that's affecting the COM ports. 
Its an 'out of the box' FreeDOS installation using the standard FDCONFIG.SYS & AUTOEXEC.BAT.  That said, its not the official HP FreeDOS image.  About the only things the FDConfig is attempting to load are himem, and the CD/DVD driver.


I've swapped the serial cable between the two serial ports without success.  I have cold booted multiple times trying these commands without success.

 

Edit: (Is there a Bios setting that protects ports/USB/etc?) 
This is the HP Bios manual: http://h10032.www1.hp.com/ctg/Manual/c05166986
Both Ports were enabled but set to auto for their IO Address and Interrupts.  To eliminate any doubt in their configuration, I changed their settings to:
IO Address A: [3F8] B: [2F8]
Interrupt A:[IRQ4] B: [IRQ3]
However, I could not tell any noticeable change afterward. 

That said, I wiped the hard disk prior to installing FreeDOS.  I did not wipe out the BIOS so it should have still worked after working with Win10. ...this lends credibility to your speculation that a driver may be needed.

 

Edit 2 (do those com ports need drivers)
I am not aware of any.  However, it could be that HP FreeDOS has drivers. I've been attempting to confirm that.

 

Edit 3 (How did HP verify Ports):
A tech at HP had confirmed that two pcs configured /w FreeDOS could communicate using an add-in PS2/serial card which was purchased with this PC.  Afterward, another person recommended that we get the PCs with Win10 in an effort to try running FreeDOS via VMWare in Win10. However, VMWare serial communications responses are identical to FreeDOS Native serial communication responses.  Perhaps if FreeDOS serial communications issues could be resolved, that may lead to resolving VMWare serial communications issues as well.


Win10(Updated):
I put the original win10 hard drive back in; however, it didn't see the drive as having an OS until I reset the bios configuration. 

 

I found that I had to the bios with the Win10 disk in to enable legacy booting per the following HP Link: https://h30434.www3.hp.com/t5/Notebook-Operating-System-and-Recovery/Boot-device-not-found-Please-in...  to get the PC to again recognize the FreeDOS disk.

HP Recommended

Something to check: the version of MODE.EXE was updated (I think in late 2015). It might be an idea to try the newest version. I found some info on SourceForge where people had issues with COM ports and older versions of MODE.

HP Recommended

Hi

 

A live booting Linux, it does not touch the HDD, only runs in RAM.

 

 

HP Recommended

Hi CF4,

 

Thank you for the suggestion.  I now think I see your perspective.  If I troubleshoot with a live linux OS, I may likely find the serial port issue.

 

Tim

HP Recommended

Hi

 

Well desperate times, Desperate measures.

 

AND I probably phrased it badly in my earlier posts.

 

Debian https://www.debian.org/CD/live/ 

 

"console=tty0 console=ttyS0,38400n8"

 

You can list your working serial port under Linux as follows:
# setserial -g /dev/ttyS[0123]
Sample outputs:

/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
† The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the <a href="https://www8.hp.com/us/en/terms-of-use.html" class="udrlinesmall">Terms of Use</a> and <a href="/t5/custom/page/page-id/hp.rulespage" class="udrlinesmall"> Rules of Participation</a>.