Difference between revisions of "What can I do with IGEPv2 EXPANSION"

From IGEP - ISEE Wiki

Jump to: navigation, search
m
 
(64 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__TOC__
+
{{Table/IGEP Technology Devices
 
+
|Tech_Family={{#lst:Template:Links|IGEPv2_EXPANSION_Tech_Family}}
 
+
|Tech_ID={{#lst:Template:Links|IGEPv2_EXPANSION_Tech_ID}}
 
 
{{Navigation/IGEP Technology Guides
 
 
|Name={{#lst:Template:Links|IGEPv2_EXPANSION_Name}}
 
|Name={{#lst:Template:Links|IGEPv2_EXPANSION_Name}}
 
|Image={{#lst:Template:Links|IGEPv2_EXPANSION_Image}}
 
|Image={{#lst:Template:Links|IGEPv2_EXPANSION_Image}}
 
|ISEE_MainPage={{#lst:Template:Links|IGEPv2_EXPANSION_ISEE_MainPage}}
 
|ISEE_MainPage={{#lst:Template:Links|IGEPv2_EXPANSION_ISEE_MainPage}}
 
|ISEE_Hardware={{#lst:Template:Links|IGEPv2_EXPANSION_ISEE_Hardware}}
 
|ISEE_Hardware={{#lst:Template:Links|IGEPv2_EXPANSION_ISEE_Hardware}}
|Community_MainPage={{#lst:Template:Links|IGEPv2_EXPANSION_Community_MainPage}}
+
}}  
|Community_Guides_1={{#lst:Template:Links|IGEPv2_EXPANSION_Community_Guides_1}}
 
|Community_Guides_2={{#lst:Template:Links|IGEPv2_EXPANSION_Community_Guides_2}}
 
}}
 
 
 
If you have '''successfully completed the [[Getting Started with IGEP0022 board|getting started guide]]''' for IGEP0022, you can follow this first introduction about what can you do with this expansion board:
 
 
 
= How to use Serial communication  =
 
Please contribute ..
 
 
 
= How to get VGA output  =
 
 
 
The required [[How do I edit my kernel command line|kernel command line]] option here is omapfb.mode followed by the desired resolution, make sure to select a video mode compatible with your monitor
 
 
 
For example:
 
 
 
omapdss.def_disp=dvi omapfb.mode=dvi:1024x768-16@60
 
 
 
Note that you could connect both a VGA monitor and a DVI-D monitor and see the same image, as long as the video mode is compatible with both monitors.
 
 
 
= How to use TFT and Touchscreen  =
 
 
 
Seiko 7.0 inch WVGA (800 x RGB x 480) TFT:
 
 
 
Add the following line to igep.ini
 
 
 
omapdss.def_disp=lcd-70
 
 
 
Powertip 4.3 inch (480 x RGB x 272) TFT:
 
  
Add the following line to igep.ini
 
  
  omapdss.def_disp=lcd-43
+
= Overview =
  
 +
This is the 2/3 chapter of IGEPv2 Expansion Tutorial Guide.
  
You should reboot your IGEP Device to enable a new resolution configuration.
+
We will learn some basic tasks.
  
  
 +
__TOC__
  
To configure the touchscreen, add "Configured Touchscreen" in "ServerLayout" section and remove "Configured Mouse" in /etc/X11/xorg.conf
 
  
  Section "ServerLayout"
+
= What can I do<br> =
Identifier    "Default Layout"
 
Screen        "Default Screen"
 
InputDevice    "Generic Keyboard"
 
#  InputDevice    "Configured Mouse"
 
InputDevice    "Configured Touchscreen"
 
Option        "AllowEmptyInput" "no"
 
EndSection
 
  
calibrate it yourself until you are happy with the result, for example:  
+
== How to use TFT and Touchscreen  ==
 +
[[Image:IGEP0022 PROTO RA DSC 0142.JPG|right|200px]] IGEPv2 Expansion supports SEIKO 7” or POWERTIP 4.3” LCD screen. Use J301 connector for POWERTRIP 4.3" or use J302, J303 and J304 connector for SEIKO 7".<br>
 +
Seiko and Powertip touch screens are not supported by default in IGEPv2. Use the following steps for it:  
  
/etc/init.d/xserver-nodm stop
+
Edit igep.ini file to configure your touch screen, you can do this [[How_do_I_edit_my_kernel_command_line | adding following kernel cmdline parameter]]
TSLIB_CALIBFILE=/etc/pointercal TSLIB_TSDEVICE=/dev/input/touchscreen0 TSLIB_CONSOLEDEVICE=none ts_calibrate
+
*In Seiko screen add the following line:
/etc/init.d/xserver-nodm start
+
<pre>omapdss.def_disp=lcd-70</pre>
 +
*In Powertip screen add the following line:
 +
<pre>omapdss.def_disp=lcd-43</pre>
  
= How to use Telit Modem  =
+
== How to use serial console ==
 +
[[Image:Igepv2expdb9connector.PNG|right|200px]] IGEPv2 Expansion integrates a DB9 RS232 connector. This UART is shared with RS485 so it's incompatible use both interfaces at the same time. For that reason to use UART1 for RS232 comunications you should disable RS485 interface. You can do this [[How_do_I_edit_my_kernel_command_line | adding following kernel cmdline parameter]].
  
The IGEP0022 expansion board provides a Telit [http://telit.com/en/products/gsm-gprs.php?p_ac=show&p=47 GE865] GSM/GPRS modem which is connected to the OMAP via some GPIO pins and UART 2.<br>
+
board.ei485=no
  
Here you have the official manuals from the manufacturer's webpage:<br>
+
You need a Null-Modem DB9 male-make serial cable. Connect the cable between the target board and your PC.
  
*[http://telit.com/module/infopool/download.php?id=1666 Telit GE865-QUAD Hardware User Guide]<br>
+
Open the serial port on your PC using your preferred serial communications program (minicom) and configure the port as follows:
*[http://telit.com/module/infopool/download.php?id=522 Telit Modules Software User Guide]<br>
 
  
<br>
+
* 115200
 +
* 8N1
 +
* no flow control (either software or hardware)
  
Here there are a few instructions in order to introduce the Telit modem.<br>
+
On the target board open a serial port as follows:
  
If this is your first time accessing Telit Modem, check J402 and J403 jumpers are not connected before follow this tutorial. If you don't have these jumpers, don't worry because their functions are only for testing.
+
  $ microcom -s 115200 /dev/ttyS0
  
Insert a valid SIM card to the SIM card reader of your IGEP0022.  
+
Now when you write a character in you PC serial port, the character should appear in the target board.
  
Now, you must add the following line at the kernel file (igep.ini) in order to enable GE865 support:
+
A detailed guide on how use UARTS can be found by following this link: [[How to use UARTs]]
<pre>buddy.modem=yes</pre>
 
<br>
 
  
Now its time to power up your modem. You may read the Official manufacturer [http://telit.com/module/infopool/download.php?id=1666 Hardware User Guide], where there is a complete explanation about the sequence.<br>
+
== How to use Telit Modem  ==
 +
{| align="right" cellspacing="1" cellpadding="1" border="1" width="200"
 +
|-
 +
| [[Image:IGEP0022 Modem with antenna.png|200px]]
 +
| [[Image:Igepv2expcardreader.PNG|right|200px]]
 +
|-
 +
| GSM-GPRS antenna (highly recommended)
 +
| SIM card reader
 +
|}
  
In IGEP0022, the modem is connected to 3 GPIO pins from the OMAP, which are: &lt;omap_pin_name (modem_function)&gt;
+
IGEPv2 Expansion integrates a GSM/GPRS&nbsp;modem to make phone calls or to send SMS or to write and read data from it, etc. Telit modem is not supported by default in IGEPv2 Expansion.
 +
Configure this [[How_do_I_edit_my_kernel_command_line | adding following kernel cmdline parameter]]
  
*GPIO_140 (Reset)
+
buddy.modem=yes
*GPIO_141 (On_Off)
 
*GPIO_156 (PWRMON)<br>
 
  
You can power up your modem using the following sequence:  
+
*Power up the modem using the next commands:
 +
<pre>$ echo 0 &gt; /sys/class/gpio/gpio140/value
 +
$ echo 1 &gt; /sys/class/gpio/gpio141/value
 +
$ sleep 1
 +
$ echo 0 &gt; /sys/class/gpio/gpio141/value</pre>
 +
*Once the modem is on (led near power button is blinking now), you can interact with it via UART 2.
  
(Note: the following instructions are correctly 'toggled' do to pull-up resistors. Refer to schematics at the Official [http://igep.es/index.php?option=com_content&view=article&id=99&Itemid=129&dir=%2Fvar%2Fwww%2Fvhosts%2Figep.es%2Fhttpdocs%2Fdownloads%2F01-ISEE_Products%2FIGEPv2_EXPANSION%2FHW_Schematics&download_file=%2Fvar%2Fwww%2Fvhosts%2Figep.es%2Fhttpdocs%2Fdownloads%2F01-ISEE_Products%2FIGEPv2_EXPANSION%2FHW_Schematics%2FIGEP.0022-EXP_BOARD_SCH_rev_b3.pdf IGEP0022 Hardware Manual] from ISEE)
+
You can use Microcom to comunicate with it from the serial debug console:
<pre>echo 0 &gt; /sys/class/gpio/gpio140/value
+
<pre>$ microcom -s 115200 /dev/ttyO1</pre>  
echo 1 &gt; /sys/class/gpio/gpio141/value
+
*To check the modem status use the command:<br>
sleep 1
 
echo 0 &gt; /sys/class/gpio/gpio141/value
 
</pre>
 
Once the modem is on, you can interact with it via UART 2. You can use Microcom to comunicate with it from the serial debug console:  
 
<pre>microcom -s 115200 /dev/ttyS1</pre>  
 
(Note: GE865 has auto baud rate detection, so you can use a different speed)<br>
 
 
 
To check the modem status use the command:<br>  
 
 
<pre>at</pre>  
 
<pre>at</pre>  
Answer should be OK.<br>  
+
*Answer should be OK.<br>  
 
+
*Now unlock it by inserting your SIM card PIN number. Use the command:
'''Note: correcting syntax with 'backspace' may cause error in a serial command if you are not writing the command at first take. Don't type <> when use the following commands'''
 
 
 
In order to use your GSM/GPRS you should connect the antenna as it is explained in the [[Getting Started with IGEP0022 board#GSM/GPRS antenna |Getting Started with IGEP0022]] article.
 
 
 
Now unlock it by inserting your SIM card PIN number. Use the command:<br>
 
 
<pre>at+cpin=&lt;PIN&gt;</pre>  
 
<pre>at+cpin=&lt;PIN&gt;</pre>  
If you correctly inserted the PIN number, the answer should be OK.  
+
*If you correctly inserted the PIN number, the answer should be OK.&nbsp;If you fail more than 3 times, your SIM card will lock and you will have to insert PUK number.  
 
+
*Now you are ready to use the GSM/GPS modem.<br>
(Note: If you fail more than 3 times, your SIM card will lock and you will have to insert PUK number.)
+
''From [[How to use Telit Modem]]''
 
 
Now you are ready to use the GSM/GPS modem.  
 
 
 
== Examples  ==
 
  
If you successfully '''followed the the previous instructions''', you are ready to test the GSM/GPRS modem. Here are some examples of simple commands:
+
== How to use TVP5151 Video Decoder ==
 
+
[[Image:Igepv2expvideocompositeconnector.PNG|right|200px]]IGEPv2 Expansion integrates two composite video connectors to decode analog input signal.
You can check the complete list of AT commands at the Official manufacturer [http://telit.com/module/infopool/download.php?id=522 Software User Guide].  
+
=== Configure TVP5151 ===
 
+
*Plug some peripheral with video composite output in J501 RCA connector, see the image for more details.<br>  
=== Test received signal strength<br>  ===
+
*Connect a screen, for example HDMI monitor.  
 
+
*Refresh repositories and accept it.
Use the instruction:
+
<pre>$ zypper ref </pre>  
<pre>at+csq</pre>  
+
*Install video4linux2 plugin
 
+
<pre>$ zypper in gst-plugins-good-video4linux2
The answer should be: +CSQ: X,0, where X is the signal strenght. For example 6 is poor and 15 is good. If the answer is +CSQ:99,99 you should check the antenna.
 
 
 
=== Making a phone call<br> ===
 
 
 
Use the instruction:
 
<pre>atd &lt;number_to_call&gt;
 
 
</pre>
 
</pre>
 
+
=== Play with TVP5151  ===
Press any key to end call
+
*Load OMAP ISP kernel module<br>
 
+
<pre>$ modprobe omap3-isp
=== Sending a SMS<br>  ===
 
 
 
First of all, you need to configure the SMS format type. Telit [http://telit.com/en/products/gsm-gprs.php?p_ac=show&p=47 GE865] GSM/GPRS supports PDU format and Text format. We use Text format. Type the following command:
 
 
 
<pre>AT+CMGF=1</pre>
 
 
 
There are so many ways in this modem to send a message. Here you have a simple example. Use the instruction:
 
<pre>at+cmgs="&lt;destination_number&gt;"
 
&gt; &lt;insert_here_your_text_message&gt;
 
</pre>
 
When you are ready to send your message use Ctrl+Z to send it.
 
 
 
If you want to cancel or restart the message press ESC.<br>
 
 
 
= How to use TVP5151 Video Decoder<br> =
 
 
 
=== Requirements<br> ===
 
 
 
*Have successfully connected the TFT Screen as explained at the [[Getting Started with IGEP0022 board#TFT_and_Touchscreen|Getting Started Guide]] or at the [http://igep.es/index.php?option=com_content&view=article&id=99&Itemid=129&dir=%2Fvar%2Fwww%2Fvhosts%2Figep.es%2Fhttpdocs%2Fdownloads%2F01-ISEE_Products%2FIGEPv2_EXPANSION%2FHW_User_Manuals&download_file=%2Fvar%2Fwww%2Fvhosts%2Figep.es%2Fhttpdocs%2Fdownloads%2F01-ISEE_Products%2FIGEPv2_EXPANSION%2FHW_User_Manuals%2FMAN-PR-IGEP.0022-001.01.HW_USER_MANUAL.pdf Official Hardware Reference Manual]<br>
 
*A camera or any device with PAL output video to RCA connector.<br>
 
 
 
<br>
 
 
 
----
 
 
 
<br>
 
 
 
There are two modules that you will use that are not inserted into the kernel: iommu2 (tvp5151) and isp.
 
 
 
You have to load these kernel modules before start:<br>  
 
<pre>modprobe iommu2
 
modprobe omap3-isp
 
 
</pre>  
 
</pre>  
(Note: The first load order must be the iommu2 and then the omap3-isp)<br>  
+
*Configure ISP, for PAL resulution use 720x576 for NTSC resolution use 720x480:
 
+
<pre>$ media-ctl -r -l '"tvp5150 2-005c":0-&gt;"OMAP3 ISP CCDC":0[1], "OMAP3 ISP CCDC":1-&gt;"OMAP3 ISP CCDC output":0[1]'
----
+
$ media-ctl -v --set-format '"tvp5150 2-005c":0 [UYVY 720x480]'
 
+
$ media-ctl -v --set-format '"OMAP3 ISP CCDC":0 [UYVY 720x480]'
<br>  
+
$ media-ctl -v --set-format '"OMAP3 ISP CCDC":1 [UYVY 720x480]' </pre>
 +
*Export display
 +
<pre>$ export DISPLAY=:0.0 </pre>
 +
*Launch gstreamer
 +
<pre>$ gst-launch-0.10 -v v4l2src device=/dev/video2 queue-size=8&nbsp;! video/x-raw-yuv,format=\(fourcc\)UYVY,width=720,height=480&nbsp;! ffmpegcolorspace&nbsp;! autovideosink</pre>
 +
*Now you can see in your IGEP screen a result similar like this
  
Now, use the program media-ctl. This program is useful to configure the ISP. You can download it from [http://downloads.igep.es/files/media-ctl here]. Then you have to transfer it to your IGEP0022 (for example via SCP command).<br>
+
{| cellspacing="1" cellpadding="1" border="1" width="200"
 +
|-
 +
| [[Image:Igepv2expgstreamercapture.jpg|400px]]
 +
|}
  
Now you have to configure the ISP and TVP5151:<br>
+
''From [[How to setup tvp5151 video decoder]]''
<pre>./media-ctl -r -l '"tvp5150 2-005c":0-&gt;"OMAP3 ISP CCDC":0[1], "OMAP3 ISP CCDC":1-&gt;"OMAP3 ISP CCDC output":0[1]'</pre>
 
Configure the video capture setup:<br>
 
<pre>./media-ctl --set-format '"tvp5150 2-005c":0 [UYVY 720x628]'
 
</pre>
 
Connect a video camera or any device with PAL output to the Composite Video RCA input connector of the IGEP0022.
 
  
Use gstreamer as live stream to capture video from your video source.<br>
+
== How to use EEPROM  ==
 +
IGEPv2 Expansion includes a serial EEPROM, provides 1KB of user data storage. EEPROM is connected through I2C2 of OMAP3 processor at address 0x50.
  
Now setup the gstreamer pipeline:<br>
+
The following example writes the value 0x22 to register 0x10 of device 0x50 on i2c bus 2:  
<pre>gst-launch-0.10 -v v4l2src device=/dev/video2 queue-size=1 ! video/x-raw-yuv,format=\(fourcc\)UYVY,width=720,height=628 ! omapfbsink</pre>  
+
<pre>$ i2cset -f -y 2 0x50 0x10 0x22
If everything was fine you will see the live video at the screen.
+
$ i2cget -f -y 2 0x50 0x10</pre>
 +
''From [[How to use EEPROM]]''
  
[[Image:TVP5151 video decoder.jpg|frame|center|514x346px]]See also: [[How to setup tvp5151 video decoder]]<br>
+
== How to use CAN bus  ==
  
= How to use EEPROM  =
+
[[Image:Igepv2expcanconnector.PNG|right|200px]]IGEPv2 Expansion integrates a CAN peripheral. Connect any CAN bus device or network to the CAN bus connector (J703).
  
The IGEP0022 expansion board provides an [http://www.atmel.com/dyn/resources/prod_documents/doc5156.pdf AT24C01B] serial EEPROM memory which is connected to the OMAP via I2C.<br>  
+
You have to connect the two boards like this:<br>  
  
You can use easily simple reads/writes to access to the eeprom:
+
  IGEPv2 Exp 1        IGEPv2 Exp 2
 
+
  .---                 .---
  echo "hello world!" &gt; /sys/devices/platform/i2c_omap.2/i2c-2/2-0050/eeprom
+
  | 1 |-X            X-| 1 | VDD_CAN: Supply Voltage (+5V DC)
  cat /sys/devices/platform/i2c_omap.2/i2c-2/2-0050/eeprom
+
  | 2 |------------------| 2 | CANL: CAN Low-Level Voltage I/O
 
+
  | 3 |------------------| 3 | GND : Ground
Or read/write from userspace using i2c-tools:
+
  | 4 |------------------| 4 | CANH : CAN High-Level Voltage I/O
 
+
  .---                 .---
i2cget &lt;bus&gt; &lt;chip&gt; &lt;register&gt;
 
i2cset &lt;bus&gt; &lt;chip&gt; &lt;register&gt; &lt;value&gt;
 
 
 
For example, the following writes the value 0x22 to register 0x10 of device 0x50 on i2c bus 2:
 
 
 
i2cset -f -y 2 0x50 0x10 0x22
 
i2cget -f -y 2 0x50 0x10
 
 
 
See also: i2dump(8), i2cget(8) and i2cset(8) man page
 
 
 
= How to use CAN bus  =
 
 
 
The IGEP0022 expansion board provides a CAN interface using MCP2515.<br>
 
 
 
Several tools are provided by socketCAN to use this controller:
 
 
 
*candump: dump traffic on a CAN network.
 
*cansend: simple command line tool to send CAN-frames via CAN_RAW sockets.
 
*cangen: CAN frames generator for testing purpose.
 
*canplayer: send CAN frames from a file to a CAN interface.
 
 
 
In order to test the CAN interface you can connect IGEP0022 to a CAN device or network or to another IGEP0022 board.<br>
 
 
 
In the last case, you have to connect the two boards like this:<br>
 
 
 
Board 1            Board 2
 
.---                  ---
 
  | 1 |-X            X-| 1 |
 
  | 2 |----------------| 2 |  
 
  | 3 |----------------| 3 |
 
  | 4 |----------------| 4 |
 
  .---                 ---
 
  
 
If this is your first time accessing CAN bus, check J702 jumper is not connected before follow this tutorial. If you don't have this jumper, don't worry because its function is only for testing.  
 
If this is your first time accessing CAN bus, check J702 jumper is not connected before follow this tutorial. If you don't have this jumper, don't worry because its function is only for testing.  
  
Now you can set up the interface (on all boards when using multiple IGEP0022 <span lang="en" id="result_box" class="short_text"><span title="Click for alternate translations" class="hps">connected to a CAN network simultaneously)</span></span>:<br>  
+
Now you can set up the interface (on all boards when using multiple IGEPv2 EXPANSION <span lang="en" id="result_box" class="short_text"><span title="Click for alternate translations" class="hps">connected to a CAN network simultaneously)</span></span>:<br>  
  
  /sbin/ip link set can0 up type can bitrate 125000
+
  $ ip link set can0 up type can bitrate 125000
  
 
If you want to receive CAN data, use:  
 
If you want to receive CAN data, use:  
  
  candump can0
+
  $ candump can0
  
 
If you want to send CAN data, use:  
 
If you want to send CAN data, use:  
  
  cansend can0 123#AABBCCDD
+
  $ cansend can0 -i 0x123 0xaa 0xbb 0xcc 0xdd
cansend can0 123#R
 
cansend can0 1F334455#1122334455667788
 
cansend can0 1F334455#R
 
  
 
On the receiver side, you must see the following messages:  
 
On the receiver side, you must see the following messages:  
  
  can0  123  [4] AA BB CC DD
+
  can0  123  [4] aa bb cc dd
can0  123  [0] remote request
+
 
can0  1F334455  [8] 11 22 33 44 55 66 77 88
+
Switch roles and try it again.
can0  1F334455  [0] remote request
+
 
 +
''From [[How to use CAN bus]]''
  
Switch roles and try it again
+
== How to use VGA connector  ==
 +
{| cellspacing="1" cellpadding="1" width="363" border="1" align="right"
 +
|-
 +
| [[Image:Igepv2expconnecttovga.jpg|150px]]
 +
| [[Image:Igepv2expvgaconnector.PNG|200px]]
 +
|}
  
{{Template:Navigation/IGEP Technology Guides/What can I do/Ending|device=IGEP0022}}
+
IGEPv2 Expansion integrates a VGA connector, the output VGA signal is equal to HDMI connector. Plug a monitor with VGA&nbsp;input. <br><br><br><br><br><br><br><br><br><br>
  
 +
{{Template:Navigation/IGEP Technology Guides/What can I do/Ending}}
  
[[Category:IGEP0022]]
+
[[Category:IGEP Technology Devices Guides]]
[[Category:Tutorials]]
 

Latest revision as of 12:20, 29 January 2013


Overview

This is the 2/3 chapter of IGEPv2 Expansion Tutorial Guide.

We will learn some basic tasks.



What can I do

How to use TFT and Touchscreen

IGEP0022 PROTO RA DSC 0142.JPG
IGEPv2 Expansion supports SEIKO 7” or POWERTIP 4.3” LCD screen. Use J301 connector for POWERTRIP 4.3" or use J302, J303 and J304 connector for SEIKO 7".

Seiko and Powertip touch screens are not supported by default in IGEPv2. Use the following steps for it:

Edit igep.ini file to configure your touch screen, you can do this adding following kernel cmdline parameter

  • In Seiko screen add the following line:
omapdss.def_disp=lcd-70
  • In Powertip screen add the following line:
omapdss.def_disp=lcd-43

How to use serial console

Igepv2expdb9connector.PNG
IGEPv2 Expansion integrates a DB9 RS232 connector. This UART is shared with RS485 so it's incompatible use both interfaces at the same time. For that reason to use UART1 for RS232 comunications you should disable RS485 interface. You can do this adding following kernel cmdline parameter.
board.ei485=no

You need a Null-Modem DB9 male-make serial cable. Connect the cable between the target board and your PC.

Open the serial port on your PC using your preferred serial communications program (minicom) and configure the port as follows:

  • 115200
  • 8N1
  • no flow control (either software or hardware)

On the target board open a serial port as follows:

 $ microcom -s 115200 /dev/ttyS0

Now when you write a character in you PC serial port, the character should appear in the target board.

A detailed guide on how use UARTS can be found by following this link: How to use UARTs

How to use Telit Modem

IGEP0022 Modem with antenna.png
Igepv2expcardreader.PNG
GSM-GPRS antenna (highly recommended) SIM card reader

IGEPv2 Expansion integrates a GSM/GPRS modem to make phone calls or to send SMS or to write and read data from it, etc. Telit modem is not supported by default in IGEPv2 Expansion. Configure this adding following kernel cmdline parameter

buddy.modem=yes 
  • Power up the modem using the next commands:
$ echo 0 > /sys/class/gpio/gpio140/value
$ echo 1 > /sys/class/gpio/gpio141/value
$ sleep 1
$ echo 0 > /sys/class/gpio/gpio141/value
  • Once the modem is on (led near power button is blinking now), you can interact with it via UART 2.

You can use Microcom to comunicate with it from the serial debug console:

$ microcom -s 115200 /dev/ttyO1
  • To check the modem status use the command:
at
  • Answer should be OK.
  • Now unlock it by inserting your SIM card PIN number. Use the command:
at+cpin=<PIN>
  • If you correctly inserted the PIN number, the answer should be OK. If you fail more than 3 times, your SIM card will lock and you will have to insert PUK number.
  • Now you are ready to use the GSM/GPS modem.

From How to use Telit Modem

How to use TVP5151 Video Decoder

Igepv2expvideocompositeconnector.PNG
IGEPv2 Expansion integrates two composite video connectors to decode analog input signal.

Configure TVP5151

  • Plug some peripheral with video composite output in J501 RCA connector, see the image for more details.
  • Connect a screen, for example HDMI monitor.
  • Refresh repositories and accept it.
$ zypper ref 
  • Install video4linux2 plugin
$ zypper in gst-plugins-good-video4linux2

Play with TVP5151

  • Load OMAP ISP kernel module
$ modprobe omap3-isp
  • Configure ISP, for PAL resulution use 720x576 for NTSC resolution use 720x480:
$ media-ctl -r -l '"tvp5150 2-005c":0->"OMAP3 ISP CCDC":0[1], "OMAP3 ISP CCDC":1->"OMAP3 ISP CCDC output":0[1]'
$ media-ctl -v --set-format '"tvp5150 2-005c":0 [UYVY 720x480]'
$ media-ctl -v --set-format '"OMAP3 ISP CCDC":0 [UYVY 720x480]'
$ media-ctl -v --set-format '"OMAP3 ISP CCDC":1 [UYVY 720x480]' 
  • Export display
$ export DISPLAY=:0.0 
  • Launch gstreamer
$ gst-launch-0.10 -v v4l2src device=/dev/video2 queue-size=8 ! video/x-raw-yuv,format=\(fourcc\)UYVY,width=720,height=480 ! ffmpegcolorspace ! autovideosink
  • Now you can see in your IGEP screen a result similar like this
Igepv2expgstreamercapture.jpg

From How to setup tvp5151 video decoder

How to use EEPROM

IGEPv2 Expansion includes a serial EEPROM, provides 1KB of user data storage. EEPROM is connected through I2C2 of OMAP3 processor at address 0x50.

The following example writes the value 0x22 to register 0x10 of device 0x50 on i2c bus 2:

$ i2cset -f -y 2 0x50 0x10 0x22
$ i2cget -f -y 2 0x50 0x10

From How to use EEPROM

How to use CAN bus

Igepv2expcanconnector.PNG
IGEPv2 Expansion integrates a CAN peripheral. Connect any CAN bus device or network to the CAN bus connector (J703).

You have to connect the two boards like this:

IGEPv2 Exp 1         IGEPv2 Exp 2
.---                 .---
| 1 |-X            X-| 1 |  VDD_CAN: Supply Voltage (+5V DC)
| 2 |------------------| 2 |  CANL: CAN Low-Level Voltage I/O
| 3 |------------------| 3 |  GND : Ground
| 4 |------------------| 4 |  CANH : CAN High-Level Voltage I/O
.---                 .---

If this is your first time accessing CAN bus, check J702 jumper is not connected before follow this tutorial. If you don't have this jumper, don't worry because its function is only for testing.

Now you can set up the interface (on all boards when using multiple IGEPv2 EXPANSION connected to a CAN network simultaneously):

$ ip link set can0 up type can bitrate 125000

If you want to receive CAN data, use:

$ candump can0

If you want to send CAN data, use:

$ cansend can0 -i 0x123 0xaa 0xbb 0xcc 0xdd

On the receiver side, you must see the following messages:

can0  123  [4] aa bb cc dd

Switch roles and try it again.

From How to use CAN bus

How to use VGA connector

Igepv2expconnecttovga.jpg Igepv2expvgaconnector.PNG

IGEPv2 Expansion integrates a VGA connector, the output VGA signal is equal to HDMI connector. Plug a monitor with VGA input.











You have successfully completed this chapter of the guide.


Continue this tutorial guide: 3/3 - Start developing under IGEP Technology
Igep forum.png If you have any question, don't ask to ask at the IGEP Community Forum or the IGEP Community Chat Irc.png