FAQ
Here is a list of questions commonly asked about our products and services.
You may also like to see a list of our controller’s capabilities.
Q: How do I program your controllers?
A: You program in a high level language called Venom. The Venom compiler is in the controller.
There is also an Integrated Development Environment that runs on your PC, called VenomIDE.
It is also possible to use C or Assembler, but we’ve noticed that everyone who gets to try Venom ends up liking it.
Q: How good is your technical support?
A: We have consistently good feedback about our technical support service, perhaps because you get to talk to the engineers who designed the system. If you find a problem that is holding you up we will usually get to work on it immediately.
Q: How large can programs get?
A: Venom code is very space-efficient. Only a couple of customers ever managed to fill even the old VM1’s 192K application space – and the new VM2 has at least 1M byte of application space (five times as much).
Your code will also be smaller than you might expect because it doesn’t need to contain many device drivers as many of these are already in the Venom language.
To give you an idea of the size of the code, a significant application written for one of our customers that takes 150K as text takes around 45K as Venom code – less than 4.5% of the space available in a VM2.
The VM2 also has a 7 MByte Flash Filing System which gives your programs access to a lot of bitmap images, fonts and other data.
Q: How much power does a controller take?
A: Our controllers can usually be used in battery powered applications because they use so little power.
Q: How many I/O can you control?
A: You can easily control around 300 Digital I/O and 48 Analogue I/O from a single controller. It is possible to control even more.
Q: Do you support TCP/IP?
A: Yes, Venom has TCP/IP and other Internet protocols built in.
Q: Can you read 16-bit analogue inputs?
A: Many types of 16-bit ADC may be controlled using the I2C bus or the SPI bus.
We supply an Analogue I/O Port with an 18-bit ADC on board.
Q: Can you drive colour graphics LCDs?
A: Our controllers can drive many types of graphic and alphanumeric LCDs, including colour. Please contact us to check which displays we currently support, or to request support for your display.
Q: Can you drive touch screens?
A: Yes – a software object will drive the TSC2003 touch screen driver IC.
Q: How do I store non-volatile parameters/data?
A: There are software objects that handle non-volatile data:
- The SafeData object stores small quantities of data in an external I2C EEPROM.
- File system – stores data and text files, in external memory cards or in the on-board flash or SRAM.
Q: What kind of text handling is available?
A: Venom has good text handling capabilities. Use the String or Text Buffer objects to hold text, then…
- PRINT TO the String or Buffer to append text
- PRINT all of the String or Buffer, or any sub-section of it to extract sections of text
- Use the .Put message to append or insert text
- Use the .Find message to search for occurrences of a sub-string.
- Use the .Element message to access any character within the buffer
Text may also be held in Arrays and “string constants”.
The protocol analyser object ProtAnalyser can extract keywords and numbers from any input stream or textual object.
Q: What’s the difference between a string variable and a text buffer?
A: Buffers expand and shrink as needed, in blocks of about 256 bytes, whereas strings take a fixed amount of memory, specified as a maximum length when created. Most operations can be done on either.
Q: How do I enter numbers on a numeric keypad, calculator style?
A: Use the NumberReader object in conjunction with a real keypad, or a virtual keypad on a touchscreen.
Q: How do I handle calendar dates?
A: Use the built-in Real Time Clock Calendar and the Date/Time object…