EasyManua.ls Logo

NetModule NB800 Series - Services; Sdk

NetModule NB800 Series
225 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...
NBB-800
User Manual for NRSW version 4.5.0.100
5.7. SERVICES
5.7.1. SDK
NetModule 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-specific Application Programming Interface (API), which ships with a comprehen-
sive 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 router@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 eavesdr op on the first serial port
* and turn on lights via a digital I /O output port ,
* otherw ise we 'd have to send a short message .
*/
f o r ( atte mpts = 0; attemp ts < 3; attempts ++) {
if ( nb_serial_read ( " ser ial0 " ) == " Knock Knock !") {
nb_serial_wri t e ( " serial0 " , " Who 's there ? ");
if ( nb_serial_read ( " ser ial0 " ) == " Santa ") {
printf (" Hurray !\n " );
nb_di o_set ( " out1 " , 1) ;
}
}
}
nb_sms _send (" +12345678 9 " , " No presents 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 support web page gives a detailed
introduction of the language, including a description of all available functions.
113

Table of Contents

Related product manuals