Skip to content
This repository has been archived by the owner on Sep 19, 2022. It is now read-only.

Onewheel Pint #6

Open
TomasHubelbauer opened this issue Jul 13, 2019 · 14 comments
Open

Onewheel Pint #6

TomasHubelbauer opened this issue Jul 13, 2019 · 14 comments
Assignees
Labels
feature A feature request

Comments

@TomasHubelbauer
Copy link

Hey, first of all, thank you for a great app! You're code helped me a lot when implementing a Web Bluetooth based Onewheel companion app of my own. Especially the unlock part, although I am still struggling with the reminder to the board to stay unlocked. I'm sure I'll be able to figure it out though based on further reading of your code.

Will you be getting a Pint and extending this app to support it? I am thinking of ordering one now that they are shipping them. Of course it will take a while before it actually arrives.

I heard that there will be a different app for the Pint, hopefully that doesn't mean it will be more locked down than the current one is.

@COM8
Copy link
Owner

COM8 commented Jul 13, 2019

The thing with the unlock:

For me the board unlock mechanism also does not work 100% of the time. Sometimes it locks up roughly after 10-25 min and sometimes it doesn't. Until know I thought it was a problem of my phone since when I was testing it with my laptop it was working always without any problem - even for hours...

Pint

I personally won't get one (too much money right now ;D).
BUT people over at pOneWheel are buying them as well and in theory all that is required for unlocking the new board is to get it's firmware revision number and add it to the OnewheelUnlockHelper.cs class.
So yes I plan to support the Pint.

@beeradmoore
Copy link

My Pint should be here in a few weeks and I'll be updating (and live streaming) the OWCE app. I'll come do a PR here with required changes as well.

@COM8
Copy link
Owner

COM8 commented Jul 24, 2019

Awesome! Let me know where and when you are streaming and I will try to hang around in the chat :D

@COM8
Copy link
Owner

COM8 commented Sep 6, 2019

My Pint should be here in a few weeks and I'll be updating (and live streaming) the OWCE app. I'll come do a PR here with required changes as well.

Any updates on the Pint front?

@COM8 COM8 reopened this Sep 6, 2019
@beeradmoore
Copy link

FM delayed my shipment, Fedex delayed my shipment. It is on route to me now. I’ll let you know when it arrives.

@beeradmoore
Copy link

@COM8 , Pint has arrived. Hopefully Ill get some time this weekend to play with it.

@beeradmoore
Copy link

@COM8, Pint has changed things a little. Here is a little list of what I have found so far.

  • It will actively disconnect itself from the device it's connected to if its handshake does not complete. Makes using LightBlue difficult.
  • The service UUID is the same and there is the same characteristics that exist.
  • (I think) the board serial number is no longer 2 bytes. I don't know what other properties have changed.
  • OWCE will detect the board and connect but a lot of the stats coming through are non existent. Handshake has possibly changed.
  • I have yet to take my Pint out for a ride, some other things are also lots of fun.
  • Progress has been slowed by a few things on my end. I am halfway through moving from Plugin.BLE to my own BLE implementation due to Android issues. One of either iOS 13 SDK, Xcode 11, or Visual Studio for Mac Preview is not playing well with my system making debugging hard. Things should get smoother over the next week.

@COM8
Copy link
Owner

COM8 commented Sep 21, 2019

Hmm let me know if I can help you in some way.

@beeradmoore
Copy link

Have not had a lot of time to work on this. But I have built a new tool for looking into how the OW BLE works. I am hoping this will reveal more secrets about the Pint connection system.

@TomasHubelbauer
Copy link
Author

I'll have my Pint within a month, an interested in using your tool to aid investigation where I can with my board!

@beeradmoore
Copy link

More update from the Pint.

I have setup a BT passthrough thing to monitor all BT traffic to decipher what is happening. Any request that comes in gets forwarded to the board and then from the board back to the OW app. Currently its intercepting OW Plus just fine, I'm seeing all of the data logged. Seeing the handshake take place. Seeing some other things I didn't know happens (writing 0 to the RPM every few seconds).

Pint however stops at some point after the handshake. Going to keep investigating.

@kwatkins
Copy link

@beeradmoore thanks for looking into this, whatever you find we can roll into the app.
fwiw, the latest build is on google play and it's finally back to stable and steady... and ready to be hit with some experimental pint support :)
we will need all the help we can get as far as testing. my XR is so dialed in, and other then being able to fly with the pint - which is still not clear - i'm waiting it out.

@TomasHubelbauer
Copy link
Author

I got my Pint a few weeks back and now have tried it with my Web Bluetooth based app:
https://tomashubelbauer.github.io/onewheel-web-bluetooth

This app has trouble staying connected to the XR (the hey-I'm-still-here handshake every half a minute just doesn't work and I don't know why) so I don't know if Pint is any different in this regard, but right off the bat it is clear that all characteristic names must have changed, because I am getting zeroes across the board.

Does anyone know how to download the Onewheel firmware updates? I know the app is capable of updating the board, so presumably in the official app's codebase, there is an update endpoint somewhere from which the firmware update blobs could be downloaded for reversing?

AFAIK Pint had no firmware update since release though and I am not sure the original factory firmware would be obtainable from this update service anyway. Has anyone looked into this?

@beeradmoore
Copy link

beeradmoore commented Dec 27, 2019

EDIT: Use at your own risk. FM are IP banning people who attempt to use this unlock code when it appears to be invalid.

Pint (+ new XR probably) unlock is complete, ponewheel/android-ponewheel#109 (comment)

@COM8 COM8 added the feature A feature request label Dec 27, 2019
@COM8 COM8 self-assigned this Dec 27, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature A feature request
Projects
None yet
Development

No branches or pull requests

4 participants