Error 010: invalid function or declaration


I’m getting two complier errors in the Control code - one seems to point to “split” as an invalid function:

error 010: invalid function or declaration

The other is:

error 013: no entry point (no public functions)

This refers to my last line of code

Also the text in the Control tab is not as expected in the tutorial. I am seeing:

Machine-Logic type:
Machine-Logic source:

Instead of

Script type:
Script source:

Any thoughts?


Hello @MattBro,

To answer your question, I need to know which tutorial and what hardware you are using.
The two parameters you mentioned have been renamed but the function is still the same.

Script type =^ Machine-Logic type
Script source =^ Machine-Logic source

I think you use a tutorial in which screenshots of an older version of the rapidM2M portal are included.

Kind regards

Hi - thanks for the reply. I was following the tutorial in the original development board documentation and adapting it for my own project (M220 based). I have everything working up to the Connect script which does not compile - is there a possibility that having copied the example script into Notepad that it is of the wrong format? Unicode maybe?



Hello @MattBro

I’m still not sure which tutorial you’re using. But since you used the terms “Script type” and “script source” could it be the following?

Otherwise can you give me the number of the tutorial? This is usually on the first page in one of the 4 corners

Kind regards

Hi sorry - I was away from my office. Now back and can find the information…

The tutorial was included within the rapidM2M developer package M120 User Manual 300431 which I downloaded. I don’t actually have the hardware - I have my own design but have effectively modified and used the examples included in the rapidM2M Toolset and the information in the mentioned manual 300431 to get everything working except for the control script.

Thanks for your input.



So you trying to compile your own script?

An explanation of your two error codes (error 010 and error 013) can be found in the Pawn Language Guide on page 151 (see Pawn Language Guide ).

You can find additional examples at the following link:

I also recommend that you update your device-specific SDK. This will install the current include files, libraries for different IC and additional examples into your rapidM2M Toolset folder (see Installing the device-specific SDK ).

Kind regards

Great - thanks for the information. I have tried to compile one of the example .txt files from the github repository and get the same errors. Do i need to include any header information or use a main function?

Sorry to not fully understand this yet.

Hello @MattBro

You have entered the Data Descriptor (Content of the *.txt-File) in the wrong field. The input field “Machine-Logic” is for entering the PAWN-Code (Content of the *.p-File) directly via the Interface of the rapidM2M portal. The data descriptor must be entered in the “Machine Profile” field.

If you planning to use the rapidM2M Toolset to create your program you do not have to enter anything in the Input field “Machine-Logic” but it is recommended to set the “Script Sync” to "development (no sync). However, the data descriptor must be entered in the “Machine Profile” field in any case

This Parameter can be found if you click on the serial number of the device (which is connected with the corresponding site) in the list of Sites. The list of Sites is located in the “Sites / Applications” area of the rapidM2M Portal.

The possible settings of the “Script sync” parameter have the following meaning:

Perfect - thanks! All up and running now and i have data being recorded and trended on screen. I have this message on the Site/Applications page - would this be to do with the Development (no sync) setting?


Thanks for getting me up and running!

Yes, this is due to this setting