-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AMBE Server stops working #5
Comments
I am also having some issue on the AMBEserver service is running but actually dying, running -x for now (debugging mode), the only way to solve is to restart the AMBEserver process. a script of checking AMBE process won't help as the PID is still runing on linux (im running raspbian on rpi 3b+) |
The traffic to the AMBEServer is UDP so not reliable. If the packet is corrupted and the AMBEServer is receiving an AMBE packet length of e.g. 322 but the AMBE header is 65132 ( e.g. due bad internet) ( see crash report), the AMBEserver will crash. |
I am not good at C language but i tot some checking of length payload check is there? if (bytesRead != dv3k_packet_size(packet)) { |
Hi Eddie and David. I saw this line also in the code and what David
describes is also a good idea.
But what is the different between the DV30 and the AMBE3000 Shield
communication ,why i ask this, the DV3000 shield with the Arduino 2560
give me the impression that always after a day ambeserver stucks i can
simulate this with high Load on the rpi and bring the ambeserver with
this high load to break down, but if i connect the DV30 USB Stick
instead the Arduino/AMBE3000 shield everything works well on same rpi,
only different Baudrate ( the DV30 USB Stick runs native on 460800Baud,
the AMBE3000/Arduino have only 230400 Baud).
So if this issue depends on loss of UDP Packets (was also my first
thought) it must affect also the DV30 sollution.
I am not shure if a change the data cache payload will helps here?
A implementation of a renudancy check (checksum between packed TRX and
Packet recieved) will also overflow my expierience in C#.
@david: your implementation AMBE Server on Windows APP, will have also
this issue reported from users with AMBE 3000Shield with Arduino
2560/CH340 Controller, maybe you have also in Win APP AMBESERVER adapted
the same AMBEServer C code?
In the meantime i wrote a small script and let all 5minutes (by cron)
check if the demon service of ambeserver its allive, ive its brocken
script will restart ambeserver, but thats ugly ;-))
Am 22.05.19 um 16:02 schrieb Eddie:
…
I am not good at C language but i tot some checking of length payload
check is there?
if (bytesRead != dv3k_packet_size(packet)) {
fprintf(stderr, "AMBEserver: invalid length when reading from the
socket, %zd=%zd", bytesRead, dv3k_packet_size(packet));
return 1;
}
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#5?email_source=notifications&email_token=AMDEK6KTZPWJ7Y6252XY6H3PWVG57A5CNFSM4HNVQVX2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODV7EWMI#issuecomment-494816049>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AMDEK6JFNLO5Z5A7VOSCCR3PWVG57ANCNFSM4HNVQVXQ>.
|
Hi all, apologies I seem to have missed this thread. I am not so active with DMR now, my AMBE chips are in storage and I'm not very good at C! @lwkoon can you create a fork with your suggested change and then test it to see if it resolves the issue? Thanks |
After glance through with my limited knowledge of C++ from the code:- the return of the checking of processSocket() should be return 0 instead of 1 after checking
|
solved: Add |
AMBE Server on Raspberry Pi3 stops working
aktuall raspian AMBE device: AMBE3000 Hardware on Arduino Duo Software from DVMEGA
AMBEServer -d -p2461 compiled for 230400 Baud. Power option on Raspi ok no rttheling voltage ok.
When stops AMBEServer (maybe after hours, simulated by hig loads of cpu on rpi) following Error Messaege is seen
Serial payload exceeds buffer size:65332
processSerial failed to read packet
a new AMBEServer start brings it to work for a while.
If i use a DV30 USB AMBE Stick (460800 Baud) this issue is not given only by using AMBE3000 shild with arduino (230400Baud)
On Windows BlueDV Software connected to USB the Arduinoshild with AMBE3000 work fine without stoping.
Different RPI ( Pi zeroW, RPI2b) frsh installation and each fresh compiled comes to the same result
The text was updated successfully, but these errors were encountered: