DAVEga: Battery monitor, odometer, speedometer

Speed is calculated from erpm which is how vesc controls the motor. No sensor required for speed readings.

4 Likes

Phew so must be missing something in the settings in either the arduino or vesc tool.

It’s unlikely it has to do with VESC settings. I assume you’re an order of magnitude off somewhere in the Dave settings. As a result the calculated speed is up to 0.5 km/h, which is displayed as 0.

It could be the wheel circumference, gear teeth, number of motor pole pairs.

@bigben What’s your values for the following options:

MOTOR_POLE_PAIRS
WHEEL_CIRCUMFERENCE_MM
MOTOR_PULLEY_TEETH
WHEEL_PULLEY_TEETH

?

I set it as circumference 283 for 90mm, 1-1 for teeth as it’s direct drive. Pole pairs 7.(not sure at all on this one as it’s carvon. 2.5

That sounds OK. Not sure about carvon 2.5 poles count, but I doubt you’re an order of magnitude off. You should be seeing some speed indication as long as you’re getting data from the VESC.

You said the voltage is displayed correctly. The small blinking box underneath the speed indicator is green?

Voltage shows correctly but theres a quickly flashing red box.

If it’s red, then you’re not receiving data from the VESC. The voltage shown is the last seen value (it’s persisted). Did you set the EEPROM_INIT_VALUE_VOLTS and now it’s showing whatever you put there or did you leave it at 0?

If the latter and there’s non-zero voltage shown, that means you did have a working VESC connection at some point, but you have lost it now. In that case you’ll want to check your wires for a loose connection.

2 Likes

Strangely now I don’t seem to be able to get anything. It lights up and shows the screen, just has no readings at all! I’ve managed to get 2 Dave’s to this stage…

1 Like

Using Ackmaniac software if this would have any bearing on what is happening… Or more like not happening.

I don’t use Ackmaniac’s FW, but @lrdesigns does and runs Dave with no problem.

The strange thing is that it seems you did have it working for a while. If that’s the case, it must be a HW problem. Probably something with the RX/TX wires.

2 Likes

RX and TX aren’t reversed like a bluetooth module are they?

No, you should connect the VESC RX to the pad labeled RX on the Dave PCB. Same for TX.

1 Like

This may still be before Xmas for some of you. :wink:

IMG_1596

New session data items:

  • min total voltage
  • max speed
  • time elapsed
  • time riding

Available from the session_data branch for the inpatient ones (note that I only just finished coding this and it went through minimal testing). Apologies for the lame time output. This will soon get an update to get properly formatted HH:MM:SS. While it may look trivial, it’s somewhat tricky to do now without exceeding the available flash memory (already at 97%). I will have to do some optimisations before adding more features.

WARNING: This update resets the EEPROM, so be sure to take a note of your total traveled distance before installing and enter it as the EEPROM_INIT_VALUE_TOTAL_DISTANCE in the config.

Merry Christmas everyone!

12 Likes

@janpom do you think you can keep a list of compatible firmwares somewhere? Maybe in the readme.md in github, since Discourse blocks editing old posts (grr).

For example I’m running mostly 2.54 (ackmaniac, BLDC-Tool), and some 2.18 (vanilla BLDC-Tool). I have a Enertion R2 which has custom firmware version 2.80. According to https://enertionboards.zendesk.com/hc/en-us/articles/360000673895 Enertion also has 23.40.

Personally I’ve not tried the Vesc-Tool firmwares yet, of which there’s an Ackmaniac version.

And now Enertion Unity has a new packet format:

We can report what works and what doesn’t, but I’d be nice to have a central place track it all.

Sure, I can add a section to the README file. It’s a great idea. Personally, I have only tested the VESC FW 3.40 (the latest version). If anyone is successfully running DAVEga with another FW, please let me know and I will add it to the list.

I’m not sure if tracking the hardware known to work is worth the time. I’m guessing that any VESC based controller should work as long as it’s running compatible FW and has UART enabled. Right?

3 Likes

Yes​

1 Like

Here’s the draft of the new PCB layout. I think it’s about time to call it v1.0 so I did. :slight_smile:

Changes to v0.2:

  • removed DEBUG pins
  • added 100uF axial capacitor (for a more stable power supply)
  • added pads for a LED and a current limiting resistor (as per @mmaner’s request; can be left unused)
  • brought pads for the 20pF caps closer together (so that the THT caps I have on hand fit)
  • moved the crystal so that it doesn’t rub against the chip on the display above
  • moved USB-UART further from the edge so that the headers are flush with the edge
  • moved the right side mounting holes a hair to the right

57

I’m about to have these manufactured. If anyone would like any more changes speak now or forever hold your piece.

7 Likes

I would relabel “VESC” as “ESC” or “ESC UART” to stave off the trademark wrath nastygrams

4 Likes

That would be kinda wrong though since it doesn’t work with any ESC, only with VESC derivatives running the (modified) VESC FW. I wish there was a better short term for these.

1 Like