Projecte

General

Perfil

Compex WPJ342 » Historial » Versió 12

Roger Pueyo Centelles, 24-07-2014 12:57

1 1 Roger Pueyo Centelles
h1. Compex WPJ342
2
3
This document explains several ways to compile compile qMp for a "Compex WPJ342":http://www.compex.com.sg/productdetailinfo.asp?model=WPJ342&acc1Panel=2.
4
5
h2. Standard compilation
6
7 4 Roger Pueyo Centelles
1) Get the OpenWrt Attitude Adjustment 12.09 SDK for the WPJ342 from Compex: http://www.compex.com.sg/openwrtdownload.aspx
8 1 Roger Pueyo Centelles
9 4 Roger Pueyo Centelles
2) Save the OpenWrt SDK file to your working directory and extract it (as of 23rd July 2014, the latest version is sdkowrt-140604.tar.bz2, which comes inside the file b140604.rar):
10 1 Roger Pueyo Centelles
11
<pre>
12 4 Roger Pueyo Centelles
tar -xf sdkowrt-140604.tar.bz2
13 1 Roger Pueyo Centelles
</pre>
14
15
and enter to the newly created directory "sdkowrt-140604".
16
17
3) By default this SDK builds the firmware for the WPJ344 board, not the WPJ342. The Makefile file needs to be slightly changed. Open it with your text editor and find the section "standard_config:":
18
19
<pre>
20
standard_config:
21
	cp $(CONFIG_PATH)/wpj344.config $(OWRT_DIST_LOCAL_PATH)/.config
22
	rm -rf $(OWRT_DIST_LOCAL_PATH)/tmp
23
</pre>
24
25
Replace it with:
26
27
<pre>
28
standard_config:
29
	cp $(CONFIG_PATH)/wpj342.config $(OWRT_DIST_LOCAL_PATH)/.config
30
	rm -rf $(OWRT_DIST_LOCAL_PATH)/tmp
31
</pre>
32
33
4) Run @make@ to compile OpenWrt (without qMp, by now):
34
35
<pre>
36
make
37
</pre>
38
39 3 Roger Pueyo Centelles
This will take a while and will download several megabytes of files to ~/dl-openwrt. If you want extra verbosity, run @make V=99@ to get details of the compilation.
40 2 Roger Pueyo Centelles
41 5 Roger Pueyo Centelles
5) The compilation will fail, since the @hotplug2@ package sources are no longer available at the destination stated in its Makefile. Edit @openwrt/package/hotplug2/Makefile@ with your favourite editor and replace this:
42
43
<pre>
44
PKG_SOURCE_PROTO:=svn
45
PKG_SOURCE_VERSION:=$(PKG_REV)
46
PKG_SOURCE_SUBDIR:=hotplug2-$(PKG_VERSION)
47
PKG_SOURCE_URL:=http://svn.nomi.cz/svn/isteve/hotplug2
48
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
49
#PKG_SOURCE_URL:=http://isteve.bofh.cz/~isteve/hotplug2
50
#PKG_MD5SUM:=ea2c01d027b4002e4e6b0ff266f51a51
51
</pre>
52
53
with this:
54
55
<pre>
56
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
57
PKG_SOURCE_URL:=http://downloads.openwrt.org/sources/
58
PKG_MD5SUM:=7bab8ba67555a8400424f3c92ec67579
59
</pre>
60
61
See https://dev.openwrt.org/changeset/41503 for details.
62
63
6) Retry compilation:
64
65
<pre>
66
make
67 6 Roger Pueyo Centelles
</pre>
68 5 Roger Pueyo Centelles
69 7 Roger Pueyo Centelles
7) Compilation should finish successfully, showing this last message and no more errors:
70 5 Roger Pueyo Centelles
71 7 Roger Pueyo Centelles
<pre>
72
make[1]: Leaving directory '/B/qMp/WPJ342/WPJ342_36088/openwrt'
73
</pre>
74
75
8) The binary file openwrt-ar71xx-generic-wpj342-squashfs-factory.img in the @openwrt/bin/ar71xx/@ directory:
76
77
<pre>
78
$ ls openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img 
79
openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img
80
</pre>
81
82
Now OpenWrt is compiled. qMp packages still have to be added to the compilation.
83
84
9) Enter the @openwrt@ directory and edit the file @feeds.conf.default@ and add the following line:
85
86
<pre>
87
src-git qmp git://qmp.cat/qmp.git
88 11 Roger Pueyo Centelles
src-git routing git://github.com/openwrt-routing/packages.git
89 7 Roger Pueyo Centelles
</pre>
90
91
10) Update and install the feeds:
92
<pre>
93
./scripts/feeds update -a
94
./scripts/feeds install -a
95
</pre>
96
97
11) Using @menuconfig@ select the @qmp-small-node@ package:
98
99
<pre>
100
make menuconfig
101
</pre>
102
103
Browse to @qMp@ and select @qmp-small-node@:
104
105
<pre>
106
<*> qmp-small-node................... Required addons for small qMp mesh node
107
</pre>
108
109
12) Exit saving the configuration.
110
111
13) Compile again:
112
113
<pre>
114
make
115
</pre>
116
117 9 Roger Pueyo Centelles
14) After the compilation process, the qMp image for the Compex WPJ342 is located at *openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img*. You can flash it using your preferred method (web interface, TFPT, etc.). If you use TFTP, it seems that the board does not reboot automatically after writing the image to the NAND flash memory, so this must be done manually.
118
119
15) The image comes without a password for the @root@ user. Log in via @telnet@ or using the web interface and set it.
120
121 10 Roger Pueyo Centelles
p=. !{width:500px}Compex_WPJ342-qMp_3.0.1_Clearance.jpg!:http://dev.qmp.cat/attachments/download/157/Compex_WPJ342-qMp_3.0.1_Clearance.jpg
122
qMp 3.0.1 Clearance running on a Compex WPJ342The NC software architecture diagram. Click on the image to see it full-size.
123 9 Roger Pueyo Centelles
124 2 Roger Pueyo Centelles
h2. Compiling with the latest OpenWrt Attitude Adjustment 12.09 revision
125
126
The OpenWrt SDK provided by Compex is based on Attitude Adjustment 12.09 revision 36088, which does not contain several bugfixes and repository changes included in the following ones. It can be a good idea to build OpenWrt from the last revision, still version Attitude Adjustment 12.09.
127
128
1) Follow steps 1 to 3 in the [[Compex_WPJ342#Standard-compilation|Standard Compilation]] section.
129
130
2) Check the latest revision number for OpenWrt. Go to https://dev.openwrt.org/changeset and get the last change/revision number (as of 23rd July 2014 it is *41811*).
131
132
3) Edit the Makefile with your favourite text editor and replace this:
133
134
<pre>
135 1 Roger Pueyo Centelles
OWRT_DIST_SVN_REV = 36088
136 3 Roger Pueyo Centelles
137
...
138
139 2 Roger Pueyo Centelles
OWRT_PKGS_SVN_REV = 36089
140
</pre>
141
142 1 Roger Pueyo Centelles
with the latest revision:
143
144 2 Roger Pueyo Centelles
<pre>
145
OWRT_DIST_SVN_REV = 41811
146 3 Roger Pueyo Centelles
147
...
148
149 2 Roger Pueyo Centelles
OWRT_PKGS_SVN_REV = 41811
150
</pre>
151
152
4) Check the latest revision number for LuCi. Go to http://svn.luci.subsignal.org and get the last revision number (as of 23rd July 2014 it is *10459*).
153
154
5) Edit the Makefile with your favourite text editor and replace this:
155
156
<pre>
157
FEEDS_LUCI_SVN_REV = 9656
158
</pre>
159
160
with the latest revision:
161 1 Roger Pueyo Centelles
162
<pre>
163
FEEDS_LUCI_SVN_REV = 10459
164 4 Roger Pueyo Centelles
</pre>
165 7 Roger Pueyo Centelles
166
6) Edit the file @config/wpj342.config@ with your favourite editor. Replace this:
167
168
<pre>
169
# CONFIG_PACKAGE_libip6tc is not set
170
</pre>
171
172 12 Roger Pueyo Centelles
with this:
173
174 7 Roger Pueyo Centelles
<pre>
175
CONFIG_PACKAGE_libip6tc=y
176
</pre>
177
178 12 Roger Pueyo Centelles
7) Run @make@ to start compilation:
179 7 Roger Pueyo Centelles
180 12 Roger Pueyo Centelles
<pre>
181
make
182
</pre>
183
184
or @make V=99@ for extra verbosity.
185 4 Roger Pueyo Centelles
186
h2. Compiling from OpenWrt trunk
187
188
1) Get the OpenWrt trunk SDK for the WPJ342 from Compex: http://www.compex.com.sg/openwrtdownload.aspx
189
190
2) Save the OpenWrt SDK file to your working directory and extract it (as of 23rd July 2014, the latest version is sdk-r40719-b140527-ath10k.tar.bz2):
191
192
<pre>
193
tar -xf sdk-r40719-b140527-ath10k.tar.bz2
194
</pre>
195
196
3) Enter the newly created directory @sdk-r40719-b140527-ath10k@.
197
198
4) If you want to compile with the latest trunk revision, check the latest revision number for OpenWrt. Go to https://dev.openwrt.org/changeset and get the last change/revision number (as of 23rd July 2014 it is *41811*). Edit the Makefile and replace this:
199
200
<pre>
201
OWRT_DIST_SVN_REV = 40719
202
</pre>
203
204
with:
205
206
<pre>
207
OWRT_DIST_SVN_REV = 41811
208
</pre>
209
210
5) Run @make@, or @make V=99@ for extra compilation verbosity:
211
212
<pre>
213
make
214 2 Roger Pueyo Centelles
</pre>