Advanced Development with NSC AppWizard & SDK for AVR-GCC
For embedded developers and integrators who need full control of the firmware stack
While MaticStudio provides a visual, no-code environment for designing NSC-based distributed systems, advanced developers can go further by using the NSC OS AppWizard and the accompanying NSC OS Software Development Kit (SDK).
This workflow enables project-wide firmware generation, fine-grained event control, and direct access to the NSC operating system source code — ideal for those who require full customization and performance optimization.
The NSC OS does not include the interpreter, otherwise included in the standard devices that can be programmed with MaticStudio. So the program is deeply integrated and natively compiled into the firmware, making it an ideal choice for embedded solutions with event-driven, distributed processes.
You can re-run the application even after you added your code, which AppWizard preserves.
NSC AppWizard
The AppWizard is a powerful configuration tool that allows you to:
- Define a full distributed project with multiple NSC devices
- Specify roles, addresses, and functions for each node
- Select which OS features to include per device
- Enable or disable event types — including interrupt-level fast events
- Declare project-wide named Remote Procedure Calls (RPCs)
- Design on-device display screens (where supported)
The AppWizard produces a complete folder structure with auto-generated code files for each device, prepared for editing and compilation.

NSC SDK and OS Source
The NSC SDK includes:
- The full source code of the NSC cooperative multitasking OS
- Code templates and configuration headers for each device
- Boilerplate event handlers and RPC interfaces, ready for implementation
- Support files for compilation with AVR-GCC
Developers can directly implement custom behavior in C, access hardware at a low level, and tune performance-critical operations. The event tables and task handlers generated by AppWizard map directly to NSC's internal scheduler, giving you full transparency into execution flow.
When to Use AppWizard + SDK
This workflow is ideal for:
- Designers building custom hardware based on NSC OS
- Advanced applications requiring interrupt-based processing
- Performance tuning beyond the scope of graphical development
- Integrating third-party libraries, device drivers, or non-standard peripherals
- Collaborative firmware development in larger teams using source control
Main Built-in Functions
- Input antibouncing - prevents reading spurious transients
- Click (within 3 sec.) and Longclick (>3 sec) differentiation
- RPC ACK synchronous and asynchronous
- Real Time Clock
- Asynchronous timers
- Incremental ABZ encoder counter
- Activity user-programmable daily-weekly scheduler with 4 scheduling types, day-month exceptions, freeze/unfreeze per type.
- One-wire protocol reader for DS1820 and Maxim-Dallas ROM contact-buttons
- Display: backlight self management
Most NSC devices are designer around the ATmega32 microcontroller.
NSC Protocol
The NSC OS system uses the SFBP protocol for its core communication system. On top of it, the NSC protocol operates at the Application Level of the ISO-OSI model.
For more information read the NSC Protocol specifications (available only in Italian).
Integration with Visual Tools
The AppWizard-based workflow does not exclude the use of MaticStudio or SCADA design tools — the outputs of custom-developed firmware can still participate in a full NSC network and interoperate via RPCs.
Next Step
Download and install NSC OS SDK AppWizard for AVR-GCC.
Note: You also need the AVR-GCC toolchain. Go to the official Microchip website to download the toolchain and visit the Github page dedicated to programming AVR processors with AVR-GCC.