EasyManua.ls Logo

Hirschmann NetModule NB1601 - Page 130

Hirschmann NetModule NB1601
244 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
6.7. SERVICES
6.7.1. SDK
NetModule AG routers are shipping with a Software Development Kit (SDK) which offers a simple and
fast way to implement customer-specific functions and applications. It consists of:
1. An SDK host which defines the runtime environment (a so-called sandbox), that is, controlling
access to system resources (such as memory, storage and CPU) and, by doing so, catering for
the right scalability
2. An interpreter language called arena, a light-weight scripting language optimized for embedded
systems, which uses a syntax similar to ANSI-C but adds support for exceptions, automatic
memory management and runtime polymorphism on top of that
3. A NetModule AG-specific Application Programming Interface (API), which ships with a compre-
hensive set of functions for accessing hardware interfaces (e.g. digital IO ports, GPS, external
storage media, serial ports) but also for retrieving system status parameters, sending E-Mail or
SMS messages or simply just to configure the router
Anyone, reasonably experienced in the C language, will find an environment that is easy to dig in.
However, feel free to contact us via support@netmodule.com and we will happily support you in finding
a programming solution to your specific problem.
The Language
The arena scripting language offers a broad range of POSIX functions (like printf or open) and
provides, together with tailor-made API functions, a simple platform for implementing any sort of appli-
cations to interconnect your favourite device or service with the router.
Here comes a short example:
/* We are going to eavesd rop on the first serial port
* and turn on lights via a digital I/ O output port ,
* other wise we 'd have to send a short mes sage .
*/
f o r ( a ttempt s = 0; attem pts < 3; a ttempt s ++) {
if ( nb_serial_re a d (" serial0 " ) == " Knock Knock ! " ) {
nb_serial_wr i t e (" serial0 " , " Who 's there ?") ;
if ( nb_serial_re a d (" serial0 " ) == " Santa " ) {
printf (" Hurray !\n " ) ;
nb_di o_set ( " out1 " , 1);
}
}
}
nb_sm s _send ( " +12345 6789 " , " No prese nts this year :( ")
A set of example scripts can be downloaded directly from the router, you can find a list of them in
the appendix. The manual which can be obtained from the NetModule AG support web page gives a
detailed introduction of the language, including a description of all available functions.
NB1601 130 User Manual for NRSW version 4.8.0.103

Table of Contents

Related product manuals