Moschip 9901, tests good to BoB but will not talk to Mesa 7i90, is there a way?

More
20 Feb 2023 15:05 #264867 by PCW
The 7I90/7I43 do not use ECP mode

I suspect the 7I90 (and probably 7I43) LinuxCNC drivers are better
at setting EPP mode on non-register compliant chips than mesaflash.

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 15:32 #264872 by DrKnow65
Yes, I agree that the 7i90/7i43 do not use ECP nor "compatibility mode.

But, the 7i90/7i43 must begin somewhere, in order to respond to the nibble from the host that requests the EPP protocol, as per the IEEE1284 standard. They must respond with a statement of compliance. That response does not happen in EPP mode, so they must communicate in some form other than EPP to shake hands.

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 15:36 - 20 Feb 2023 15:54 #264873 by DrKnow65
Last edit: 20 Feb 2023 15:54 by DrKnow65.

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 15:44 #264874 by tommylight
@DrKnow65,
You should remove that link, it is hosted on a Russian server, and PDF files CAN have viruses/Trojans/malware embedded into them.

Here is the Wikipedia link, could not find the NIST or IEEE links, google is failing miserably.
en.wikipedia.org/wiki/IEEE_1284
The following user(s) said Thank You: DrKnow65

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 15:52 #264875 by DrKnow65
6.2 IEEE 1284 communication options
The IEEE 1284 negotiation phase allows the host and peripheral to select a mutually supported communication mode. During the negotiation phase, the host indicates which communication mode and options it
would like to use via the Extensibility Request Value (see Table 4). There is one bit in the Extensibility
Request Value for each IEEE 1284 mode, plus additional bits for communications options such as device
identification (see 7.6) and ECP Mode Run Length Encoding (RLE).3 The peripheral indicates that it
supports all requested options by setting the Extensibility Flag low (for Nibble Mode without options) or
high (for any other IEEE 1284 mode or options) as shown in Table 4. If the peripheral does not support the
requested mode or options, it sets the Extensibility Flag low,4 and the interface returns to Compatibility
Mode.

Like I said, not a programmer.
And at the end of the day no one will come here looking for me to clarify for them how to make their Mesa card work with a random PCIe parallel port card. I have put enough time into this, and if the LinuxCNC volunteers do not see the value in addressing the issue, than it must be easier for them to deal with the problem by putting up their hands and recommending trying another random this-or-that-chip-based card. 

For me the cards that worked are PEX1P StarTech cards, just in case the next guy comes around looking for a solution.
I would say if your card identifies as being in [ ECP ] mode in     sudo dmesg | grep parport      it may just work.

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 16:16 - 20 Feb 2023 16:17 #264878 by PCW

Yes, I agree that the 7i90/7i43 do not use ECP nor "compatibility mode.

But, the 7i90/7i43 must begin somewhere, in order to respond to the nibble from the host that requests the EPP protocol, as per the IEEE1284 standard. They must respond with a statement of compliance. That response does not happen in EPP mode, so they must communicate in some form other than EPP to shake hands.
 
No IEEE1284 mode discovery is needed or done (since the driver knows that the card is EPP compatible),
the issue is that the host must set the  EPP mode via a direct register write. This fails on some cards.
 

Last edit: 20 Feb 2023 16:17 by PCW.

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 16:38 - 20 Feb 2023 16:40 #264879 by DrKnow65
"No IEEE1284 mode discovery is needed or done"

I am sure this is the part where I insert my foot far into my mouth, or offend the guy I will later need to help me with firmwares... but what you just said does not correlate to what is written in the protocol standard. In the chapter ( IIEE1284.6.2 ) I posted, it is clear that there is a handshake. It even goes so far as to be able to change protocol back and forth on-the-fly according to the MOSChip datasheet and elsewhere in the standard. I suppose I have blurred these facts in the myriad of far too many words and long winded posts, I apologize.

"negotiation phase allows the host and peripheral to select a mutually supported communication mode"

Please don't be offended. I did not come here to argue with the people who are maintaining LinuxCNC as unpaid volunteers. A solution is to tell people that they should use Startech PEX1P cards as they are "known good".
Jeff
Last edit: 20 Feb 2023 16:40 by DrKnow65. Reason: spelling

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 16:43 #264880 by DrKnow65
No idea why my last post went all haywire with underlining after my spelling edit. Maybe it is time for me to step away from the computer.

It looks like I was screaming or something and I promise I wasn't. :)

Jeff
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 16:44 - 20 Feb 2023 16:46 #264881 by PCW
No negotiation phase is used (since the target has a known mode = EPP)
so none of the IEEE1284 protocol standard info about negotiation is relevant.

The real question is why hm2_7I90 succeeds and mesaflash fails to set EPP mode
(Though the code to select EPP mode seems identical)

Dont worry about formatting, the forum editor messes up the best intentions...
Last edit: 20 Feb 2023 16:46 by PCW.

Please Log in or Create an account to join the conversation.

More
20 Feb 2023 17:00 #264882 by DrKnow65
In my reading I must be missing something because what I've read leads me to believe that the IEEE1284 protocol handling is hardware baked into the chip. The PC requests a mode (in our case epp) and the hardware tries to make it happen. But, again, I am no expert so my understanding of what I have read is likely to be flawed.

Yes, I agree the question over mesaflash/halrun is a new puzzle. But I am content to let that dog lie. The week I put into the epp thing has bore no fruit, I am not inclined to do it again for a problem I have a work-around for.

I appreciate your input Peter, I am sorry I was not able to fix the problem.

Please Log in or Create an account to join the conversation.

Time to create page: 0.139 seconds
Powered by Kunena Forum