LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)

More
02 Oct 2025 09:04 - 02 Oct 2025 09:06 #335697 by gitano
Hello,

after a 6 months break from RIO and LinuxCNC i tried to play around again on the latest riocore git release (wow... the latest additions look VAST!) and can't get past this error:

[code]LINUXCNC - 2.9.6
Machine configuration directory is '/media/gitano/DATA/Software/CAD+CAM/LinuxCNC-RIO/riocore/Output/Tangbob/LinuxCNC'
Machine configuration file is 'rio.ini'
Starting LinuxCNC...
linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
Note: Using POSIX non-realtime
twopass:invoked with <> options
twopass:found ./rio.hal
twopass:found ./pregui_call_list.hal
twopass:pass0: loadusr -W hal_manualtoolchange
riocomp.c: In function ‘rtapi_app_main’:
riocomp.c:539:37: error: passing argument 2 of ‘hal_export_funct’ from incompatible pointer type [-Wincompatible-pointer-types]
  539 |     retval = hal_export_funct(name, rio_readwrite, data, 1, 0, comp_id);
      |                                     ^~~~~~~~~~~~~
      |                                     |
      |                                     void (*)(void)
In file included from riocomp.c:4:
/usr/include/linuxcnc/hal.h:710:54: note: expected ‘void (*)(void *, long int)’ but argument is of type ‘void (*)(void)’
  710 | extern int hal_export_funct(const char *name, void (*funct) (void *, long),
      |                                               ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
riocomp.c:48:6: note: ‘rio_readwrite’ declared here
   48 | void rio_readwrite();
      |      ^~~~~~~~~~~~~
make: *** [/usr/share/linuxcnc/Makefile.modinc:117: riocomp.o] Error 1
# compiling and loading rio component...failed
rio: rtapi_app_main: Operation not permitted (-1)

twopass: load_the_modules cmd=<orig_loadrt rio>
waitpid failed /usr/bin/rtapi_app rio
/usr/bin/rtapi_app exited without becoming ready
insmod for rio failed, returned -1

Shutting down and cleaning up LinuxCNC...
Note: Using POSIX non-realtime
LinuxCNC terminated with an error.  You can find more information in the log:
    /home/gitano/linuxcnc_debug.txt
and
    /home/gitano/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal

which looks like some coding incompabilities between HAL and RIO, as far as i can see. This happens on my testing machine both with LinuxCNC 2.9 as well as master,  both compiled from source, the system is latest Debian 12/13 unstable forky/sid.

Any ideas how to fix this?

Thank You very much!

Cheers,
-lgitano[/code]
Last edit: 02 Oct 2025 09:06 by gitano.
The following user(s) said Thank You: meister

Please Log in or Create an account to join the conversation.

More
02 Oct 2025 10:50 #335701 by meister
fixed in main and dev branch

thanks !

Please Log in or Create an account to join the conversation.

More
02 Oct 2025 11:38 #335705 by gitano
updated and works again! Thank You!
The following user(s) said Thank You: meister

Please Log in or Create an account to join the conversation.

More
10 Oct 2025 12:30 #336192 by meister
I have expanded rio so that you can also create rpi5-gpio and parport configs.




it's not direct mixable with the FPGA configs :(
Attachments:
The following user(s) said Thank You: tlightus, tommylight, kzali

Please Log in or Create an account to join the conversation.

More
11 Oct 2025 17:44 #336284 by meister
That makes it easier to imagine :)



It should now also be possible to mix FPGA and RPI/Parport configurations.

Oh, there's a new I2C plugin for the Raspberry with pcf8574 and ads1115 support (digital IO + analog inputs / non-real-time).
The following user(s) said Thank You: tlightus, royka

Please Log in or Create an account to join the conversation.

More
24 Oct 2025 07:33 #337027 by meister
adding some images and tabs:

images for some plugins:


new Tab for all axis configurations in one screen (incl. calculator)


new Tab for the ini


and one for some basic settings


 
Attachments:
The following user(s) said Thank You: royka

Please Log in or Create an account to join the conversation.

More
24 Oct 2025 08:06 #337030 by epineh
Awesome, those new tabs look great, the invert button on the scale is a nice touch. 
Russell.
The following user(s) said Thank You: meister, unknown

Please Log in or Create an account to join the conversation.

More
24 Oct 2025 10:07 #337035 by unknown

Awesome, those new tabs look great, the invert button on the scale is a nice touch. 
Russell.


I'll second that. :)

Top work
The following user(s) said Thank You: meister

Please Log in or Create an account to join the conversation.

More
30 Oct 2025 00:58 #337429 by Dave3891
Hi,

Great job on this project, I am really impressed with all the tools and features that keep getting added. 

I made a custom board based on the TangBob and I wanted to add it to the setup tool. 
Do you have a tool for building the board.json or have you been making them by hand?

 

Please Log in or Create an account to join the conversation.

More
30 Oct 2025 07:03 #337444 by meister
Thanks !

not really, in 'riocore/files/pin*.py' are some helper scripts for me (dev-branch),
but yes, most i do by hand.

@all
---- WARNING --- parts of the dev-branch is not usable at this time,
i do some bigger changes for the joint/axis configuration

Please Log in or Create an account to join the conversation.

Time to create page: 0.573 seconds
Powered by Kunena Forum