Thank you Electric Rebel, ive seen the guts before but was not sure if they made changes over the years between batteries, diff cells, diff configuration etc. so didn't commit to one 'fix' as im still researching a few diff batteries.
Energica bolts their batteries i believe, at those power levels, spot welding is pretty much out of the picture. bolting, soldering or maybe laser welding would work. bolting much more logical as soldering at those voltages ehh, no thanks. specially when you have to take things apart to replace defective inner pieces.
Lets throw some numbers out that I pulled out of my ass, after I removed my head.
lets say they have 162 20ah cells that can do 5c each, pushing harder is asking for issues. lets say these batteries take up 1 unit of space each.
fast forward to today. there are better cells out there now. they can take a bit more of a beating, lets say 8 c.
lets say these new cells you get a slightly smaller capacity one to take up only 0.8 units of space each. .. that makes room for ehh 30 to 32 additional cells in the same space. in series thats more voltage.
lets say these new cells are good up to 8C discharge. Even if they were only 16ah cells, because of physical smaller, the higher amp allowed -C draw still overall gives a 25 percent-ish power increase.
raw terms, higher voltage at same amps = more power and you are not taxing the amp limits of the controller, inverter or the motor (IF they can handle what your higher voltage is, which i think they should, or find one that can, after working in robotics for years as well as the power plant, it's easy to find drivers / servos / controllers / vfd's in almost any power level and configuration you need. you might need to change the inverter/vfd out, but controller and motor should be ok.
of course the bms and software is going to need to be changed, it's gonna have fits, that's a no brainer.. WHICH is why I am hoping that possibly i t's just setting new max values for variables, in the software, and not a bunch of nuanced sifting thru 800 subroutines of code trying to find each instance of working with voltage to change the number... pretty sure it's a universal variable, but after working on GE's nightmare garbage for 40 years, ive learned to not trust a thing to be built 'logically' anymore

.
as for bms, they tend to be modularized. so you add another board to handle the extra P arm, daisy chain it in with a finger to the one next to it to keep board voltages balanced and you should be good to go, unless each board has to talk to each other, which i hope is not the case. of course you have to look at energica software, if they have a boards = 9 somewhere and you now have it at 10, that could be an issue somewhere else (hence the sift the code part). if they are using absolute memory cell addressing, that extra digit/byte can cause a big problem, ie more rewriting. no it's not going to be a simple feat i do not think.
other problem comes when changing stuff, it all has to talk to each other and re marry it all, that will be a bear w/o the programmer and it's much better to do that with a proper entry into the software instead of a hack that you are not sure is showing you all levels.
if its something that energica could do lickety split, awesome, i send bike back to san fran again, if not, then umm, oof, ok, was worth a try.
they have their own unique code that is immediately clear, but after working on symphony / harmony / mk V / mk VI, Siemens plc, ladder logic / bcd / hex / octal / slc 500 /can bus / modbus/ serial / null modem / bla bla bla i don't think ill have too many issues figuring it out... they all kind of work pretty much the same even with the idiosyncroties
does it void the warranty ,hell yeah no worries ill sign the waiver

Aaron
i wish i had a few million dollars, id have bought the company myself, and guess what the first (ok maybe 3rd) project would have been.