Comments (3)
Yes, I found the issue. You should not directly access the connection in the ConnectionChanged handler. I don`t know if this is a problem in the library or a difference in behaviour in .Net Framework and .Net Core.
This is the code I wrote to send the S1F13 command in the equipment in the original example:
connection.ConnectionChanged += async (sender, state) =>
{
Console.WriteLine(state);
if (state == ConnectionState.Selected)
{
var reply = await connection.SendAsync(establishConnectionRequest);
Console.Write(reply);
}
};
If you want to send a message on state change, you have to write the code like this, then it works:
connection.ConnectionChanged += async (sender, state) =>
{
Console.WriteLine(state);
if (state == ConnectionState.Selected)
{
await Task.Run(() => await connection.SendAsync(establishConnectionRequest));
}
};
I have built a host, that is used in production with the RC01 version and it is working fine.
from secs4net.
I can also reproduce this behavior. When I'm using active host and passive equipment and the host sends S1F13 and the equipment replies with S1F14 + MDLN + SOFTREV. But the reply doesn't reach the host and the host waits until T3 timeout.
@Metetron You closed the issue. Could you find out anything to fix this issue?
Kind regards
from secs4net.
@Metetron Thanks a lot!! After modifying the code to send S1F13 in a new task it worked like charm.
from secs4net.
Related Issues (20)
- System.IO.FileNotFoundException: could not load...“System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51” HOT 1
- when sending or receiving a '<L[0]>', `Item.Count` will throw an exception HOT 1
- public static Item ToItem(this JObject jobject)这个方法有问题? HOT 1
- Secs4Net
- Occur T3 timeout while sending many grouped messages HOT 2
- Function number error in json HOT 1
- SecomSimulator can't connect my application with secs4net HOT 1
- Cannot cast type "PooledAwait.ValueTaskCompletionSource1[System.Object]" to type "System.Threading.Tasks.TaskCompletionSource1[System.Object]" HOT 4
- Sometime can't reply message HOT 2
- NullReferenceException
- How to send data to the device
- SecsDevice based on NET461/NET472 cannot send SecsItem which contains large array HOT 1
- LinkTest timer not re-enable after reconnect HOT 1
- I got Unhandled exception occurred on PipeDecoder producer HOT 4
- Bit mask of 'Stream' field is wrong
- 10053 error HOT 1
- Reconnect not working HOT 1
- too many T3 HOT 2
- Turn On the eqp one more time HOT 1
- analysis first s1f13 incorrect,and then T6 outtime occured。[Net6] HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from secs4net.