MikroTik & Network Setup4 min read
ROS6 vs ROS7 compatibility
Full compatibility guide for RouterOS 6 and RouterOS 7 with Jasiyo, including script differences, known limitations, and how to check your version.
Check your RouterOS version
In WinBox, go to System โ Routerboard and look at the Current Firmware field. Alternatively, open a terminal and run:
MikroTik Terminal
:put [/system resource get version]
If the version starts with 6. you're on ROS6. If it starts with 7. you're on ROS7.
Always select the correct RouterOS version when adding your router in Jasiyo (Routers โ Add Router โ ROS Version). The wrong selection will cause the agent script to fail.
Feature comparison
| Feature | ROS6 | ROS7 |
|---|---|---|
| Phone-home agent | โ Supported | โ Supported |
| JSON parsing (deserialize from=json) | โ Not available | โ Supported |
| Script response format | Script-fragment pattern | JSON response |
| PPPoE user management | โ Full support | โ Full support |
| Hotspot user management | โ Full support | โ Full support |
| ISP auto-setup script | โ Supported | โ Supported |
| Script line length limit | โ ๏ธ 255 chars โ agent handles automatically | No limit |
| fetch tool HTTPS | โ Supported (with certificate) | โ Supported |
| Bandwidth profile sync | โ Full support | โ Full support |
Key script differences
The main difference between the two agent scripts is how they parse the response from Jasiyo's server.
ROS7 โ JSON parsing:
ROS7 Agent (simplified)
:local result [/tool fetch url=$url http-method=post http-data=$body output=user as-value]
:local parsed [:deserialize from=json value=($result->"data")]
:if ([:len ($parsed->"cmd")] > 0) do={ :execute ($parsed->"cmd") }ROS6 โ Script-fragment pattern:
ROS6 Agent (simplified)
:local result [/tool fetch url=$url http-method=post http-data=$body output=user as-value] # ROS6 cannot deserialize JSON โ server returns executable script fragment directly :execute ($result->"data")
Never use the ROS7 agent script on a ROS6 device. The
deserialize from=json command does not exist in ROS6 and will cause a script error.ROS6 specific notes
- โ 255-character line limit โ RouterOS 6 scripts have a 255-character maximum per line. Jasiyo's server automatically breaks commands into multiple lines when building ROS6-compatible scripts. You don't need to do anything.
- โ Certificate issues โ Some older ROS6 devices may have trouble validating HTTPS certificates. If the agent script times out, try adding
check-certificate=noto the fetch command as a temporary workaround while you update the certificate store. - โนRB951 confirmed working โ Jasiyo has been tested and verified on MikroTik RB951 running ROS6. If you're on similar hardware, the standard setup guide applies.