Difference between revisions of "What can I do with IGEP0022"

From IGEP - ISEE Wiki

Jump to: navigation, search
(How to use CAN bus)
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
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:
+
#REDIRECT:[[What can I do with IGEPv2 EXPANSION]]
 
 
= 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
 
 
 
To configure the touchscreen, add "Configured Touchscreen" in "ServerLayout" section and remove "Configured Mouse" in /etc/X11/xorg.conf
 
 
 
Section "ServerLayout"
 
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:
 
 
 
/etc/init.d/xserver-nodm stop
 
TSLIB_CALIBFILE=/etc/pointercal TSLIB_TSDEVICE=/dev/input/touchscreen0 TSLIB_CONSOLEDEVICE=none ts_calibrate
 
/etc/init.d/xserver-nodm start
 
 
 
= How to use Telit Modem  =
 
 
 
Check J402 and J403 jumpers are not connected before follow the tutorial.
 
 
 
Insert a valid SIM card to the SIM card reader of your IGEP0022 expansion board.
 
 
 
The IGEP0022 expansion board provides a Telit [http://telit.com/en/products/gsm-gprs.php?p_ac=show&p=47 GE865] GSM/GPRS&nbsp;modem which is connected to the OMAP via some GPIO pins and UART 2.<br>
 
 
 
Here you have the official manuals from the manufacturer's webpage:<br>
 
 
 
*[http://telit.com/module/infopool/download.php?id=1666 Telit GE865-QUAD Hardware User Guide]<br>
 
*[http://telit.com/module/infopool/download.php?id=522 Telit Modules Software User Guide]<br>
 
 
 
<br>
 
 
 
Here there are a few instructions in order to introduce the Telit modem.<br>
 
 
 
If this is your first time accessing Telit Modem, you must add the following line at the kernel file (igep.ini) in order to enable GE865 support&nbsp;:
 
<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>
 
 
 
In IGEP0022, the modem is connected to 3 GPIO pins from the OMAP, which are: &lt;omap_pin_name (modem_function)&gt;
 
 
 
*GPIO_140 (Reset)
 
*GPIO_141 (On_Off)
 
*GPIO_156 (PWRMON)<br>
 
 
 
You can power up your modem using the following sequence:
 
 
 
(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)
 
<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, 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:&nbsp;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>
 
Answer should be OK.<br>
 
 
 
'''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&nbsp;card PIN&nbsp;number. Use the command:<br>
 
<pre>at+cpin=&lt;PIN&gt;</pre>
 
If you correctly inserted the PIN&nbsp;number, the answer should be OK.
 
 
 
(Note: If you fail more than 3 times, your SIM&nbsp;card will lock and you will have to insert PUK number.)
 
 
 
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&nbsp;modem. Here are some examples of simple&nbsp;commands:
 
 
 
You can check the complete list of AT&nbsp;commands at the Official manufacturer [http://telit.com/module/infopool/download.php?id=522 Software User Guide].
 
 
 
=== Test received signal strenght<br>  ===
 
 
 
Use the instruction:
 
<pre>at+csq</pre>
 
 
 
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 be check the antenna
 
 
 
=== Making a phone call<br>  ===
 
 
 
Use the instruction:
 
<pre>atd &lt;number_to_call&gt;
 
</pre>
 
 
 
Press any key to end call
 
 
 
=== 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 support 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&nbsp;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>
 
(Note: The first load order must be the iommu2 and then the omap3-isp)<br>
 
 
 
----
 
 
 
<br>
 
 
 
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>
 
 
 
Now you have to configure the ISP and TVP5151:<br>
 
<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&nbsp;output to the Composite Video RCA input connector of the IGEP0022.
 
 
 
Use gstreamer as live stream to capture video from your video source.<br>
 
 
 
Now setup the gstreamer pipeline:<br>
 
<pre>gst-launch-0.10 -v v4l2src device=/dev/video2 queue-size=1&nbsp;! video/x-raw-yuv,format=\(fourcc\)UYVY,width=720,height=628&nbsp;! omapfbsink</pre>
 
If everything was fine you will see the live video at the screen.
 
 
 
[[Image:TVP5151 video decoder.jpg|frame|center|514x346px]]See also: [[How to setup tvp5151 video decoder]]<br>
 
 
 
= How to use EEPROM  =
 
 
 
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 can use easily simple reads/writes to access to the eeprom:
 
 
 
echo "hello world!" &gt; /sys/devices/platform/i2c_omap.2/i2c-2/2-0050/eeprom
 
cat /sys/devices/platform/i2c_omap.2/i2c-2/2-0050/eeprom
 
 
 
Or read/write from userspace using i2c-tools:
 
 
 
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  =
 
 
 
Check J702 jumper is not connected before follow the tutorial.
 
 
 
The IGEP0022 expansion board provides a CAN&nbsp;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&nbsp;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 |
 
.---                  ---
 
 
 
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&nbsp;network simultaneously)</span></span>:<br>
 
 
 
/sbin/ip link set can0 up type can bitrate 125000
 
 
 
If you want to receive CAN&nbsp;data, use:
 
 
 
candump can0
 
 
 
If you want to send CAN data, use:
 
 
 
cansend can0 123#AABBCCDD
 
cansend can0 123#R
 
cansend can0 1F334455#1122334455667788
 
cansend can0 1F334455#R
 
 
 
On the receiver side, you must see the following messages:
 
 
 
can0  123  [4] AA BB CC DD
 
can0  123  [0] remote request
 
can0  1F334455  [8] 11 22 33 44 55 66 77 88
 
can0  1F334455  [0] remote request
 
 
 
Switch roles and try it again
 
 
 
[[Category:IGEP0022]]
 
[[Category:Tutorials]]
 

Latest revision as of 10:47, 13 April 2012