-
Notifications
You must be signed in to change notification settings - Fork 0
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
Daly BMS support #4
Comments
Hello, Since I do not have a Daly BMS, I would be unable to test the code I write. And there is pretty much a zero percent chance of writing code correctly the first time. Additionally, my code makes two requests to get all the data - you need to make 9 requests to get it to work. However, even without knowing you, I know you are capable of doing this yourself. You'll have to edit most of the functions. Start with the requestResponse and get it working with a single data request. At first just print out the buffer variable. |
thanks, so i tried to start a fork and would test with other data.. but, it looks you ar working on the code, i get erros when compile |
oop my bad. There was a dynamically allocated buffer that had no reason to be dynamically allocated. (I never resized it or freed the memory in the destructor.) When I was reviewing the code I changed it to a 50 byte buffer object that is now a class member. It compiles now for me. The basic read example sketch now compiles for me. Sorry! |
no problem, i have removed this for the moment. |
I am going to make a second class (Maybe DalyBMS.h and DalyBMS.cpp) Give me like 30 mins to get this started. I'll see what I can do. |
Ok I pushed 3 new files. Try opening the Daly BMS example and seeing if that makes it go. @softwarecrash |
thanks, i have tested it, but the data comes again in segmentation, it looks like after every bit it makes a new line. the daly needs the data in a one line, with "spaces" wetwen the bits i think the bits must write in one action like write(data+data+data) |
so i have tested and tried arround, but i cant get the send funktion to write an array of hex data in one line, it sends every bit at allone, that makes me grazy, its eventualy a problem with softwareserial? byte wBuff[13]; so when i grab the outgoing data with a second serial usb interface it get the data again like |
What do you mean it sends every bit (I assume byte?) alone? Are you
monitoring the communications somehow?
I don't know what the issue is. Does it work with your BMS?
…On Thu, Nov 11, 2021 at 8:32 AM Rocky ***@***.***> wrote:
so i have tested and tried arround, but i cant get the send funktion to
write an array of hex data in one line, it sends every bit at allone, that
makes me grazy, its eventualy a problem with softwareserial?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#4 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJQ54WVRM6Z3CV4JYAXUUQDULPAXLANCNFSM5HS4KDTA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
thats is actual send from the arduino to the bms, the bms dont understand that that is was send from the pc software to the bms its the same data, but the arduino send every byte in a new line |
I don't have experience with the software you are using. Have you wired up the BMS and tested it with your Arduino? What does your circuit look like right now? How does your computer see what is being sent between the Arduino and the BMS? Technically there is no concept of "packets" on the actual serial lines. The byte is sent, and then the wires just hold a constant voltage until the next byte is sent. However, USB does have a concept of "packets". I assume when your serial port reader (whatever thing that is) reads the serial port, it has to decide how to send the binary data using the packet system the USB has. My guess is that shouldn't matter to the BMS. Does the BMS respond when you send the code you sent in the first picture? Also: what hardware and software are you using to monitor the serial data? That might help me figure out how and why you are getting these packets. |
my foul, i have found the issue, now i get for the 0x90 command a5 01 90 08 01 01 00 00 75 30 01 46 2c back |
Yay! I am so glad it is working out and that you are able to interpret what the different parts of the returned data does. Now you just need to look more at the datasheet and convert those 8 data bytes into properties like voltage and SOC. |
hello, |
Hello, I do have discord. It is Forrest # 0803. Sorry for the delay in my response. |
Hello,
it is possibil that you make your lib work with the daly bms?
i have atached the protocol that i found, and in my version the bluetooth dongle communication adress says 0x80, the pc software 0x40
Daly RS485+UART protocol.pdf
dump.txt
The text was updated successfully, but these errors were encountered: