VEMS
Encyclopedia
VEMS is a low volume commercial engine management system. VEMS is unlike most other EMS's in that it used to be public domain and then a form of open source.

History

The original version of VEMS was called MegaSquirtAVR and was a re-write of the popular but inadequate (at the time) MegaSquirt
MegaSquirt
MegaSquirt is the registered trademark of an aftermarket electronic fuel injection controller designed to be used with a wide range of spark-ignition internal combustion engines It is a complete standalone fuel injection controller with software and hardware, developed by Bruce Bowling and Al...

 system.

Hardware

VEMS can be purchased as a pre-made board or a complete system with several options in between. Most of the design is built with SMD
Surface-mount technology
Surface mount technology is a method for constructing electronic circuits in which the components are mounted directly onto the surface of printed circuit boards . An electronic device so made is called a surface mount device...

 components to keep size down and reliability up.

Microcontroller

VEMS uses the AVR Atmega128 which is significantly more powerful than the original MS1 CPU.

Revisions

The early MS based version was called 2.0 however that has been out of circulation for some time. The 3.0 board was the first "GenBoard" variant. Development was closed at 3.2 and the current version is 3.6. All 3.X versions incorporate one or more wide band controller.

Firmware

VEMS firmware is primarily written in the C programming language
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, however some parts are distributed in binary and not C for IP protection reasons with an NDA.

Documentation

The VEMS project is poorly documented compared with the MegaSquirt system which many believe is over documented. This has caused adoption of the system to be limited and slow.

Firmware revisions are issued very frequently and it is constant development. Latest firmwares have many advanced features such as double continious variable camshaft control, GPS and SD card logging, advanced motorsport features (N2O control, transbrake creep etc).

Tuning Software

Tuning is done with either MegaTune or VemsTune. Until recently Megatune as written by Eric Fahlgren for the MegaSquirt system was only option. MegaTune is licensed under GPL and can therefore be used by anyone. While excellent for Megasquirt, it does not cover all aspects of VEMS, so complete setup and tuning is impossible. It can and has caused incorrect parameters to be written to VEMS causing unpredictable performance.

At present time (2011) MegaTune is mostly obsolete on VEMS as all recent firmwares are only compatible with VemsTune, a user interface that was built from scratch and covers all aspects of VEMS tuning (including firmware updates directly from VEMS servers, WBo2 sensor calibration, logging and of course, tuning). Some users who run older configs still use MegaTune but majority is now using VemsTune which, after long developer phase, is now very usable.

Licenses

The original MSAVR system is public domain and still available for download. This original source is obviously MegaSquirt based and therefore surrounded by some controversy. Later source was under an open source license, however since 3.2 the system is effectively closed source.

Comparison

"DIY" fuel injection systems
MegaSquirt MegaSquirt II MicroSquirt MS2 Sequencer MegaSquirt 3 VEMS FreeEMS
Released 2001 2005 2007 Samples under test 2010 2003 In development, a few hand built prototypes only (?)
Processor 8-Bit MC68HC908 16-Bit MC9S12C64 16-Bit MC9S12C64 Dual 16-bit MC9S12C64 16-Bit MC9S12XEP100 AVR Atmega128 16-Bit MC9S12XDP512
Speed 8 MHz 24 MHz 24 MHz 2 x 24 MHz 50 MHz / 100 MHz 16 MHz 40 MHz
Flash 32 kB
Kilobyte
The kilobyte is a multiple of the unit byte for digital information. Although the prefix kilo- means 1000, the term kilobyte and symbol KB have historically been used to refer to either 1024 bytes or 1000 bytes, dependent upon context, in the fields of computer science and information...

128 kB 128 kB 2 x 128 kB 1024 kB + 32kB 128 kB 512 kB
User RAM 512 B
Byte
The byte is a unit of digital information in computing and telecommunications that most commonly consists of eight bits. Historically, a byte was the number of bits used to encode a single character of text in a computer and for this reason it is the basic addressable element in many computer...

4 kB 4 kB 2 x 4 kB 64 kB 4 kB 32 kB
Total IO pins 34 max with mods 31 max with mods 31 max with mods 62 max 91 53 max 91 or 119
ADC/ATD pins 8 (8 bit) 8 (10 bit) 8 (10 bit) 16 (10 bit) 16, 24 or 32 (12 bit) ? 16 or 24 (10 bit)
IC/OC pins 2 6 exposed 6 exposed 12 exposed 8 - 16 ? 8
Features/ Benefits Fuel and COP ignition with msextra, inexpensive, rich feature set. Fuel and COP ignition with ms2extra, good fuel and ignition accuracy. Same Features as MS-II, plus small size, sealed case, assembled. Sequential Injection (8-channels), COP (8-channels), individual trims, uses MS-II and MS-II Extra Firmware, assembled. Sequential Injection (8-channels), COP (8-channels), individual trims, extension of MS-II Extra Firmware, assembled. Sequential Injection (8-channels), COP (8-channels + 4 logic-level IGN outputs), WideBand controller, rich feature set, assembled. Sequential Injection (6-channels), COP (12-channels), individual trims, cheap, uses free open source software and hardware designs, modular clean source code.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK