1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" dir=
"ltr">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: Entries Tagged robot
</title>
7 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel=
"alternate" title=
"RSS Feed" href=
"robot.rss" type=
"application/rss+xml" />
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
21 <h3>Entries tagged "robot".
</h3>
25 <a href=
"http://people.skolelinux.org/pere/blog/New_IRC_channel_for_LEGO_designers_using_Debian.html">New IRC channel for LEGO designers using Debian
</a>
31 <p>During Christmas, I have worked a bit on the Debian support for
32 <a href=
"http://mindstorms.lego.com/en-us/Default.aspx">LEGO Mindstorm
33 NXT
</a>. My son and I have played a bit with my NXT set, and I
34 discovered I had to build all the tools myself because none were
35 already in Debian Squeeze. If Debian support for LEGO is something
36 you care about, please join me on the IRC channel
37 <a href=
"irc://irc.debian.org/%23debian-lego">#debian-lego
</a> (server
38 irc.debian.org). There is a lot that could be done to improve the
39 Debian support for LEGO designers. For example both CAD software
40 and Mindstorm compilers are missing. :)
</p>
42 <p>Update
2012-
01-
03: A
43 <a href=
"http://wiki.debian.org/LegoDesigners">project page
</a>
44 including links to Lego related packages is now available.
</p>
50 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot
</a>.
55 <div class=
"padding"></div>
59 <a href=
"http://people.skolelinux.org/pere/blog/First_version_of_a_Perl_library_to_control_the_Spykee_robot.html">First version of a Perl library to control the Spykee robot
</a>
65 <p>This summer I got the chance to buy cheap Spykee robots, and since
66 then I have worked on getting Linux software in place to control them.
67 The firmware for the robot is available from the producer, and using
68 that source it was trivial to figure out the protocol specification.
69 I've started on a perl library to control it, and made some demo
70 programs using this perl library to allow one to control the
73 <p>The library is quite functional already, and capable of controlling
74 the driving, fetching video, uploading MP3s and play them. There are
75 a few less important features too.
</p>
77 <p>Since a few weeks ago, I ran out of time to spend on this project,
78 but I never got around to releasing the current source. I decided
79 today that it was time to do something about it, and uploaded the
80 source to my Debian package store at people.skolelinux.org.
</p>
82 <p>Because it was simpler for me, I made a Debian package and
83 published the source and deb. If you got a spykee robot, grab the
84 source or binary package:
</p>
87 <li><a href=
"http://people.skolelinux.org/~pere/debian/packages/lenny/libspykee-perl_0.0.20101009-1.tar.gz">libspykee-perl_0.0
.20101009-
1.tar.gz
</a></li>
88 <li><a href=
"http://people.skolelinux.org/~pere/debian/packages/lenny/libspykee-perl_0.0.20101009-1.dsc">libspykee-perl_0.0
.20101009-
1.dsc
</a></li>
89 <li><a href=
"http://people.skolelinux.org/~pere/debian/packages/lenny/libspykee-perl_0.0.20101009-1_all.deb">libspykee-perl_0.0
.20101009-
1_all.deb
</a></li>
92 <p>If you are interested in helping out with developing this library,
93 please let me know.
</p>
99 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot
</a>.
104 <div class=
"padding"></div>
108 <a href=
"http://people.skolelinux.org/pere/blog/My_first_perl_GUI_application___controlling_a_Spykee_robot.html">My first perl GUI application - controlling a Spykee robot
</a>
114 <p>This evening I made my first Perl GUI application. The last few
115 days I have worked on a Perl module for controlling my recently
116 aquired Spykee robots, and the module is now getting complete enought
117 that it is possible to use it to control the robot driving at least.
118 It was now time to figure out how to use it to create some GUI to
119 allow me to drive the robot around. I picked PerlQt as I have had
120 positive experiences with the Qt API before, and spent a few minutes
121 browsing the web for examples. Using Qt Designer seemed like a short
122 cut, so I ended up writing the perl GUI using Qt Designer and
123 compiling it into a perl program using the puic program from
124 libqt-perl. Nothing fancy yet, but it got buttons to connect and
127 <p>The perl module I have written provide a object oriented API for
128 controlling the robot. Here is an small example on how to use it:
</p>
132 Spykee::discover(sub {$robot{$_[
0]} = $_[
1]});
133 my $host = (keys %robot)[
0];
134 my $spykee = Spykee-
>new();
135 $spykee-
>contact($host, "admin", "admin");
147 <p>Thanks to the release of the source of the robot firmware, I could
148 peek into the implementation at the other end to figure out how to
149 implement the protocol used by the robot. I've implemented several of
150 the commands the robot understand, but is still missing the camera
151 support to make it possible to control the robot from remote. First I
152 want to implement support for uploading new firmware and configuring
153 the wireless network, to make it possible to bootstrap a Spykee robot
154 without the producers Windows and MacOSX software (I only have Linux,
155 so I had to ask a friend to come over to get the robot testing
158 <p>Will release the source to the public soon, but need to figure out
159 where to make it available first. I will add a link to
160 <a href=
"http://wiki.nuug.no/grupper/robot/">the NUUG wiki
</a> for
161 those that want to check back later to find it.
</p>
167 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot
</a>.
172 <div class=
"padding"></div>
176 <a href=
"http://people.skolelinux.org/pere/blog/Robot__reis_deg___.html">Robot, reis deg...
</a>
182 <p>I dag fikk jeg endelig tittet litt på mine nyinnkjøpte roboter, og
183 har brukt noen timer til å google etter interessante referanser og
184 aktuell kildekode for bruk på Linux. Det mest lovende så langt er
185 <a href=
"http://ispykee.toyz.org/">ispykee
</a>, som har en
186 BSD-lisensiert linux-daemon som står som mellomledd mellom roboter på
187 lokalnettet og en sentral tjeneste der en iPhone kan koble seg opp for
188 å fjernstyre roboten. Linux-daemonen implementerer deler av
189 protokollen som roboten forstår. Etter å ha knotet litt med å oppnå
190 kontakt med roboten (den oppretter et eget ad-hoc wifi-nett, så jeg
191 måtte gå av mitt vanlige nett for å få kontakt), og kommet frem til at
192 den lytter på IP-port
9000 og
9001, gikk jeg i gang med å finne ut
193 hvordan jeg kunne snakke med roboten vha. disse portene. Robotbiten
194 av protokollen er publisert av produsenten med GPL-lisens, slik at det
195 er mulig å se hvordan protokollen fungerer. Det finnes en java-klient
196 for Android som så ganske snasen ut, men fant ingen kildekode for
197 denne. Derimot hadde iphone-løsningen kildekode, så jeg tok
198 utgangspunkt i den.
</p>
200 <p>Daemonen ville i utgangspunktet forsøke å kontakte den sentrale
201 tjenesten som iphone-programmet kobler seg til. Jeg skrev dette om
202 til i stedet å sette opp en nettverkstjeneste på min lokale maskin,
203 som jeg kan koble meg opp til med telnet og gi kommandoer til roboten
204 (act, forward, right, left, etc). Det involverte i praksis å bytte ut
205 socket()/connect() med socket()/bind()/listen()/accept() for å gjøre
206 klienten om til en tjener.
</p>
208 <p>Mens jeg har forsøkt å få roboten til å bevege seg har min samboer
209 skrudd sammen resten av roboten for å få montert kamera og plastpynten
210 (armer, plastfiber for lys). Nå er det hele montert, og roboten er
211 klar til bruk. Må få flyttet den over til mitt vanlige trådløsnett
212 før det blir praktisk, men de bitene av protokollen er ikke
213 implementert i ispykee-daemonen, så der må jeg enten få tak i en mac
214 eller en windows-maskin, eller implementere det selv.
</p>
216 <p>Vi var tre som kjøpte slike roboter, og vi har blitt enige om å
217 samle notater og referanser på
<a
218 href=
"http://wiki.nuug.no/grupper/robot/">NUUGs wiki
</a>. Ta en titt
219 der hvis du er nysgjerrig.
</p>
225 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot
</a>.
230 <div class=
"padding"></div>
234 <a href=
"http://people.skolelinux.org/pere/blog/2_Spykee_roboter_i_hus__n__skal_det_lekes.html">2 Spykee-roboter i hus, nå skal det lekes
</a>
240 <p>Jeg kjøpte nettopp to
241 <a href=
"http://www.spykee-robot.com/">Spykee
</a>-roboter, for test og
242 leking. Kjøpte to da det var så billige, og gir meg mulighet til å
243 eksperimentere uten å være veldig redd for å ødelegge alt ved å bytte
244 ut firmware og slikt. Oppdaget at lekebutikken på Bryn senter hadde
245 en liten stabel på lager som de ikke hadde klart å selge ut etter
246 fjorårets juleinnkjøp, og var villig til å selge for en femtedel av
247 vanlig pris. Jeg, Ronny og Jarle har skaffet oss restbeholdningen, og
248 det blir morsomt å se hva vi får ut av dette.
</p>
250 <p>Roboten har belter styrt av to motorer, kamera, høytaler, mikrofon
251 og wifi-tilkobling. Det hele styrt av en GPL-lisensiert databoks som
252 jeg mistenker kjører linux. Firmware-kildekoden ble visst publisert i
253 mai. Eneste utfordringen er at kontroller-programvaren kun finnes til
254 Windows, men det må en kunne jobbe seg rundt når vi har kildekoden til
258 <li><a href=
"http://en.wikipedia.org/wiki/Spykee">Wikipedia-oppføring
</a></li>
259 <li><a href=
"http://www.spykeeworld.com/spykee/US/freeSoftware.html">Nedlasting av firmware-kilden
</a></li>
260 <li><a href=
"http://wiki.nuug.no/grupper/robot">prosjektwiki hos NUUG
</a></li>
267 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot
</a>.
272 <div class=
"padding"></div>
274 <p style=
"text-align: right;"><a href=
"robot.rss"><img src=
"http://people.skolelinux.org/pere/blog/xml.gif" alt=
"RSS Feed" width=
"36" height=
"14" /></a></p>
285 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
2)
</a></li>
292 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
294 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
296 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
298 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
300 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
302 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
304 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
306 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
308 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
310 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
312 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
314 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
321 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
323 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
325 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
327 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
329 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
331 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
333 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
335 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
337 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
339 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
341 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
343 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
350 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
352 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
354 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
356 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
358 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
360 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
362 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
364 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
366 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
368 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
370 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
372 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
379 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
381 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
383 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
385 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
387 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
389 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
391 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
393 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
395 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
397 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
399 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
401 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
408 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
410 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
421 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
423 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
425 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
427 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
429 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
5)
</a></li>
431 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
12)
</a></li>
433 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
435 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
59)
</a></li>
437 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
118)
</a></li>
439 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
9)
</a></li>
441 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
7)
</a></li>
443 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
445 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
166)
</a></li>
447 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
21)
</a></li>
449 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
451 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
10)
</a></li>
453 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
9)
</a></li>
455 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
32)
</a></li>
457 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
17)
</a></li>
459 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
8)
</a></li>
461 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
6)
</a></li>
463 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
465 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
25)
</a></li>
467 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
219)
</a></li>
469 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
148)
</a></li>
471 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
6)
</a></li>
473 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
475 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
41)
</a></li>
477 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
61)
</a></li>
479 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
481 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
483 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
2)
</a></li>
485 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
5)
</a></li>
487 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
489 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
4)
</a></li>
491 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
493 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
28)
</a></li>
495 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
497 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
4)
</a></li>
499 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
39)
</a></li>
501 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
3)
</a></li>
503 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
5)
</a></li>
505 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
12)
</a></li>
507 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
1)
</a></li>
509 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
7)
</a></li>
511 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
35)
</a></li>
513 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
515 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
26)
</a></li>
521 <p style=
"text-align: right">
522 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.4
</a>