FreeSK8 Mobile App (Android & iOS)

One thing I don’t know if it makes sense for others or not, but if there is no esc connected to the app, it’s also not possible to go through different menu points like input/motor config etc.
I for myself would like to have a look what I could change where before I connect to an esc just to make sure I don’t accidentally fuck something up. For this it would be nice if those parts would be enabled and not locked with the „no connection“ message.
I can understand why it is how it is right now, so it’s just personal preference here.

6 Likes

Fitted a robogotchi etc to my Lonestar last Friday. First go at some basice DiY.

4 Likes

I think you’ll be pretty happy with that decision. :joy:

5 Likes

Progress continues! Version 0.18.1 is expected to be available today for testers. The plan is to validate the fixes in this update via testing and then push it to the public app stores once it’s been given a :white_check_mark:

The UART Input Configuration now works as expected (I was wrongly displaying the PPM options). So if you are trying to change things like throttle curves and smart reverse ramp times with a UART remote it’ll actually work now.

You’ll notice the FreeSK8 graphics have been updated. No more “ransom note” logo in the menu. I’m gonna miss that thing. There are also updated links in the Help & Support menu option.

The GPS route coloring has been revised. From 0-50% of your max speed the route is Blue->Yellow and from 50-100% of your max speed the route is Yellow->Red.

Issues with ride Merging are expected to be resolved and if something does go wrong new alerts were added to help diagnose failures. Rides merged before this update display incorrect max motor amps in the Quick Statistics but everything else should be OK.

A busy dialog was added while the Data Import and Export routines are busy. Sometimes export can take 10 seconds or more to prepare if you have a lot of data and now you’ll know your phone is busy.

That’s the bulk of it! Thanks for all the help! :dancer:

v0.18.1

* Fixed UART Input Configuration
* Updated Help & Support links
* Updated FreeSK8 Mobile graphics
* Updated GPS route colors
* Improved Ride Merge process
* Improved exception handling
* Display dialog with Data Import/Export processes
* Confirm switch to GPS metrics
* Other fixes and improvements
9 Likes

I did a ride on Sunday and had the log running for 4 hours. It was 4% of memory in size and took over 20 mins to unpack after syncing. It doesn’t seem to run in the background when switching to another app.
Will there be a fix for that?
Do you have plans to accelerate that process?

3 Likes

Adjusting the Robogotchi settings may help reduce the sync times. The most ideal logging configurations are

  • Single ESC @ 1Hz
  • Dual ESC @ 2Hz
  • Quad ESC @ 4Hz

The unpacking time will vary depending on the processor speed of the mobile device. It might be helpful to check the in app debug log after the sync process for errors.

Potential optimizations to be looked into are multi-threading the unpacking process and background processing in Flutter.

5 Likes

Asking for a friend with a UBox.
App seems to be connected but stuck in the receive data window. What could cause this?

3 Likes

Mine used to do this. Make sure he has UART enabled for the side it’s plugged into. If he has the Spintend remote, quite easy.

3 Likes

All right, I’m gonna tell him. Thx Bill.

3 Likes

He needs to enable his uBox UART-BLE. Check the manual they provide; there’s a power button sequence that must be hit after startup.

Oops didn’t see @BillGordon already answer the same.

Yeah; it’s a bit weird, there’s a digitally controlled manual multiplexer on the UARTs

4 Likes

I consistently have an issue where if I start freesk8 and then put my phone in my pocket, when I take it out and resume freesk8, freesk8 will be disconnected and showing old data but appear connected.

For example at a charge stop when I resume freesk8 I see this:

Appears connected.

When I switch to the details tab I see

Showing power remaining 77%. Actual power remaining at this point would be 25%.
77% probably would have been about 10 mins into the ride.

Disconnecting and reconnecting at this point sometimes works but just as often does not.

Force quitting and relaunching freesk8 and then reconnecting will almost always work and will give live updates again.

My sense is the numbers are frozen from a point about ten minutes into the ride.
Guessing at that point android suspended freesk8.

This prevents me from being able to pull out my phone and check my voltage and stuff while moving which I was hoping would be a major advantage of freesk8 over vesctool.

I know it’s not possible to opt out of being suspended on modern android and with good reason.

But I’ve seen apps that endrun that by installing themselves as a permanent notification in the pulldown tray (or something) so they are always running to some extent.

That would be a great feature to have.

5 Likes

You’ve got the gist of it; Android (and iOS) are pretty aggressive with power saving so they will sleep the application at X minutes and it kills off any BLE connectivity. Looks like detecting the disconnection is an area we could improve upon.

The way around this is to create a separate service that runs solely keeps the BLE connection live; unfortunately this also comes at the added cost of increasing power consumption on your phone as this service prevents normal OS level power saving features from operating.

This is going to sound a bit like a blowoff answer, but hear me out:

FreeSK8 Mobile app was designed as a before/after ride interaction. One of our primary goals with creating the FreeSK8 System was to develop an integrated riding system that brings all relevant information to the rider without having to pull out their phone.

This is why the Robogotchi logs automatically and has an asynchronous logsync function rather than trying to log over a BLE tether. It’s also why our OSRR remote has relevant board telemetry at a glance. You simply wouldn’t need to pull out your phone if using FreeSK8 hardware, which is our design intent even if it sounds a bit self-serving.

Our development efforts are focused on furthering that integrated hardware approach, so creating an always-on mobile phone service to keep the BLE connection active isn’t really on the branch of development were currently on.

With all that said; FreeSK8 Mobile is open source so if this is a feature someone feels strongly enough about we’d love to take a pull request on it. It would also open the gates to allowing logging over BLE tether from any compatible BLE module.

8 Likes

This has come up before but was thought to be isolated to iOS. If the issue is related I’ve applied the same patch to the Android platform in the next beta update. In the future, it might prove helpful to check the in app debug log (shaking your phone) when this problem occurs. Sometimes there are clues as to what is going wrong.

4 Likes

Beta testers will be receiving version 0.18.2 sometime in the next day or two. Strictly improvements on the existing system but hopefully some useful fixes for you all to try.

Tapping the fault icon on the map displays an updated dialog with ESC statistics from that time.

We also worked with the uSplit team to resolve issues connecting to the Robogotchi. With the uSplit 0.12 firmware and this update we can find new limits :partying_face:

v0.18.2

* Improved fault dialog in log viewer
* Fix re-requesting CAN_PING message
* Re-drawing UI when unexpectedly disconnected
* Removed ESC custom message dialog
* Chasing sync gremlin

In publishing this update it became apparent I never promoted 0.18.1 to the public. So that is in process now for Goole Play store and coming soon:tm: for the App Store.

image

8 Likes

My usplit/RG combo is sometimes a bit sketch. I appreciate all your work.

3 Likes

Thanks!

What is your uSplit / Robogotchi configuration like? I’ve noticed an issue too, not sure if it’s the same.

With FreeSK8 0.18.2 + uSplit v0.12 + Robogotchi (configured for 2Hz Dual-ESC) the CAN scan when connecting is often requested multiple times before coming through. It seems to work better in a single ESC configuration. Maybe @Ricco has some ideas? :pray:

3 Likes

An update is on it’s way for everyone. The public is getting bumped to 0.18.2 as there haven’t been any big issues and beta testers will soon seen 0.19.0!

What’s new?

We received news that VESC FW5.3 is nearing release so changes were implemented to support the current beta. So long as the application and motor configurations stay the same FreeSK8 will be ready when it comes out of beta :crossed_fingers:

We’ve had multiple requests for ADC support in the Input Configuration. Now the VESC ADC + UART application mode is selectable. Without an actual ADC device to setup I used the ADC setup wizard in vesc_tool as reference. If you give this a try please let us know if it’s useful or lacking any features or variables!

As a quick way to move settings between ESC’s we’ve added Copy and Paste buttons to the Motor Configuration. The values displayed on screen can be copied to memory allowing you to switch to a connected ESC and easily update everything (except FOC sensor mode) with the press of a button. Oh yeah, don’t forget to save.

Other updates are minor, mostly visual things. The FOC Wizard (results dialog) is a little more informative but still could use a full second pass of improvements.

The Robogotchi update is for VESC FW5.3 and remains compatible with 5.1/5.2

Release notes:

v0.19.0

* Added support for VESC FW5.3-beta
* Added support for ADC Input Configuration
* Added Copy/Paste to Motor Configuration
* Improve FOC detection results dialog
* Increase Robogotchi ESC Temp Alert to 120C
* Increase real-time gauge speed limit to 142kph
* Fixes for real-time efficiency gauge
* Includes Robogotchi 0.10.2 Firmware

Robogotchi release notes:

v0.10.2

Change telemetry request to support VESC FW5.3
11 Likes

Thanks to the Queen of Software.

4 Likes

Taking it to the next level!

4 Likes

I’ll see if I can capture a time that multiple requests are required on the logic analyzer so I can debug. Do you have any other devices connected to the uSplit when you see this happen?

1 Like