Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » 4DIAC - Framework for Distributed Industrial Automation and Control » Raspberry Pi 2 B FlipFlop Tutorial(Problem with IX/QX)
Raspberry Pi 2 B FlipFlop Tutorial [message #1724429] Tue, 23 February 2016 21:43 Go to next message
Maximilian Hauske is currently offline Maximilian HauskeFriend
Messages: 2
Registered: February 2016
Junior Member
Hi everyone,

I'm trying to run the (modified) FlipFlop Tutorial from the documentation on a Raspberry Pi 2 B. The FlipFlip itself works fine, but I cannot get the QX FB to activate the GPIO Pins, so the LED won't blink.

System configuration
index.php/fa/25089/0/

Debug Mode: QX FB shows N/A on all ports
index.php/fa/25090/0/

wiringPi seems to work fine, I can switch the LED on and off manually with
gpio mode 8 out
gpio write 8 1
gpio write 8 0

I run forte on the raspberry with root
sudo ./forte

Any idea what I'm missing?
Thanks so much, Max Smile
  • Attachment: system.PNG
    (Size: 30.05KB, Downloaded 1003 times)
  • Attachment: debug.PNG
    (Size: 29.00KB, Downloaded 838 times)
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724593 is a reply to message #1724429] Wed, 24 February 2016 20:35 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Which version of FORTE are you useing? Are you getting error messages during download?
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724594 is a reply to message #1724429] Wed, 24 February 2016 20:38 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

Which version of FORTE are you using? Do you get an UNSUPORTED_TYPE error during download? For FORTE 1.8 M1 you need to enable the sysfs module which provides the IX and QX function blocks.

Cheers,
Alois
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724595 is a reply to message #1724429] Wed, 24 February 2016 20:38 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

Which version of FORTE are you using? Do you get an UNSUPORTED_TYPE error during download? For FORTE 1.8 M1 you need to enable the sysfs module which provides the IX and QX function blocks.

Cheers,
Alois
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724596 is a reply to message #1724429] Wed, 24 February 2016 20:39 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

Which version of FORTE are you using? Do you get an UNSUPORTED_TYPE error during download? For FORTE 1.8 M1 you need to enable the sysfs module which provides the IX and QX function blocks.

Cheers,
Alois
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724597 is a reply to message #1724429] Wed, 24 February 2016 20:40 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

Which version of FORTE are you using? Do you get an UNSUPORTED_TYPE error during download? For FORTE 1.8 M1 you need to enable the sysfs module which provides the IX and QX function blocks.

Cheers,
Alois
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724623 is a reply to message #1724597] Wed, 24 February 2016 21:36 Go to previous messageGo to next message
Maximilian Hauske is currently offline Maximilian HauskeFriend
Messages: 2
Registered: February 2016
Junior Member
Dear Alois,

I compiled FORTE again on the Raspberry using the current version of FORTE from the git repository, now with enabled sysfs module.

Blinks like a charm now Very Happy
Just had to change the PARAM of the QX Block to 3 (this triggers the Raspberry GPIO Pin 5).

index.php/fa/25111/0/

So wiringPi is not necessary anymore?

Thanks for the help Smile
Max


  • Attachment: debug2.PNG
    (Size: 29.45KB, Downloaded 782 times)
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1724724 is a reply to message #1724623] Thu, 25 February 2016 15:26 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Dear Max,

great. Yes we completely dropped wiringPi this allowed us to use the same code for raspberrypi and beaglbone GPIOs.

Alois
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1725103 is a reply to message #1724429] Mon, 29 February 2016 19:24 Go to previous messageGo to next message
investigacioncp15103 uva is currently offline investigacioncp15103 uvaFriend
Messages: 12
Registered: February 2016
Junior Member
I have a similar problem when I try to compile the raspberry pi to use the GPIO

when I compile with default variables of the makefile everything it compile properly, but if I try to compile activating gpio generates errors :


processinterface.cpp: In member function âbool CProcessInterface::readPin()â:
processinterface.cpp:109:32: error: âi2c_smbus_read_byteâ was not declared in this scope
processinterface.cpp: In member function âbool CProcessInterface::writePin()â:
processinterface.cpp:129:38: error: âi2c_smbus_read_byteâ was not declared in this scope
processinterface.cpp:136:44: error: âi2c_smbus_write_byteâ was not declared in this scope
processinterface.cpp: In member function âbool CProcessInterface::readWord()â:
processinterface.cpp:153:62: error: âi2c_smbus_read_word_dataâ was not declared in this scope
processinterface.cpp:158:12: warning: conversion to âTForteWord {aka short unsigned int}â from âintâ may alter its value [-Wconversion]
processinterface.cpp: In member function âbool CProcessInterface::writeWord()â:
processinterface.cpp:171:73: error: âi2c_smbus_write_word_dataâ was not declared in this scope
src/CMakeFiles/forte.dir/build.make:1733: recipe for target 'src/CMakeFiles/forte.dir/modules/i2c_dev/processinterface.cpp.o' failed
make[2]: *** [src/CMakeFiles/forte.dir/modules/i2c_dev/processinterface.cpp.o] Error 1
CMakeFiles/Makefile2:125: recipe for target 'src/CMakeFiles/forte.dir/all' failed
make[1]: *** [src/CMakeFiles/forte.dir/all] Error 2
Makefile:113: recipe for target 'all' failed
make: *** [all] Error 2

my makefile is configured as follows:

FORTE_ARCHITECTURE :Posix
FORTE_BOOTFILELINEBUFSIZE:300
FORTE_BUILDSUPPORT_DIRECTORY:/home/pi/forte_experimental/forte/buildsupport
FORTE_BUILD_TYPE:EXECUTABLE
FORTE_BootfileLocation
FORTE_COM_ETH:ON
FORTE_COM_EclipseSCADA_SFP:OFF
FORTE_COM_FBDK:ON
FORTE_COM_LOCAL:ON
FORTE_COM_MODBUS:OFF
FORTE_COM_MODBUS_LIB_DIR
FORTE_COM_MUXSER:OFF
FORTE_COM_OPC:OFF
FORTE_COM_OPC_BOOST_ROOT
FORTE_COM_OPC_LIB_ROOT
FORTE_COM_PAHOMQTT:OFF
FORTE_COM_PAHOMQTT_DIR
FORTE_COM_RAW:ON
FORTE_COM_SER:OFF
FORTE_CommunicationInterruptQueueSize:10
FORTE_ECLIPSE_SCADA_SFP_SERVER_LIB_DIR
FORTE_EXCLUDE_FBS
FORTE_EventChainEventListSize:256
FORTE_EventChainExternalEventListSize:10
FORTE_IPLayerRecvBufferSize:1500
FORTE_LINKED_STRINGDICT:ON
FORTE_LOGLEVEL: LOGDEBUG
FORTE_MGMCOMMANDPROTOCOL: DEV_MGR
FORTE_MGM_MAX_SUPPOERTED_NAME_HIERACHY:30
FORTE_MODIFY_SOURCES_ON_MISSING_GENERATED_INCLUDES:ON
FORTE_MODULE_CBC:OFF
FORTE_MODULE_CONVERT: ON
FORTE_MODULE_I2C-Dev: on
FORTE_MODULE_IEC61131:ON
FORTE_MODULE_LMS_EV3:OFF
FORTE_MODULE_MATH: ON
FORTE_MODULE_OSCAT:ON
FORTE_MODULE_POWERLINK: OFF
FORTE_MODULE_RECONFIGURATION: OFF
FORTE_MODULE_RT_Events: OFF
FORTE_MODULE_Raspberry-SPS: ON
FORTE_MODULE_SysFs: ON
FORTE_MODULE_Test: ON
FORTE_MODULE_UTILS: ON
FORTE_MODULE_WagoKbus: OFF
FORTE_POSIX_GENERATE_MAP_FILE: FALSE
FORTE_RTTI_AND_EXCEPTIONS: FALSE
FORTE_STRINGDICTFIXEDMEMORY: OFF
FORTE_STRINGDICTINITIALMAXNROFSTRINGS: 300
FORTE_STRINGDICTINITIALSTRINGBUFSIZE: 8000
FORTE_SUPPORT_ARRAYS: ON
FORTE_SUPPORT_BOOT_FILE: ON
FORTE_SUPPORT_CUSTOM_SERIALIZABLE_DATATYPES: ON
FORTE_SUPPORT_MONITORING: ON
FORTE_SUPPORT_QUERY_CMD: ON
FORTE_SYSTEM_TESTS: OFF
FORTE_TESTS: OFF
FORTE_TESTS_INC_DIRS
FORTE_TESTS_LINK_DIRS
FORTE_TRACE_EVENTS: ON
FORTE_TicksPerSecond: 1000
FORTE_TimeBaseUnitsPerSecond: 1000000000
FORTE_UNICODE_SUPPORT: ON
FORTE_USE_64BIT_DATATYPES: ON
FORTE_USE_LREAL_DATATYPE: ON
FORTE_USE_REAL_DATATYPE: ON
FORTE_USE_WSTRING_DATATYPE: ON


when I compile with default variables of the makefile everything the problem is:

<Response ID="28" Reason="UNSUPPORTED_TYPE"/>

What configuration is that you have used ?

Best
pablo

[Updated on: Mon, 29 February 2016 19:27]

Report message to a moderator

Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1725104 is a reply to message #1725103] Mon, 29 February 2016 19:59 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

the default GPIOs for RaspberryPI is the module "sysfs" as described above.

Alois
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1725116 is a reply to message #1725104] Mon, 29 February 2016 23:22 Go to previous messageGo to next message
investigacioncp15103 uva is currently offline investigacioncp15103 uvaFriend
Messages: 12
Registered: February 2016
Junior Member

I change only the " raspberry_sps " module, i will turn "ON " but the problem persists .
Do I have to modify any module more ?

/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp:34:6: warning: unused parameter âpaInputâ
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp: In member function âbool CProcessInterface::readPin()â:
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp:108:32: error: âi2c_smbus_read_byteâ was not declared in this scope
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp: In member function âbool CProcessInterface::writePin()â:
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp:129:38: error: âi2c_smbus_read_byteâ was not declared in this scope
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp:136:44: error: âi2c_smbus_write_byteâ was not declared in this scope
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp: In member function âbool CProcessInterface::readWord()â:
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp:155:77: error: âi2c_smbus_read_i2c_block_dataâ was not declared in this scope
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp: In member function âbool CProcessInterface::writeWord()â:
/home/pi/forte/src/modules/raspberry_sps/processinterface.cpp:175:72: error: âi2c_smbus_write_word_dataâ was not declared in this scope
src/CMakeFiles/forte.dir/build.make:11393: recipe for target 'src/CMakeFiles/forte.dir/modules/raspberry_sps/processinterface.cpp.o' failed
make[2]: *** [src/CMakeFiles/forte.dir/modules/raspberry_sps/processinterface.cp

best

pablo
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1725120 is a reply to message #1725116] Tue, 01 March 2016 00:27 Go to previous messageGo to next message
investigacioncp15103 uva is currently offline investigacioncp15103 uvaFriend
Messages: 12
Registered: February 2016
Junior Member
auto-solve problem

sudo apt-get install libglui2c2 libi2c-dev i2c-tools

install i2c library in raspberry pi

best
pablo
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1725175 is a reply to message #1724429] Tue, 01 March 2016 11:36 Go to previous messageGo to next message
investigacioncp15103 uva is currently offline investigacioncp15103 uvaFriend
Messages: 12
Registered: February 2016
Junior Member
I have the same problem Maximilian Hauske ,my blocks do not allow you to see the value of variables:

index.php/fa/25149/0/

i used "sudo ./forte" and i enabled sysfs module.

Someone knows why this happens ?


  • Attachment: na.png
    (Size: 87.22KB, Downloaded 815 times)
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1725217 is a reply to message #1725175] Tue, 01 March 2016 19:09 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

it looks like you have monitoring not enabled for your system. You can do this either by right clicking on the system in the system explorer or clicking on the arrow beside the magnifiyng glass in the toolbar. In the upcoming 1.8. M2 release there will also be a dedicated menu for monitoring.
You can see if your system has monitoring enabled with a green circle in the upper left corner of the system icon.

Cheers,
Alois

P.S.: sometimes you get the same N/A result although you have monitoring enabled. This is a known issue which we could currently not track down. The workaround is to disable and enable again the monitoring.
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1726046 is a reply to message #1725217] Wed, 09 March 2016 09:26 Go to previous messageGo to next message
investigacioncp15103 uva is currently offline investigacioncp15103 uvaFriend
Messages: 12
Registered: February 2016
Junior Member
I can not get the value of the GPIO pins change from QX function.
I have done everything discussed in the forum:

- compile forte with sysfs module
- Run with sudo or sudo su
- Remote run from windows to raspberry pi
-installed wiringPi(blink example work correctly)

the electronic circuit works correctly if the LED runs from the Linux shell it works perfectly.

index.php/fa/25235/0/

best
pablo

[Updated on: Wed, 09 March 2016 09:27]

Report message to a moderator

Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1726053 is a reply to message #1726046] Wed, 09 March 2016 10:03 Go to previous messageGo to next message
Jose Maria Jesus Cabral Lassalle is currently offline Jose Maria Jesus Cabral LassalleFriend
Messages: 98
Registered: February 2016
Member
I am not sure about it, but I think the wiringPi is not used anymore (as said some post before). You should use just the sysFs module, and what I see is that you are trying to control the gpio22 directly in your ssh connection, but in your FB tester your parameter is 3. If this was the same test, I think you should use 22 as parameter to control your gpio22. Take in account too that a true value to the QX will put a 0 in the gpioXX/value file and viceversa, as discussed in other topic.
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1726062 is a reply to message #1726046] Wed, 09 March 2016 10:54 Go to previous messageGo to next message
Waldemar Eisenmenger is currently offline Waldemar EisenmengerFriend
Messages: 4
Registered: February 2016
Junior Member
hi,
it seems that your output was not initialized correctly. I guess you set the parameters after the INIT event.
So please try first to set the QI = TRUE, PARAM = 3 and then click the INIT event.
If the STATUS = OK then you can set the OUT parameter and click the REQ event.
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1760091 is a reply to message #1724429] Sat, 22 April 2017 09:36 Go to previous messageGo to next message
Jiahang Chen is currently offline Jiahang ChenFriend
Messages: 34
Registered: April 2017
Member
i have also the problem
all the values show N/A although the monitoring is running
i have tried to turn it off and turn it on, but it still doesnt work
can someone pls help me?
  • Attachment: Unbenannt.PNG
    (Size: 411.29KB, Downloaded 85 times)
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1760214 is a reply to message #1760091] Mon, 24 April 2017 16:03 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
hi the problem is that you can only monitor FBs which are mapped to a FORTE device. The FBs you've selected are FBs mapped to FBRT from Holobloc which does not support our monitoring protocol.
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1764891 is a reply to message #1724429] Sat, 03 June 2017 02:53 Go to previous messageGo to next message
tong ming is currently offline tong mingFriend
Messages: 9
Registered: June 2017
Junior Member
I think this is a good example. It's more simpler than projects in 4diac. And it's easyier to get the answer. So I know my ide and forte are corretly installed. Thx
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1770065 is a reply to message #1764891] Tue, 08 August 2017 05:49 Go to previous messageGo to next message
Awais Tanveer is currently offline Awais TanveerFriend
Messages: 21
Registered: April 2016
Junior Member
Hello,

I am trying the same but my problem seems to that FB QX does not seems to be initialized. I have checked that sysfs is installed. When I download my application to FORTE, there is no unsupported object error as well. Can you tell where the problem might be?

I am also attaching my FORTE download log.

[Updated on: Tue, 08 August 2017 06:06]

Report message to a moderator

Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1770075 is a reply to message #1770065] Tue, 08 August 2017 06:59 Go to previous messageGo to next message
Jose Maria Jesus Cabral Lassalle is currently offline Jose Maria Jesus Cabral LassalleFriend
Messages: 98
Registered: February 2016
Member
Can you try the same application but without the connection E_SR -> QX.REQ? Because the error you are getting is due to some initialization error. Unfortunately we cannot see the initialization error since the error is overwritten in STATUS(). Taking the connection away, will show the error that's happening in the initialization
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1770188 is a reply to message #1770075] Wed, 09 August 2017 00:19 Go to previous messageGo to next message
Awais Tanveer is currently offline Awais TanveerFriend
Messages: 21
Registered: April 2016
Junior Member
Thanks, Jose. I have done as you advised. Status of QX FB is "OK" now but all the IOs of QX are static. All other FBs are working as intended i.e. E_SR->Q is fluctuating between true and false after every 500 ms but it seems that the effect is not carried on to QX FB.

[Updated on: Wed, 09 August 2017 00:55]

Report message to a moderator

Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1770196 is a reply to message #1770188] Wed, 09 August 2017 04:21 Go to previous messageGo to next message
Awais Tanveer is currently offline Awais TanveerFriend
Messages: 21
Registered: April 2016
Junior Member
Update: For some reason, it works like a charm when I have connected E_SR->EO back to QX->REQ. LED is blinking now.
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1770211 is a reply to message #1770196] Wed, 09 August 2017 07:10 Go to previous messageGo to next message
Jose Maria Jesus Cabral Lassalle is currently offline Jose Maria Jesus Cabral LassalleFriend
Messages: 98
Registered: February 2016
Member
Good to read that! The connection E_SR.EO->QX.REQ is the one that actually tells the hardware to turn on/off, that's why when you deleted it didn't show on the LED. Still, I'm not sure why it didn't work the first time. Maybe the initialization failed for some reason
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1778421 is a reply to message #1770211] Thu, 14 December 2017 06:45 Go to previous messageGo to next message
Muhammad Tanveer is currently offline Muhammad TanveerFriend
Messages: 5
Registered: November 2017
Junior Member
Hello members!
I follow this link: "https://www.eclipse.org/4diac/documentation/html/installation/raspi.html"
While building forte for Rasberrypi3 model B I following step mentioned in Building FORTE on the RPI-> Preparing then 2)Building .
While building forte on rasberrypi, after running "make", two warning appears
1) Warning: the program should also define "void operator delete[](void*, std::size_t)"
2) Waring: conversion to 'TfroteFloat {aka float}' from 'CIEC_DWORD::TValueType {aka unsigned int}' may alter value. At "if ( CIEC_DWORD::scm_nMaxVal < pa_roVal) {

However, forte exe has been genrated after these two warning multiple time in b"in/posix/src directory".
Now I using 4DIAC IDE 1.8.4, on win7 after installation of jdk 1.8.
I write blink test program in 4DIAC, it do everything fine, and output is exactly like mentioned in attachments of first post of Awais Tanveer: message #1770065.

Please note that i didnot complete cross compilation steps. I just run forte exe on rasberrypi, then using 4DIAC, download blink test program on rasberrypi.local:61499.

Please guide! urgent response please.
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1778423 is a reply to message #1778421] Thu, 14 December 2017 06:49 Go to previous messageGo to next message
Muhammad Tanveer is currently offline Muhammad TanveerFriend
Messages: 5
Registered: November 2017
Junior Member
I mentioned QX-Param value 3 and connect led between pin 3 and 6 of raspberrypi 3 model b. It is not blinking. Please guide
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1778442 is a reply to message #1778423] Thu, 14 December 2017 09:56 Go to previous messageGo to next message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Hi,

you can ignore the two warnings. The first one was already fixed in the development version and the second should not affect you.

Could you also show what the output values of your QX FB are. Are you running forte as root or does the user running forte has read/write access to the folders and files in the sysfs directory?
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1778449 is a reply to message #1778442] Thu, 14 December 2017 10:25 Go to previous messageGo to next message
Muhammad Tanveer is currently offline Muhammad TanveerFriend
Messages: 5
Registered: November 2017
Junior Member
Thanks Sir! again for your prompt response. Issue has been resolved. There was issue because of misunderstanding of GPIOs Pins. GPIO Pin 3 points to PIN 5 on Raspberry PI 3 Model B. So when I connected LED between 5 and 6 Pin, it start blinking. Thanks again Sir!!!
Re: Raspberry Pi 2 B FlipFlop Tutorial [message #1778452 is a reply to message #1778449] Thu, 14 December 2017 10:27 Go to previous message
Alois Zoitl is currently offline Alois ZoitlFriend
Messages: 615
Registered: January 2014
Senior Member
Good that it is working for you now.
Previous Topic:Issue in Running LED Blink Application on Raspberry Pie3 ModelB
Next Topic:How to add wiringPi library to access the softPWM functions.
Goto Forum:
  


Current Time: Tue Aug 14 19:35:36 GMT 2018

Powered by FUDForum. Page generated in 0.03430 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top