Compex WPJ342 » History » Version 14
Roger Pueyo Centelles, 07/24/2014 01:07 PM
1 | 1 | Roger Pueyo Centelles | h1. Compex WPJ342 |
---|---|---|---|
2 | 1 | Roger Pueyo Centelles | |
3 | 1 | Roger Pueyo Centelles | 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 | 1 | Roger Pueyo Centelles | |
5 | 1 | Roger Pueyo Centelles | h2. Standard compilation |
6 | 1 | Roger Pueyo Centelles | |
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 | 1 | Roger Pueyo Centelles | <pre> |
12 | 4 | Roger Pueyo Centelles | tar -xf sdkowrt-140604.tar.bz2 |
13 | 1 | Roger Pueyo Centelles | </pre> |
14 | 1 | Roger Pueyo Centelles | |
15 | 1 | Roger Pueyo Centelles | and enter to the newly created directory "sdkowrt-140604". |
16 | 1 | Roger Pueyo Centelles | |
17 | 1 | Roger Pueyo Centelles | 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 | 1 | Roger Pueyo Centelles | |
19 | 1 | Roger Pueyo Centelles | <pre> |
20 | 1 | Roger Pueyo Centelles | standard_config: |
21 | 1 | Roger Pueyo Centelles | cp $(CONFIG_PATH)/wpj344.config $(OWRT_DIST_LOCAL_PATH)/.config |
22 | 1 | Roger Pueyo Centelles | rm -rf $(OWRT_DIST_LOCAL_PATH)/tmp |
23 | 1 | Roger Pueyo Centelles | </pre> |
24 | 1 | Roger Pueyo Centelles | |
25 | 1 | Roger Pueyo Centelles | Replace it with: |
26 | 1 | Roger Pueyo Centelles | |
27 | 1 | Roger Pueyo Centelles | <pre> |
28 | 1 | Roger Pueyo Centelles | standard_config: |
29 | 1 | Roger Pueyo Centelles | cp $(CONFIG_PATH)/wpj342.config $(OWRT_DIST_LOCAL_PATH)/.config |
30 | 1 | Roger Pueyo Centelles | rm -rf $(OWRT_DIST_LOCAL_PATH)/tmp |
31 | 1 | Roger Pueyo Centelles | </pre> |
32 | 1 | Roger Pueyo Centelles | |
33 | 1 | Roger Pueyo Centelles | 4) Run @make@ to compile OpenWrt (without qMp, by now): |
34 | 1 | Roger Pueyo Centelles | |
35 | 1 | Roger Pueyo Centelles | <pre> |
36 | 1 | Roger Pueyo Centelles | make |
37 | 1 | Roger Pueyo Centelles | </pre> |
38 | 1 | Roger Pueyo Centelles | |
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 | 5 | Roger Pueyo Centelles | |
43 | 5 | Roger Pueyo Centelles | <pre> |
44 | 5 | Roger Pueyo Centelles | PKG_SOURCE_PROTO:=svn |
45 | 5 | Roger Pueyo Centelles | PKG_SOURCE_VERSION:=$(PKG_REV) |
46 | 5 | Roger Pueyo Centelles | PKG_SOURCE_SUBDIR:=hotplug2-$(PKG_VERSION) |
47 | 5 | Roger Pueyo Centelles | PKG_SOURCE_URL:=http://svn.nomi.cz/svn/isteve/hotplug2 |
48 | 5 | Roger Pueyo Centelles | PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz |
49 | 5 | Roger Pueyo Centelles | #PKG_SOURCE_URL:=http://isteve.bofh.cz/~isteve/hotplug2 |
50 | 5 | Roger Pueyo Centelles | #PKG_MD5SUM:=ea2c01d027b4002e4e6b0ff266f51a51 |
51 | 5 | Roger Pueyo Centelles | </pre> |
52 | 5 | Roger Pueyo Centelles | |
53 | 5 | Roger Pueyo Centelles | with this: |
54 | 5 | Roger Pueyo Centelles | |
55 | 5 | Roger Pueyo Centelles | <pre> |
56 | 5 | Roger Pueyo Centelles | PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz |
57 | 5 | Roger Pueyo Centelles | PKG_SOURCE_URL:=http://downloads.openwrt.org/sources/ |
58 | 5 | Roger Pueyo Centelles | PKG_MD5SUM:=7bab8ba67555a8400424f3c92ec67579 |
59 | 5 | Roger Pueyo Centelles | </pre> |
60 | 5 | Roger Pueyo Centelles | |
61 | 5 | Roger Pueyo Centelles | See https://dev.openwrt.org/changeset/41503 for details. |
62 | 5 | Roger Pueyo Centelles | |
63 | 5 | Roger Pueyo Centelles | 6) Retry compilation: |
64 | 5 | Roger Pueyo Centelles | |
65 | 5 | Roger Pueyo Centelles | <pre> |
66 | 5 | Roger Pueyo Centelles | 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 | 7 | Roger Pueyo Centelles | make[1]: Leaving directory '/B/qMp/WPJ342/WPJ342_36088/openwrt' |
73 | 7 | Roger Pueyo Centelles | </pre> |
74 | 7 | Roger Pueyo Centelles | |
75 | 7 | Roger Pueyo Centelles | 8) The binary file openwrt-ar71xx-generic-wpj342-squashfs-factory.img in the @openwrt/bin/ar71xx/@ directory: |
76 | 7 | Roger Pueyo Centelles | |
77 | 7 | Roger Pueyo Centelles | <pre> |
78 | 7 | Roger Pueyo Centelles | $ ls openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img |
79 | 7 | Roger Pueyo Centelles | openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img |
80 | 7 | Roger Pueyo Centelles | </pre> |
81 | 7 | Roger Pueyo Centelles | |
82 | 7 | Roger Pueyo Centelles | Now OpenWrt is compiled. qMp packages still have to be added to the compilation. |
83 | 7 | Roger Pueyo Centelles | |
84 | 7 | Roger Pueyo Centelles | 9) Enter the @openwrt@ directory and edit the file @feeds.conf.default@ and add the following line: |
85 | 7 | Roger Pueyo Centelles | |
86 | 7 | Roger Pueyo Centelles | <pre> |
87 | 7 | Roger Pueyo Centelles | src-git qmp git://qmp.cat/qmp.git |
88 | 14 | Roger Pueyo Centelles | src-git routing git://github.com/openwrt-routing/packages.git |
89 | 14 | Roger Pueyo Centelles | </pre> |
90 | 14 | Roger Pueyo Centelles | |
91 | 14 | Roger Pueyo Centelles | If you intend to compile qMp 3.0.1 Clearance, add instead these two lines: |
92 | 14 | Roger Pueyo Centelles | |
93 | 14 | Roger Pueyo Centelles | <pre> |
94 | 14 | Roger Pueyo Centelles | src-git qmp git://qmp.cat/qmp.git |
95 | 13 | Roger Pueyo Centelles | src-svn routing https://github.com/openwrt-routing/packages@670 |
96 | 7 | Roger Pueyo Centelles | </pre> |
97 | 7 | Roger Pueyo Centelles | |
98 | 7 | Roger Pueyo Centelles | 10) Update and install the feeds: |
99 | 7 | Roger Pueyo Centelles | <pre> |
100 | 7 | Roger Pueyo Centelles | ./scripts/feeds update -a |
101 | 7 | Roger Pueyo Centelles | ./scripts/feeds install -a |
102 | 7 | Roger Pueyo Centelles | </pre> |
103 | 7 | Roger Pueyo Centelles | |
104 | 7 | Roger Pueyo Centelles | 11) Using @menuconfig@ select the @qmp-small-node@ package: |
105 | 7 | Roger Pueyo Centelles | |
106 | 7 | Roger Pueyo Centelles | <pre> |
107 | 7 | Roger Pueyo Centelles | make menuconfig |
108 | 7 | Roger Pueyo Centelles | </pre> |
109 | 7 | Roger Pueyo Centelles | |
110 | 7 | Roger Pueyo Centelles | Browse to @qMp@ and select @qmp-small-node@: |
111 | 7 | Roger Pueyo Centelles | |
112 | 7 | Roger Pueyo Centelles | <pre> |
113 | 7 | Roger Pueyo Centelles | <*> qmp-small-node................... Required addons for small qMp mesh node |
114 | 7 | Roger Pueyo Centelles | </pre> |
115 | 7 | Roger Pueyo Centelles | |
116 | 7 | Roger Pueyo Centelles | 12) Exit saving the configuration. |
117 | 7 | Roger Pueyo Centelles | |
118 | 7 | Roger Pueyo Centelles | 13) Compile again: |
119 | 7 | Roger Pueyo Centelles | |
120 | 7 | Roger Pueyo Centelles | <pre> |
121 | 7 | Roger Pueyo Centelles | make |
122 | 7 | Roger Pueyo Centelles | </pre> |
123 | 7 | Roger Pueyo Centelles | |
124 | 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. |
125 | 9 | Roger Pueyo Centelles | |
126 | 9 | Roger Pueyo Centelles | 15) The image comes without a password for the @root@ user. Log in via @telnet@ or using the web interface and set it. |
127 | 9 | Roger Pueyo Centelles | |
128 | 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 |
129 | 10 | Roger Pueyo Centelles | qMp 3.0.1 Clearance running on a Compex WPJ342The NC software architecture diagram. Click on the image to see it full-size. |
130 | 9 | Roger Pueyo Centelles | |
131 | 2 | Roger Pueyo Centelles | h2. Compiling with the latest OpenWrt Attitude Adjustment 12.09 revision |
132 | 2 | Roger Pueyo Centelles | |
133 | 2 | Roger Pueyo Centelles | 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. |
134 | 2 | Roger Pueyo Centelles | |
135 | 2 | Roger Pueyo Centelles | 1) Follow steps 1 to 3 in the [[Compex_WPJ342#Standard-compilation|Standard Compilation]] section. |
136 | 2 | Roger Pueyo Centelles | |
137 | 2 | Roger Pueyo Centelles | 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*). |
138 | 2 | Roger Pueyo Centelles | |
139 | 2 | Roger Pueyo Centelles | 3) Edit the Makefile with your favourite text editor and replace this: |
140 | 2 | Roger Pueyo Centelles | |
141 | 2 | Roger Pueyo Centelles | <pre> |
142 | 1 | Roger Pueyo Centelles | OWRT_DIST_SVN_REV = 36088 |
143 | 3 | Roger Pueyo Centelles | |
144 | 3 | Roger Pueyo Centelles | ... |
145 | 3 | Roger Pueyo Centelles | |
146 | 2 | Roger Pueyo Centelles | OWRT_PKGS_SVN_REV = 36089 |
147 | 2 | Roger Pueyo Centelles | </pre> |
148 | 2 | Roger Pueyo Centelles | |
149 | 1 | Roger Pueyo Centelles | with the latest revision: |
150 | 1 | Roger Pueyo Centelles | |
151 | 2 | Roger Pueyo Centelles | <pre> |
152 | 2 | Roger Pueyo Centelles | OWRT_DIST_SVN_REV = 41811 |
153 | 3 | Roger Pueyo Centelles | |
154 | 3 | Roger Pueyo Centelles | ... |
155 | 3 | Roger Pueyo Centelles | |
156 | 2 | Roger Pueyo Centelles | OWRT_PKGS_SVN_REV = 41811 |
157 | 2 | Roger Pueyo Centelles | </pre> |
158 | 2 | Roger Pueyo Centelles | |
159 | 2 | Roger Pueyo Centelles | 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*). |
160 | 2 | Roger Pueyo Centelles | |
161 | 2 | Roger Pueyo Centelles | 5) Edit the Makefile with your favourite text editor and replace this: |
162 | 2 | Roger Pueyo Centelles | |
163 | 2 | Roger Pueyo Centelles | <pre> |
164 | 2 | Roger Pueyo Centelles | FEEDS_LUCI_SVN_REV = 9656 |
165 | 2 | Roger Pueyo Centelles | </pre> |
166 | 2 | Roger Pueyo Centelles | |
167 | 2 | Roger Pueyo Centelles | with the latest revision: |
168 | 1 | Roger Pueyo Centelles | |
169 | 1 | Roger Pueyo Centelles | <pre> |
170 | 1 | Roger Pueyo Centelles | FEEDS_LUCI_SVN_REV = 10459 |
171 | 4 | Roger Pueyo Centelles | </pre> |
172 | 7 | Roger Pueyo Centelles | |
173 | 7 | Roger Pueyo Centelles | 6) Edit the file @config/wpj342.config@ with your favourite editor. Replace this: |
174 | 7 | Roger Pueyo Centelles | |
175 | 7 | Roger Pueyo Centelles | <pre> |
176 | 7 | Roger Pueyo Centelles | # CONFIG_PACKAGE_libip6tc is not set |
177 | 7 | Roger Pueyo Centelles | </pre> |
178 | 7 | Roger Pueyo Centelles | |
179 | 12 | Roger Pueyo Centelles | with this: |
180 | 12 | Roger Pueyo Centelles | |
181 | 7 | Roger Pueyo Centelles | <pre> |
182 | 7 | Roger Pueyo Centelles | CONFIG_PACKAGE_libip6tc=y |
183 | 7 | Roger Pueyo Centelles | </pre> |
184 | 7 | Roger Pueyo Centelles | |
185 | 12 | Roger Pueyo Centelles | 7) Run @make@ to start compilation: |
186 | 7 | Roger Pueyo Centelles | |
187 | 12 | Roger Pueyo Centelles | <pre> |
188 | 12 | Roger Pueyo Centelles | make |
189 | 12 | Roger Pueyo Centelles | </pre> |
190 | 12 | Roger Pueyo Centelles | |
191 | 12 | Roger Pueyo Centelles | or @make V=99@ for extra verbosity. |
192 | 4 | Roger Pueyo Centelles | |
193 | 4 | Roger Pueyo Centelles | h2. Compiling from OpenWrt trunk |
194 | 4 | Roger Pueyo Centelles | |
195 | 4 | Roger Pueyo Centelles | 1) Get the OpenWrt trunk SDK for the WPJ342 from Compex: http://www.compex.com.sg/openwrtdownload.aspx |
196 | 4 | Roger Pueyo Centelles | |
197 | 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 sdk-r40719-b140527-ath10k.tar.bz2): |
198 | 4 | Roger Pueyo Centelles | |
199 | 4 | Roger Pueyo Centelles | <pre> |
200 | 4 | Roger Pueyo Centelles | tar -xf sdk-r40719-b140527-ath10k.tar.bz2 |
201 | 4 | Roger Pueyo Centelles | </pre> |
202 | 4 | Roger Pueyo Centelles | |
203 | 4 | Roger Pueyo Centelles | 3) Enter the newly created directory @sdk-r40719-b140527-ath10k@. |
204 | 4 | Roger Pueyo Centelles | |
205 | 4 | Roger Pueyo Centelles | 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: |
206 | 4 | Roger Pueyo Centelles | |
207 | 4 | Roger Pueyo Centelles | <pre> |
208 | 4 | Roger Pueyo Centelles | OWRT_DIST_SVN_REV = 40719 |
209 | 4 | Roger Pueyo Centelles | </pre> |
210 | 4 | Roger Pueyo Centelles | |
211 | 4 | Roger Pueyo Centelles | with: |
212 | 4 | Roger Pueyo Centelles | |
213 | 4 | Roger Pueyo Centelles | <pre> |
214 | 4 | Roger Pueyo Centelles | OWRT_DIST_SVN_REV = 41811 |
215 | 4 | Roger Pueyo Centelles | </pre> |
216 | 4 | Roger Pueyo Centelles | |
217 | 4 | Roger Pueyo Centelles | 5) Run @make@, or @make V=99@ for extra compilation verbosity: |
218 | 4 | Roger Pueyo Centelles | |
219 | 4 | Roger Pueyo Centelles | <pre> |
220 | 4 | Roger Pueyo Centelles | make |
221 | 2 | Roger Pueyo Centelles | </pre> |