5.7. SERVICES
5.7.1. SDK
NetModule routers are shipping with a Software Development Kit (SDK) which offers a sim-
ple and fast way to implement customer-speci c functions and applications. It consists of:
1. An SDK host which de nes 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 excep-
tions, automatic memory management and runtime polymorphism on top of that
3. A NetModule-speci c Application Programming Interface (API), which ships with a com-
prehensive set of functions for accessing hardware interfaces (e.g. digital IO ports,
GPS, external storage media, serial ports) but also for retrieving system status param-
eters, sending E-Mail or SMS messages or simply just to con gure the router
Anyone, reasonably experienced in the C language, will nd an environment that is easy
to dig in. However, feel free to contact us via
happily support you in nding a programming solution to your speci c 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 applications to interconnect your favourite device or service with the router.
Here comes a short example:
/* We are going to eavesdrop on the first serial port
* and turn on lights via a digital I / O output port ,
* otherwise we d have to send a short message .
*/
( attempts = 0; attempts < 3; attempts ++) {
for
( nb_serial_read (
if
nb_serial_write (
( nb_serial_read (
if
printf (
" Hurray !\ n "
nb_dio_set (
" out1 "
}
}
}
nb_sms_send (
" +123456789 "
A set of example scripts can be downloaded directly from the router, you can nd a list of
them in the appendix. The manual which can be obtained from the
page
gives a detailed introduction of the language, including a description of all available
functions.
NB3000-Line-Hd User Manual 4.2
router@support.netmodule.com
" serial0 "
) ==
" Knock Knock ! "
" serial0 "
,
" Who s there ? "
" serial0 "
) ==
" Santa "
) ;
, 1) ;
,
" No presents this year :( "
115
) {
) ;
) {
)
NetModule support web
and we will
Need help?
Do you have a question about the NB3000-Line-Hd and is the answer not in the manual?
Questions and answers