Freitag, 19. April 2013

Bought some items.. no way back !

Even though I get a very good sponsoring by Brusa, I was facing some huge investments and to be honest, I'd gotten a bit afraid of the whole thing. Especially as I have to use CAN messages to control the motor inverter and somehow pick-up a throttle signal for that. All that was advised against by Jack Rickard. He had gotten into a lot of trouble to make his Cadillac Escalade's ECU believe the ICE motor is running more or less normally. I think I'm facing even more challenges as:
  1. I can't put a 0-5V signal into the inverter as throttle signal. I have to query the ECU for the nominal position, convert the numbers and send a CAN message to the inverter.
  2. My motor won't be idling on a stop light because I have a manual transmission. So I fear the ECU might not be happy with that. It might even open the throttle to keep the motor idling at 700rpm.
  3. The original ICE has a low-pressure turbo. This means potentially more inputs to fake.
These are all points one should avoid in a first conversion, I know... oh well. It's gonna be just a bit a longer road of solving small problems.

But back to my shopping day. Today I bought some things:
  1. Payed the Brusa bill for the motor, inverter, charger and DC-DC converter. Sure some fine pieces of engineering but still my biggest financial commitment besides the batteries. So this is as real as it gets. No stepping back anymore - only one way to go: forward!
  2. Bought a used car-lift on ricardo - although I'm not entirely sure yet that it can be safely mounted on a wooden floor in my wood shed. It's a two column, 4 finger lift. So the underside of the car will be easily accessible.
  3. Bought an Arduino Due board, an ehternet shield, a 2 row LCD display and a prototyping shield.
  4. I also ordered the stickers that go to the side of the car as part of the sponsoring agreement.
Why an Arduino Due and not a Macchina which would be better suited for cars? Well, the Due is significantly faster. But the main reason is that it's possible to build a shield with two CAN buses. That's a good thing as I prefer to keep the Volvo's high speed bus and the bus with the Brusa components separated - even tough both operate at 500kbps. I will use the Arduino to query the ECU for the throttle position and control the electric motor.
Another advantage of the Due is that it offers two DAC outputs (analog audio). So it's possible to playback .wav files. My (somewhat crazy) idea is to simulate the output of the crankshaft wheel sensor this way. The sensor generates 58 pulses and two missing pulses per revolution. If it's not possible to simulate this behavior with a PWM (pulse width modulated) output, it might be possible to playback a square-wave sound at different speeds to simulate the crankshaft wheel for the ECU. This way I don't need to transfer the wheel to the electric motor and I could solve the idling problem. If the rpm of the electric motor drops below 700rpm, the Arduino could just keep faking the 700rpm.
If the engine speed of the ICE is between 600rpm and 9000rpm, the following would apply:
600rpm means 10 revolutions per second. With 60 dents (incl. 2 missing) this would mean a square wave at 600Hz (and 9kHz at 9000rpm). It would have to be switched off precisely from 10 times per second (@600rpm) to about 150 times per second (@9000rpm) and back on after 3ms (@600rpm) to only 0.2ms (@9000rpm). I'm not sure if the 0.2ms are within reach of the Arduino due PWM output. So as a fallback, I might use the approach via the audio output.

So although not everything is proven to work, I'm quite confident to have a valid approach. Sure, there will be many pitfalls. But with some luck and some help from a very supportive community, I might get this heavy luxury car running some day this or next year.

Thanks for reading and stay tuned! There's more to come: I'm planning a video tutorial on CAN sniffing to find the throttle signal.

Sonntag, 7. April 2013

A first breakthrough: BRUSA components selected

Things are starting to move in the right direction...

BRUSA components

After I had the chance to meet Mr. Brusa  in person (owner of on the 4. conference of the Swiss Forum for Electromobility on January 29th 2013 and some succeeding negotiations, I find myself in the very lucky position to have found an agreement with him for sponsoring of my first conversion. So I'm able to obtain some of the finest parts available for EVs for an affordable price:

Hybrid Synchronous Motor HSM1-6.17.12 with High Power Inverter DMC524

Nominal speed4'200 rpm
S1 - torque130 Nm
Max. torque (at max. current)220 Nm
Continuous power70 kW
Max. power96 kW
Max. speed12'000 rpm
Weight51.5 kg


Bidirectional DC-DC converter BSC623-12V

  • Bidirectional operation
  • High voltage range: 170-425V
  • Continuous / peak power: 2.8kW / 3.5kW
  • Fully galvanic isolation between HV- and LV-circuit
  • Resonant topology ensures very low switching losses and excellent EMC-behavior
  • Very high efficiency (93.5%)
  • Very compact and light design (4.8kg), liquid cooled
  • Fully automotive compliant (IP65 protection)
  • PARAM-tool offers comprehensive configuration options and diagnostic function
  • Optional operation without CAN (CAN-less mode)
  • Enables emergency recharge of traction battery via common jump-start-cable 

On-Board-Charger NLG513 SX

Range input voltage 100-264 V
Max. input current 16 A
Range input frequency 48-62 Hz
Range charging voltage 200-520 V
Max. charging current 12.5 A
Efficiency 93%
Weight 6.3 kg

Planning the conversion 

The above components should match quite well to a 1600kg car. The car won't have the same power as with the current 2.5L Turbo ICE but when comparing the power/torque curves of the Brusa motor with a 2.0L engine, I expect a slightly better performance than a S80 with a 2.0L engine. So if all goes well, the car will accelerate to 100kmh within 9 seconds and will be well suited for Swiss highways. (120kmh speed limit). This will suffice as I don't plan to go racing. In the worst case, I could upgrade to a larger inverter and the same motor should be able to output 300Nm peak - like the current ICE.
The Brusa components define some other facts for my conversion:
  • Pack voltage: 400-425V (requiring approx. 133 CALB or Winston 60Ah or 100Ah cells)
  • Liquid cooling of the components
  • A heater (and probably an AC system) that runs on 400V
  • Facts and figures on the added weight of EV components

Weight distribution

The current situation looks like this:

Weight Front
1000kg (50:50 left/right)
Weight Rear
640kg (50:50 left/right)
Weight distribution
61% front, 39%   rear
Motor (estim.)
300kg (front)
Exhaust system (estim.)
30kg (50:50 front/rear)
Gasoline and Tank (60L, estim.)
65kg (rear)

This results in an estimated weight reduction of:
Reduction front
Reduction rear

I estimate to add the following components for the conversion:
Accessories front
Accessories rear
Battery front
242kg (max. 242kg)
Battery rear
80kg (max. 234kg)

This results in an estimated weight addition of:
Addition front
315kg (max. 315kg)
Addition rear
90kg (max. 244kg)

The final weight distribution will be:
1000kg (max. 1000kg)
650kg (max. 804kg)
1650kg (max. 1804kg)

As the max. allowed weight on the front axle is 1180kg and on the rear axle 1030kg, I decided not to restore the original weight distribution of 61:39 but restore the original weight on the front axle and move the rest to the rear. The front axle was already closer to the limit (180kg) than the rear axle (390kg). And I must leave some margin for the case where 4-5 passengers are in the car. The more weight I move to the rear, the worse the car will handle in snow, I'm aware of that.


As Swiss law demands, all security relevant components have to work again after the DIY Guide). These are the main components I must keep working:
conversion (refer to
  • Power brakes: As the S80 already contains a 12V electrical vacuum pump, I'll continue to use this one (lucky car choice)
  • Power steering: An electro-hydraulic pump has to replace the ICE powered pump
  • Heating: In a country like Switzerland, this is a must. Also the ability to defrost the windshield is mandatory. Here I'd like to use some 2.2kW to 3kW water-heating unit which operates on 400V (might be a bit of a problem)
  • The following security installations should work without modification (except faking a running engine to the ECM and CCM):
    • Adaptive brake lights
    • Airbags (front, curtains, seats)
    • ABS / ABS-Pump
    • BLIS (Blind Spot Information System)
    • Bi-Xenon headlights (swiveling) and headlight washers
    • Brake Assistance (BAS): increases brake pressure if the pedal is depressed fast
    • Dynamic stabilization and traction control (DSTC)
    • Seat belt tensioner
    • Rear de-mist
    • Automatic climate control
    • Fog lights
    • Park distance control front and rear 
Air conditioning is optional at the moment.

The biggest challenge

I would like to keep the current drive-by-wire system if possible (to keep cruise control operative). But this might pose some difficult challenges: The throttle pedal has two potentiometers. One delivers an analog voltage and the other a PWM signal. The ECM verifies the accuracy of both signals and then controls a throttle motor which is attached to the ICE. But it's not a step motor. The ECM verifies the position of the throttle from the signal of two potentiometers on the throttle unit. So either I keep the throttle unit and attach another potentiometer on the throttle (not my preferred solution) or I use an Arduino based Macchina to pick-up the throttle motor power signal, generate two analog signals (which must correspond so the ECM does not report a fault) and generate the necessary CAN signals to control the inverter.


I compiled a documentation with the above details for the "Strassenverkehrsamt" (licensing department) and I and hope to get a green light. I also started brushing out a spot in our to-be-garage (it's currently only a wood shed and needs to be reinforced for fire-protection and a car lift).