RTPy is a device programming and simulation language with a high-level syntax
The semantics of RTPy are closer to C/C++ than Python. RTPy is a statically typed language with the ability to use pointers. The syntax however is very close to Python, making it familiar to anyone who is used to program in a high-level language.
RTPy is for embedded software developers
RTPy caters specifically to embedded software developers by offering compatibility with any RTOS and allowing seamless integration of C/C++ alongside RTPy.
RTPy is for engineers
RTPy offers essential tools tailored for engineers, such as interactive application state inspection, graphing of variables and visualizing code paths.
RTPy is safe
By having a Rust like memory management and by adhering to NASA's safety-critical code development guidelines, RTPy ensures reliability.
RTPy enables collaboration
With RTPy's clear separation between C or C++ in the background and RTPy in the foreground, engineers and embedded software developers can collaborate effectively and accelerate product development.
Engineers write specifications for electrical hardware and software functionality. This is implemented by electrical and embedded software engineers.
With RTPy, embedded software developers finish a project 30% faster. RTPy also allows for more maintainable code, implementing a change in specification is trivial.
Here, the embedded software developers write device drivers and expose core functionality to RTPy. The engineers can build on top of this core functionality to write their control logic in a Python environment.
Engineers can write all the software themselves on standardized hardware to create a prototype. The written control logic can in a later stage be implemented on custom hardware by embedded software developers.
Below, you'll find two lists of tasks. The first highlights why software developers are still essential for completing projects. The second list showcases tasks that engineers may aspire to achieve but encounter significant barriers with languages like C/C++ on embedded systems.
Interrupt Service Routines (ISRs)
Handling interrupts for real-time responses to hardware events.
Signal Processing
Implementing algorithms for signal processing tasks like filtering, FFT, debouncing, etc.
Hardware Abstraction Layers (HAL)
Developing and interacting with manufacturer HAL libraries to abstract hardware complexities.
Power Management
Implementing sleep modes and power-saving techniques to optimize energy consumption.
Real-Time Operating Systems
Developing or integrating with RTOS for multitasking and scheduling.
Bootloader Development
Creating bootloaders for firmware updates and bootloader protocols.
Communication Protocols
Writing drivers for protocols like UART, SPI, I2C, CAN bus, Ethernet, MQTT, etc.
Low-Level Debugging
Utilizing debugging techniques like JTAG, SWD, printf debugging, etc.
PID Control
Implementing PID loops for motor control, temperature control, etc., in a more intuitive and high-level manner.
Real-Time Data Processing
Processing real-time data streams from sensors or external sources.
Hardware-in-the-Loop Simulation
Developing HIL simulation environments to validate embedded systems against virtual hardware representations before deployment in real-world scenarios.
Safety-Critical Systems
Implementing safety-critical functionalities with higher-level constructs for easier verification and validation.
IOT communications
Implementing communications with other local or cloud devices on a high level
Configuration Management
Managing configurations for various hardware setups or environmental conditions.
Data Logging and Analysis
Collecting data from sensors and logging it for analysis without low-level programming.
High-Level Debugging
Graphing variables and machine state in real time during execution.
Real Time Python bridges the gap between low-level development tasks typically handled by developers and high-level engineering tasks that benefit from a simpler interface for implementation.
Interested?
RTPy is actively seeking partners to collaborate and share their valuable insights, helping tailor RTPy to fit your needs and meet market demands.
Contact me at kevin@rtpy.org
+31 6 36265390