Tuesday, April 30, 2013

Apr. RPi+forte

A first apps using RPi work using wiringPi interface with forte.
This should help Arduino community get onboard faster.

Update (again): wiringPi is under LGPL . 4DIAC under EPL. Told "as long as you only link against an dynamic library (.so) and don't copy their code (i.e., only use their headers) it should be ok."

Picture will be added... doing more testing and working on course. Video in next post.
[Using breadboard with 220 Ohm resistors and 8 LEDs, usually red]


System model
Note: IP address is LAN IP address of the device.


Tired of blinky... here is an app to test LED on various RPi Pins:



Thursday, April 4, 2013

Apr.4 4DIAC Communication

The 4DIAC-IDE downloads the FBs to the device to start the application.
However Java does run will on RPi so downloading from Laptop using Publish/Subscribe.
First  simple test is X+3 TestApplication distributed with 4DIAC via the workspace.

[NEXT: DIO (digital input/output) SIFB for RPi]

X+3 TestApplication 

Distributed with 4DIAC via the workspace
2 Devices: 
PC for VISualisation; 
MICROCONTROLLER to do the CALCulation remotely.
  1. Laptop displays Input / Output in frame via FBDK
  2. Request published to RPi Subscribe
  3. RPI will do the calculation of X+3
  4. Result published to Laptop Subscribe
  5. Laptop displays result

ApplicationTest as-is assumes the same computer is used for both devices.
Want two physically different devices on a LAN: Laptop and RaspberryPi
System Configuration with Devices
[Update: using 224.x.x.x IP address was needed due firewall restrictions, 
regular LAN device IP address will normally work fine.] Broadcast IP address 224.0.1.1: worked for both Publish and Subscribe to RPi.
IP address use must be included in class.  (typo for MICROCONTROLLER corrected 4/5 2:30PM in Vienna)
Test Results with various Publish/Subscribe Broadcast IP addresses




Multicast References: 

Mar.27+ RPi LED SIFB

Update 4/4/12 

  • wiringPi code example for a blinky works.
  • Code used in a DIO (Digital Input/Output) SIFB compiles.
    • Publish/Subscribe problem currently. See next Post for details.
  • Neil Higgins got a Blinky from forte working! 
    • See 4DIAC / FORTE on Rasperry Pi in 4DIAC Open Discussion
    • Our set-ups are different, so both will be instructional.
      • not using wiringPi,
      • uses Gertboard
Mar.27+ Notes

  • RPi Cross compile - hello world
    • dev environment and cross-compiler install
    • Eclipse properities set-up 
      • See notes at bottom of post
    • communication set-up for testing (TODO)
  • Blinking an LED with C
    • Install of WiringPi (includes git-core)
      • Install and build on RPi
      • Install only on cross-compile computer
        • Need for includes for compiles
        • Copy the installed wiringPi from RPi to cross-compile computer (TODO)
Notes:
Blinking an LED with C - cross compile with wiringPi
http://hertaville.com/2012/09/28/development-environment-raspberry-pi-cross-compiler/
see Stephan questions and answers


RPi Cross-compilearm-linux-gnueabihf-g++

Development Environment for the Raspberry Pi using a Cross Compiling Toolchain and Eclipse Posted on September 28, 2012 by halherta

For Eclipse properties C/C++ General -> Paths and Symbols set-up I found it useful (for copy/paste) to list the files needed :
Includes
$HOME/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-gnueabihf-raspbian/
1 arm-linux-guneabihf/include
2 arm-linux-guneabihf/libc/usr/include
3 lib/arm-linux-guneabihf/4.7.2/include-fixed
4 lib/arm-linux-guneabihf/4.7.2/include
5 lib/arm-linux-guneabihf/4.7.2/finclude


Library paths
$HOME/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-gnueabihf-raspbian/
1 arm-linux-guneabihf/lib
2 arm-linux-guneabihf/libc/lib
3 arm-linux-guneabihf/libc/lib/arm-linux-guneabihf
4 lib/gcc/arm-linux-guneabihf/4.7.2
5 libexec/gcc/arm-linux-guneabihf/4.7.2