lolwheel / Owie

MIT License
145 stars 43 forks source link

Using a Onewheel Pint BMS in an XR with the OWIE chip #23

Closed wxyzsupermod closed 2 years ago

wxyzsupermod commented 2 years ago

I notice in the code there is a spoof function for the serial number is there any reason we cannot use a onewheel pint BMS in an XR the XR bms is broken and I think that the pint and the XR work off the same info so as long as I spoof the serial it should work correct?

lolwheel commented 2 years ago

Correct, Pints and XRs use the same BMSes, serial spoofing is in place exactly for that.

Sent from ProtonMail mobile

-------- Original Message -------- On Feb 27, 2022, 4:37 PM, Corbin wrote:

I notice in the code there is a spoof function for the serial number is there any reason we cannot use a onewheel pint BMS in an XR the XR bms is broken and I think that the pint and the XR work off the same info so as long as I spoof the serial it should work correct?

— Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android. You are receiving this because you are subscribed to this thread.Message ID: @.***>

wxyzsupermod commented 2 years ago

So I will need to recompile the firmware to use that correct? set serialoverride = XR SERIAL; defined in bms_relay.h correct?

lolwheel commented 2 years ago

Nope, the option is available through the WiFi based configuration UI

Sent from ProtonMail mobile

-------- Original Message -------- On Feb 27, 2022, 9:12 PM, Corbin wrote:

So I will need to recompile the firmware to use that correct? set serialoverride = XR SERIAL; defined in bms_relay.h correct?

— Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android. You are receiving this because you commented.Message ID: @.***>

wxyzsupermod commented 2 years ago

Awesome will close this once attempted

dizzydonut10 commented 2 years ago

After installing the chip and powering on before screwing things back together im getting an error 16.

Im fairly certain there are no shorts between pins on the chip, and I don't believe i have any pinched or damaged harness cables.

Im wondering if im misunderstanding the process for spoofing the serial and that's my issue.

The serial on the broken xr bms is: 21100221325 Inputting this number into the owie app causes it to display a completely different serial after reboot, and after looking at comments in the code Its my understanding that I need to remove the first 4 significant digits before i enter it, making the serial: 0221325

When i enter that and reboot, I noticed it doesn't completely change the serial this time, but instead drops the first zero making it: 221325

Any clarification on the spoofing process would be really helpful, thank you!

wxyzsupermod commented 2 years ago

Nope, the option is available through the WiFi based configuration UI Sent from ProtonMail mobile -------- Original Message -------- On Feb 27, 2022, 9:12 PM, Corbin wrote: So I will need to recompile the firmware to use that correct? set serialoverride = XR SERIAL; defined in bms_relay.h correct? — Reply to this email directly, [view it on GitHub](#23 (comment)), or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android. You are receiving this because you commented.Message ID: @.***>

I believe this is the issue is in network.cpp line 192 Settings->bms_serial = bmsSerialParam->value().toInt(); I believe the 0 is dropped when the string is converted to an int but I do not have a onewheel currently to test

lolwheel commented 2 years ago

Github issues is no place for personal troubleshooting guys. Closing this issue. Pop over to the modding thread on OW Discord, you'll get plenty of support there.

nataliegroman commented 2 years ago

I'm sorry to possibly open this back up, but at the moment, I am having the same issue. While XR and Pint use the same BMS, there's some sort of other signal that continues to give me an error 16 despite having installed it correctly (and I also reflashed a second chip to double check). Everything is reading perfectly, it's just that there's apparently, per JWXR, another heartbeat signal that Pints and XRs do not share; spoofing a serial in this instance is not enough. Some sort of way to figure out this interfacing would be fantastic.