Home
Learn how to to build a fully automated mechanical
Contents
1. Gata Coll data Coll r 1 else ignore other pieces of data print nlOs ignoring next piece OF datam COML aes ae read next piece of data wh Ust HAR print nll getting next piece Om det else ODROID MAGAZINE 38 found all 3 pieces of desired data ignore others time to quit this iteration print all 3 pleces or data collected n close tty read Close Ok True SVs pring TINI closed tty timestamp int to be sent to SAMI service edie Welt int time time 1000 priar Ltrers od aE val Temps T temp ste t MEE E Scc Paved ce Sites c en temp str 5 is bogus non printable char le t NOY for in preine ren Peraire aE EEn prepare rest api data params per SAMI service API requirements Sami params sodes sa WES type message Ytcenperarc re temo vel by cleanup data long time val to create good json data Jami params json dumps sami params preine dryer Mi t str Jsami params ry print Yy ni7 preparing to send data to SAMI service req peser ud cca edi data jSami params headers headers print y Miss Sens successu ulis TIE except catch any excep
2. das ese gt ina Temos gt printla Hu ai O47 dou UO cie princla Uy Ln dex lt EEEo princa YyLsible 37 lt cie printa IR DE gt Hadex gt gt cie prinela DB 101 1056101 103 lt cie princ la Treme DS lt printen Pressure lt et gt Een Temos 29 gt CEC Orinela Pres Sure gt E prinecla Alti waden 246 246 lt CEL SETCCAALCULSOL Ty LL gt CEL Setna rCursor LL 248c248 lt CEC orint D gt G EE 2649264 lt gt upset som 266 266 lt CEC ova Moen ot DE gt crte 282c282 lt ipsc teer au gt bit Li 7 287c287 lt Git yoo enart unrsonor Oar gt Gabor iN S Update the sketch with this patch file Internet Office fa Programming Sound amp Video System Tools 4 Preferences Run Logout Nul DONNEES 2 ODROID MAGAZINE 33 File Edit Sketch Tools Help weather_board include lt SPI h gt include Wire h include include lt Adafruit_GF include lt ODROID_Si113 include lt ODROID_Si70x include Adafruit ILI include Adafruit include Adafruit Ser Editor font size 12 Preferences Sketchboo
3. Year Two Issue 2l Sep 2015 Magazine rectal companion ihan ORO Logical Discoveranew way Volume toplaytheniano NAS and Cloud Sos Basics with Arjuna What we stand We strive to symbolize the edge of technology future youth humanity and engineering Our philosophy is based on Developers And our efforts to keep close relationships with developers around the world For that you can always count on having the quality and sophistication that is the hallmark of our products Simple modem and distinctive you can have the best to accomplish everything you can dream of HARDKERNEL ZPolli We are now shipping the ODROID U3 device to EU countries Come and visit our online store to shop Address Max Pollin StraBe 1 yr wer eV ui acot d 168 pet eO Que N I 46 s Ve Une 8 9 A m qM juo some 9 M SPS oo of us pre ure 1 zo xe det Qu ve wan EDITORIAL he geniuses at Hardkernel have recently created an excit _ E ing new personal DIY cloud server kit called Cloudshell Intended for users who desire maximum privacy it can ODROID XU4 along with a hard drive and 3 2 LCD at can be accessed remotely using open source cloud software such as OwnCloud The ODROID CI gets an update with the jew
4. Data payload string Destination Device ID 3f1047dcd36c462699ca String Source Device ID 14 439950870694 integer August 2015 SUN MON TUE WED THU FRI SAT Type 1 2 3 4 6 T 8 9 10 11 12 13 14 15 7 amp Set Normalized Mes Timestamp past present or future Defaults to current time if not provided Get Normalized Me alytics aggregates Set Last Normalizec Get Normalized Messages Pye message string body Type CLEAR RESULTS Call https api samsungsami io v1 1 messages Request Headers f t Content Type application json Authorization Bearer 782416016 7 4104 17267188 7 Y J Request Body data Temperature 30 74 1 Js sdid 3f1047dcd36c462699ca960f8872af96 ts 1439950870694 type message X J Response Code 200 Response Headers k X rate limit limit 100 1000 x rate limit remaining 99 930 x rate limit reset 1439952136 1440028800 content type application json content length 51 Response Body Select body data mid 861d5d751a674795a3d1464db4effe83 J ODROID MAGAZINE 36 the Device ID obtained earlier and enter the integer value of milliseconds since Jan 1 1970 of current time for the ts field Click the TRY IT blue button You will be presented with the screen as shown in Figure 17 Note the response body reflecting the successful submis
5. I m a Digital Strat egist and Irans media Producer specializing in online optimization and inbound market ing strategies social media directing and media production for print web video and film Managing multiple accounts with agencies and filmmak ers from Analytics and Adwords to video editing and DVD authoring 1 own an ODROID U3 which I use to run a sandbox web server live in the California Bay Area and enjoy hiking camping and playing music Visit my web page at http www ni colecscott com Robert Cleere Editor I am a hardware and software designer cur rently living in Hunts Alabama While semi retired from a career in embed ville ded systems design including more than a decade working on the Space Shuttle program I remain active with hardware and software product design work as well as dabbling in audio video production and still artwork My pro gramming languages of choice are Java C and C and I have experience with a wide range of embedded Operating Systems Currently my primary proj ects are marine monitoring and control systems environmental monitoring and solar power I am currently working with several ARM Cortex class proces sors but my ODROID C1 is far and away the most powerful of the bunch 2 James LeFevour Art Editor I am a Digital Me dia Specialist who is also enjoying freelance work in social network marketing and website administration
6. define rst 8 const char version v1 3 uint8 t ledPin 5 uint mam CURE Binary sketch size 18 640 bytes of a 32 256 byte maximum Arduino Uno on fdewttyUSeo Figure 6 Sketch upload progress You should start observing the ODROID SHOW display ing the weather data You can also check to see if you can ac cess the output from the command line as shown in Figure 7 Figure 7 Raw output on dev ttyUSBO odroid c1 1 s a File Edit Tabs Help The output format is useful to write the Python application to submit the weather data to the SAMIIO website SAMIIO account and device setup Details of the SAMIIO platform can be found at the main SAMIIO web site Access the SAMIIO account setup website at http bit ly Ids2ONj You should see a page as shown in Figure 8 Since a user account has not been setup yet we cannot login yet Click on the Sign up here link and you should see the page as shown in Figure 9 lt hitps account samsung com account check do Samsung account an m NM hd 2 22 kh mJ 7 6 7 VEU A SC E KD amp httpx accountsamsung com account signUp do C samsung account Figure 9 SAMIIO account setup Enter information relevant to your account and click the Continue button Get back to the login screen as shown in Figure 8 enter the login info click the Sign In button You will be presented a page a
7. Ihe more I learn about ODROID capabilities the more excited I am to try new things I m learning about Being a transplant to San Diego from the Midwest I am still quite enamored with many aspects that I think most West Coast people take for granted I live with my lovely wife and our adorable pet rabbit the latter keeps my books and computer equipment in constant peril the former consoles me when said peril manifests Bruno Doiche Senior Art Editor Bruno managed to laugh at the possibility of having an electrical fire in the heat of editing this same magazine that you are reading due to a very old power cord What happened motely setting up his mothers Skype He was re account with the articles open and needed to recharge an iPhone 4 that was close to death then went straight with the charger to the outlet only to be zapped Some quick thinking was needed to see what could instantly be unplugged and get everything back to normal The only casualty was that the power cord melted down Manuel Adamuz Spanish Editor I am 31 years old and live in Seville Spain and was born in Granada I am married to a wonderful woman and have a child A few years ago 1 worked as a computer technician and programmer but my current job is related to quality management and information technology ISO 9001 ISO 27001 and ISO 20000 passionate about computer science I am especially microcomputers such as the O
8. L 10G dev mapper rootvg homelv This will give you an extra 10 giga bytes on the logical volume However we still have to increase the file system to match with the logical volume You can do that with Sek a iE dew Mapper e e E homelv resize2fs dev mapper rootvg homelv The first command will check for any inconsistencies on the file system and the second will resize it with new logical volume size After some time you also need a new file system in order to install an application However you realize that you gave all the space that you had left on the volume group to the homelv What now Just add a new partition to it 5 vgextend rootvg dev sda2 You can add as many partitions disks as you want to the volume group in or der to create a big pool of free space Af ter that just repeat the steps to create extent logical volumes and file systems as you wish Now you know how to make the ex perience of creating partitioning schemes a lot easier One thing to note is that you can do this with all of your file systems Just create a temporary mount point move all of your data there and then ad just etc fstab to the right devices It is important to note that you cant tamper with media boot since that is where the bootloader looks for the first files in order to send them to RAM and actu ally boot the system All of this happens long before the lvm services are initiated so it will make yo
9. ODROID SHOW weather board Places Q search lt Recently Used if arduino ta odroid Bl Desktop File System Documents dd Music C9 Pictures BB Videos Downloads X Cancel OOpen ODROID MAGAZINE 34 joel age add the proper libraries Select the Sketch Import Li brary Add Library menu options and point it to the zBU sami ODROID SHOW libraries folder as shown in Figure 4 Open the sketch using the File Open menu items as shown in Figure 5 The sketch code should appear in the window The jump er on the ODROID SHOW near the Reset button must be installed Also select the serial port using the Tools Se rial Port dev ttyUSBO menu items Upload the sketch by clicking the Right Arrow circular icon The upload progress will be visible as shown in Figure 6 weather board Arduino 1 1 0 5 dfsg2 2 LLLI X File Edit Sketch Tools Help weaths r board include 5FI h gt include Aire h include Timer ne h include lt Adatrult_GFX h gt include ODROID 511132 h gt include ODROID 17 include lt Adafruit_ILT9340 h gt include lt Adatruit_BMPG8S U h gt include lt Adafruit_Sensor h gt These are the pins used for the UNO Tor Due Mega Leonarda use the hardware SPI pins which are differ define _selk 13 define miso 12 define _mosi 11 define cs 10 define dc 8
10. Qt5 Desktop Services http bit ly 1fWjtxk Plasma 5 Desktop Environment http bit ly 1EAUtax Figure I8 Selecting the Blinky desktop environment using LightDM ODROID MAGAZINE 3 SAMIIO EASILY BUILD POWERFUL 1 0 APPLICATIONS by Venkat Bommakanti bout a year ago Samsung introduced a secure open cloud based data exchange platform called Samsung rchitecture Multimodal Interactions IO SAMIIO Using this platform one can develop applications and services utilizing simple open APIs and SDKs to send receive and visu ally examine data of diverse types These applications can writ ten using languages such as Python Ruby Javascript and PHP Through a real world example this article illustrates the simplicity of the SAMIIO platform by using an ODROID 1 and a Python application in order to publish weather data collected through an ODROID SHOW and an ODROID Weather Board Requirements e An ODROID CI Although this article utilizes a 1 the technique can apply to any ODROID device that is compatible with the ODROID SHOW and Weather Board e ODROID SHOW amp Weather Board e Cl accessories such as an HDMI cable CAT 5E eth ernet cable or WIFI 3 adapter Bluetooth adapter mod ule 2 BT 4 04 recommended PSU RTC battery and ODROID VU or 3 2 Touchscreen A 16GB eMMC 5 0 card with latest 1 specific Lubuntu desktop image and or an 16GB Class 10 Mi croSD with an SDCard reader writer A n
11. by Jochen Alt lamp is nearly useless in the daytime By itself it does not talk cannot dance and is boring This is where I A try to help with my new project called Luci Luci is an autonomous lamp with a webcam a high power LED in the lampshade and five servo motors She is controlled by an ODROID U3 Once switched on she looks around checking the environment for any sentient beings and then does what she wants Check out her video at http bit ly 1hLVtOt Miechanics The riskiest part of the projects is the mechanics so I started with that I bought a desk lamp measured the basic dimensions and tried to give it more childlike charac teristic by making the lampshade too big and the arms too short TurboCAD helped to model the lampshade and the hinges After having spent many hours in the basement and cutting the hinges out of multi layered birch wood it turned out that the friction between arm and joint was too high So I reconstructed it with ball bearings went back to the basement tried again and noticed that the springs needed different mounting points changed that went back into the darkness and breathed in the fine dust again Especially after adding the ball bearings I was glad to have used TurboCAD since this required four ROBOTIC COMPANION slices per hinge with very precise drill holes I did not want to repeat that dusty experience with the lampshade so 3D printing became very tempting
12. now available for purchase Iker sative projects computing modeled af a unique per using Arjuna erful 1 0 appli e also present meveric and a unique t J make sure to have fun with ODROID two offour favorite Androic High Performance Embedded Computers Touchscreen guda tores 2 computer for qj 64 ODROID C1 and 3 7 USB GPS MODULE ODROID CI 26 95 36 95 Touchscreen ODROID VU 9 lach 1280 x 800 display Capacitive multi touch screen p ODROID VU All Hard kernel producit in stock Cl 3 2 INCH TOUCHSCREEN DISPLAY at fimeriDroid com 119 95 ODROID Magazine Rob Roy A Chief Editor I m a computer programmer living and working in San Francisco CA design ing and building web applications for local clients on my network cluster of ODROIDs My primary languages are jQuery Angular JS and HTML5 CSSS3 I also develop pre built operating systems custom kernels and optimized applications for the ODROID platform based on Hardkernel s official releases for which I have won several Monthly Forum Awards I use my ODROIDs for a variety of purposes including media center web server applica tion development workstation and gaming console You can check out my 100GB collection of ODROID software prebuilt kernels and OS images at http bit ly lfsaXQs gt Nicole Scott Art Editor
13. the main loop takes the previous and next point PCB closeups 60Hz using a cubic B zier curve to smooth the movement The support points of the B zier curve are geometrically de rived from the trajectory s prevprev A and nextnext D point by the rule shown in the picture Since any polynomial with higher grade tends to oscillate when support points are too far away I kept them in a constant distance of 3 to B resp e Mass inertia The last step also computes the lampshades acceleration since the B zier curve does not take into account that in total 400 grams are moved As a consequence I limited the mass ac celeration by 1 2 g to prevent flapping caused by the elastic con struction and the backlash of the servo motors This is done by checking whether the next position can be reached without ac celerating above the limit If not the new position is computed by taking the current position and adding the maximum dis ODROID MAGAZINE 2 ROBOTIC COMPANION Voltage ia ak Regulator USB 5X Servo Power LED a J Image 59e Face Trajectory 60Hz 400Hz Grabber gt eom Recognition Planning PWM PWM PWM generator trajecto 5x servo angle Bezier shade nemen inematics ax LED tensor ODROID U3 Almega328 DENEN eatan2 A point z A point x s of the current speed and maximum accelera along the
14. 4 04 LTS AN OPTIMIZED SERVER ENVIRONMENT FOR YOUR ODROID by Tobias Schaaf built desktop image intended for entertainment called ODROID GameStation Turbo In addition to this image I also offer a dedicated server image based on Ubuntu 14 04 I known on the ODROID forums for producing a pre LIS In this article I want to go into detail about this server image and what you can expect from it Downloading Like all of my images the server image is available on my webspace hosted by Mauro from Hardkernel mdrjr at http bit ly 1N43pXs Where you can download the image that matches your system I currently offer images for the ODROID X X2 U2 U3 XU3 XU4 and the C1 C1 Overview The image is small and clean offering a very small server environment with no desktop It is designed to be a pure server environment I included my repository on each im age but only for automated kernel updates via apt get com mands Besides that it offers a script collection that allows you to easily install and configure server components which is detailed later in this article Differences from official image My image was originally created from a Linaro server im age therefore the standard login and password is linaro in stead of odroid but since it s very common to rename the default user on a server system and set a new password for that user this shouldn t be an issue Besides that I wanted to increase the security of
15. Get Current MIIO LIST METHODS EXPAND METHODS Get the current user s profile Parameter Value Call Location Description https api samsungsami io Request Headers ication json Bearer 782416016a7a4104a17267188dae6a7c aders Origin X Requested With Content Type Accept Referer allow methods POST GET PUT DELETE OPTIONS limit limit 100 1000 ning 99 999 te limit reset 1139951551 1440028800 rseteut ODROID MAGAZINE 35 the Users set of API click the Get Current User Profile link You will be presented with a temporary page with the TRY IT blue button Click it and it will produce output as shown in Figure 15 The bearer id for authentication purposes is useful in submitting the weather data through an application Next traverse the page to the Messages section Enter some sample temperature data in json format as shown in Figure 16 Use Figure 16 Messages API input LIST METHODS EXPAND METHODS Send Message Action Send a Message or an Action The following combinations are supported Combination Parameters Description Send Message sdid type message Send a message from a Source Device Send Action ddid type action Send an action to a Destination Device Common data ts Parameters that can be used with the above combinations Parameter Value Type Location Description data string body Temperature 30 74
16. Ihe RTC IR receiver and ADC features on the ODROID C1 also offer many options for building great DIY projects Specifications Amlogic Cortex A5 ARMv7 1 5Ghz quad core CPUs Mali 450 2 GPU OpenGL ES 2 0 1 1 enabled for Linux and Android IGB DDR3 SDRAM Gigabit Ethernet 40pin GPIOs 7pin 125 eMMC4 5 HS200 Flash Storage slot UHS I SDR50 microSD Card slot USB 2 0 Host x 4 USB OTG x power data capable Infrared IR Receiver Ubuntu or Android OS Improvements over the CI Standard Type A HDMI connector Includes heat sink 125 bus to support HiFi audio add on boards CEC function that doesn t require the RTC backup battery A power path from USB OTG port as well as DC barrel connector Improved SD card compatibility Because of the above changes the original C1 case and heatsink are not com patible To download software for the 1 please visit the wiki at http bit 1y 1KRKoGV and the user manual may be downloaded from nttp 900 91 iwGYocz The 1 is available for purchase for USD 37 at ntcp bic 1y 1upx5yr __ o 500 0 0000 00000000007 Demonstration videos Hardware introduction Tinkering kit intecis https youtu be zocRALONY 60 Performance overview LCD shield https youtu be L2ZRW AagSQ brtos youtm be tb DI bz OpenGL ES2 0 with myAHRS on Ubuntu Tekken 6 PSP emulation https youtu be L2ZRW AagSQ https youtu be p8yGS2SHqpA UBUNTU SERVER
17. LED Wire your LED then run the application The program should then flash the LED when clicking in the center The next step is making the Blinky ap plication our startup X11 application which definitely is an overly simple task for an ODROID but is fun for demonstra tion purposes Figure I Blinky ODROID wiring diagram Blinky Odroid Wiring Gouno Just Ground to Cathode and GPIO200 to Anode A Figure 12 Blinky ODROID wiring example Create a desktop configuration There are many ways to configure X11 to startup with just a single application Technically we should set the default Desktop Environment to be Blinky instead of Lubuntu and remove the other option to ensure the user boots only into Blinky However creating the desktop configuration file al lows us to switch back and forth between testing our appli cation and the development environment Create a blinky desktop Xsession configuration file in the usr share xsessions directory as shown in Figure 13 The next step is to compile the blinky ODROID application and place it into usr bin However if we run blinky ODROID in its current form we cannot logout which happens on the program exit Before testing the Blinky desktop environment we should make some changes Figure 13 Example blink desktop Xsession configuration file Adding features First we need to add some code to make our blinky dem onstration work au
18. Temperature chart on SAMIIO website Figure 19 Temperature log on SAMIIO website Reset RS ODROID FORUMS THE PERFECT PLACE TO COMMUNICATE WITH HARDKERNEL DEVELOPERS by Rob Roy Hardkernel community for several years with over 12 500 members as of September 2015 You can discuss ODROIDs with Mauro the lead Linux kernel developer and Justin the CEO of Hardkernel along with a growing team of T ODROID forums have been the central meeting place for the growing developers who donate their time to helping you get the most out of your ODROID Check it out at http forum odroid com opr ie ODROID Forum Hardkernel ODROID Hardkernel c Board index HARDKERNEL TQ News Moderators odroid mdrjr ODROID Magazine Moderators odroid mdrjr robroy How To s and Guides This forum is only for how to s and guides Subforums Android Dbuntu All Linux es Games and Emulators General Moderators odroid mdrjr General Chat Moderators odroid mdrjr The Ideas Share here your ideas for new projects Moderators odroid mdrjr Introduce Yourself 9 Moderators odroid mdrjr ODROID C1 General Chat er Moderators odroid mdrjr ODROID MAGAZINE 39 MEET AN ODROIDIAN MEET AN ODROIDIAN ULI MIDDLEBERG LINUX WIZARD AND DOCKER SPECIALIST edited by Rob Roy Please tell us a little about yourself Pm living in Hamburg
19. The code for the SPI and GPIO I O was written to use the WiringPi library Arjuna Hand Module The Hand Module is a collection of five 3D printed rings one for each fin ger with two vibration motors on each ring The vibration motors are placed on both the left and right side of each ring This is used for guiding the student to Figure ODROID CI in a clear case Figure 2 ODROID CI with keypad the position of the key that should be pressed We used the smallest vibration motors that we could find in order to minimize any discomfort to the student while playing with this device The vibration motors are controlled by a microcontroller We choose to use the Arduino Pro Micro because of its small size and for the number of librar ies available to simplify software devel opment Another transceiver module is used to connect the hand modules with the ODROID C1 MPU wirelessly All components of the Hand Module are powered by a single cell LiPo bat tery boosted with a 5V step up voltage regulator We use a 180 mAh battery which is small enough to fit in the small Case yet has enough capacity to supply the hand module for a reasonably usable time All components except for the rings are packaged in a 3D printed case strap is attached to the case so that stu dents can use the hand module on their wrist just like a watch Arjuna uses two hand modules one for each hand How Arjuna Works Arjuna communica
20. and I wanted to try it out anyway I cant report too much on that since I just gave the CAD model to a 3D printer shop The biggest challenge of that step was to withstand their desperate at tempts to sell me a printer Hardware I started with a BeagleBoard but it became clear soon that it is too slow for facial recognition So I ordered an ODROID U3 Unfortunately it does not provide five PWM outputs for the servos so I needed a separate uC to produce the PWM signal for the servos and the High Power LED In ad dition the ODROID is sensitive to voltage flaws so after having connected the servos to a separate board with its own power supply sudden resets of the ODROID did not occur anymore The CAD diagram of Luci ODROID with the self made Arduino shield was supposed to be placed in the base housing of the lamp but in the end I did not place it there since I was wary of having a hot ODROID under full load within a wooden box full of splints Hinge closeups ODROID MAGAZINE 20 ROBOTIC COMPANION Software The program runs under Ubuntu using C with mul tiple threads in order to leverage most of the four cores The first thread grabs the image from the webcam a second thread takes these images and tries to find all faces currently looking at Luci The result is a list of faces and Luci focuses on the biggest one A third thread runs the trajectory planning algorithm which produces a
21. current speed vector In the end m aves the B zier curve where it is too sharp Pro The angles at E and D are computed by considering the lo this on the basis of fully modelled inertia but methematics tired me out so I did not try that triangle EDC and computing its angles with the cosine law 990 acos distance E D 2 eee meee 2 distance D C 2xdistance E D distance E C The angle at D is computed in the same manner s textbook robotics it works as follows 5 starts with the point orientation tensor nudes 5 distance E D 2 ERE 0549 72 distance E C P Eget D x dist DC ive to the position of A C point A point Meee Stance D C orientation of the head A rotation and UM The ast servo is C which angle is the orientation of the head around the z axis minus the angle of CD to the horizon Acceleration limit diagram curve after limiting acceleration to 9 A Amirrored at B B angle bisector of BA and BC with length BC 3 Original bezier curve ROBOTIC COMPANION Reverse Kinematics Getting servo angles from point A C angle acos C point y E point y T MM These angles are passed via I2C to the Almega where the Arduino library generates 60Hz PWM signal for the servos In the beginning I was concerned about the high CPU use of 3D kinematics and tried t
22. project directory Once in the directory run the following commands qmake config release blinky ODROID pro make j4 It should build without any issues If you encounter errors download the source from http bit ly IKsPX0z After you Figure 16 Building the Blinky ODROID binary oo d di EB 65 eH Ty ver D 41 zl m odroideodroi odroid odroid gt gt LD UY OP aD OP ED EDIT ON Figure I7 Copying the Blink ODROID binary to usr bin build it install it by copying the executable to the usr bin directory Se sudo cp billinky OUR tse tammy binky ODROND Testing Blinky Testing is very easy after creating the xsession configuration file First log out of the Lubuntu session with the normal log out button You should be back at the LightDM screen wait ing to login At the top right click the icon in order to open the Desktop Environment list and choose Blinky Then log in with the normal ODROID ODROID credentials If all went well you should see the blinky ODROID example ap pear on the screen This was a very simple project but you can use it to build very complex desktop environments The largest drawback is the lack of a WiFi manager and other convenient settings dialogs Further reading If you want to learn more about Qt5 or building desktop environments here are some links Desktop Environments http bit ly I MyywH5 Embedded Linux http bit ly 1 LMrksN
23. qemu nbd sudo qemu nbd r c dev nbd0 path to chromeos 6946 86 0 daisy skate recovery stable channel skate mp bin sudo mount o ro dev nbd0p3 mnt an empty folder 5 Copy the libwidevine files into the Chromium library directory NETFLIX ON LINUX 2 a MADEMOISELLE 24 LM sudo cp mnt an empty folder opt google chrome libwidevine usr lib chromium 6 Launch chromium with the following parameters from a Terminal window chromium use gl egl user agent Mozilla 5 0 X11 CrOS armv71 6946 86 0 AppleWebKit 537 36 KHTML like Gecko Chrome 43 0 2357 134 You should now be able to visit the Netflix site and play any movie or TV show of your choice Notes If youd also like to install the Pepper Flash player for Chromium copy the package from the mounted recovery image sudo cp opt google chrome pepper libpepflashplayer so usr lib chromium Then add the following parameters to the Chromium command line shown above ppapi flash path path to libpepflashplayer so ppapi flash ver sion 18 0 0 209 It is normal for Netflix to report a Netflix Site Error at first Since the ODROID C1 is slower than a regular computer it takes a bit longer to load the page Also there is no video acceleration for chromium on the ODROID CI so the video stutters slightly and plays best at 720p resolution For questions com ments or suggestions pleas
24. screen Cannot view multiple applications at the same time and cannot easily switch between them No support for desktop style word processing email etc with keyboard and mouse input Linux desktop distributions such as Debian have very good support for legacy desktop style applications such as LibreOffice the Firefox browser and the Thunderbird email client These applications also work very well with keyboard and mouse input A unified Android and Debian distribution would be a good solution for some classes of devices or users A large screen tablet with detachable keyboard such as the Asus Transformer For this class of devices Windows 10 Is too expensive and Android is too limited A solid state cloud PC with attached keyboard and mouse In underdeveloped economies consumers may not have access to multiple computing platforms A single device should meet all their computing needs Android by itself can not fulfill this need implementation Overview Android and Debian desktop share the same kernel so despite the fact that the user space libraries are different both applications can run simultaneously The biggest difficulty in integrating the two systems is with the graphics technology Android uses SurfaceFlinger and Debian uses X Windows for drawing graphics Unified Android and Debian with VNC A common approach to running Debian on Android is to send X11 graphics to a VNC viewer running on and
25. the physical volume we just created vgcreate rootvg dev sdal By now you can see the volume group created Just type Sv sip exime enm or vgdisplay attributes Now we have to create logical vol umes so that we can use the space S dJwesaxesre b IG nr homed vy This will create a new logical vol ume with 10 gigabytes named homelv Note that this will create a new device under dev label dm 0 which will in ternally point to the actual physical disk dev sda dev mapper rootvg homelv to the dev It also creates a link under dm 0 so that you wont have to remem ber numbers in the future To check the status of the logical partitions type Set ayes gt lvdisplay attributes From now on you can proceed just like any other method Create a new filesystem and mount it in order to start saving data to it Remember to use the device created previously mkfs t ext4 dev mapper root vg homelv mount dev mapper rootvg homelv home Now you have your disk up and run ning with LVM But you will only see the difference from LVM to normal par tition when you need to change it After having been set up LVM for some time and having a lot of users log ging and saving their files under home directory it will eventually get full un less you increase it How First un mount your file system S umount home Increase the logical volume first S lvextend
26. 77B for turning base amp nicking the head 7954SH lower strut strong amp expensive 7775MG upper strut also expensive 5065MG turn head inside the lampshade 3D print of a TurboCAD model made of ABS Springs from my local dealer 20 ball bearings 0 5m2 multi layered birch and several brass axis Source code on http bit ly fiqg9amT Other projects Two years ago I was bored by using Excel too much at the office since I m a professional software architect so I started learning electronics and embedded technology and made my first robot which can be viewed at http bit Tly 1VHg7OX His name is Paul and it balances on a ball ODROID MAGAZINE 23 ARJUNA AN ODROID BASED PIANO TEACHING DEVICE by Ilham Imaduddin any people would love to learn how to play the piano but be coming proficient on this 88 key instrument is quite difficult Many people have a problem with recognizing and understanding the scale of a note relative to the keys position Another problem occurs when the player at tempts to balance the fingers of the right and the left hand while playing different notes In view of these common learn ing problems we had an idea to create a device that would help piano students with learning some of the basic skills of piano playing in a simple fashion In this article we are introducing Ar juna a device that will assist the student by guiding each finger of both hands to the corre
27. Arjuna Every source such as schematics 3D files and codes are stored here ODROID MAGAZINE 25 LOGICAL VOLUME MANAGEMENT BASICS WORK DIFFERENTLY WITH YOUR DISK SPACE FROM NOW ON by David Gabriel ou can never have enough stor age We always dream of getting Y hard drive or like that time when you a bigger storage unit such as a were counting your pennies and decided to get a smaller eMMC for your first ODROID only to find out that what you want now is space much more space I m talking to you XBMC users At the most basic level when you needed a bigger volume than your previ ous one you could insert a new and larg er disk on your machine format it copy your data to it and just be happy which is simple as we have been taught from the beginning It is what you do regu larly as we are nothing less than fond of having in most cases a 1T B USB drive plugged into our ODROIDs However if you stop to think about it you just committed an entire terabyte of data for a single purpose Worry no more I am here to teach you can do a lot more with your drive From now on you wont need to use all of your space on a single file system or keep trying to guess the best partition scheme or worse reformat the disk change the par tition scheme and reinstall everything just because you bought a new disk First of all backup your files I know this may sound obvious but most of us dont do a regular bac
28. DROID and Raspberry Pi I love experimenting with these computers My wife says I m crazy because I just think of ODROIDs My other great hobby is mountain biking and I oc casionally participate in semi profes sional competitions XU4 CLOUDSHELL 6 NETFLIX ON LINUX 8 ODROID CI 10 OS SPOTLIGHT UBUNTU SERVER 12 OS SPOTLIGHT ANDROID DEBIAN 14 ANDROID GAMING PLAGUE INC 16 XUA CLUSTER I7 ANDROID GAMING PIXELS 18 ROBOTIC COMPANION 19 ARJUNA 24 SAMIO 32 ODROID Forum Hardkernel ODROID ardkernel index FORUMS 39 KERNEL D Magazine Tte 2 E MEET AN ODROIDIAN 40 XU4 CLOUDSHELL CLOUDSHELL FOR ODROID XU4 A DIY PERSONAL CLOUD SERVER KIT by Justin Lee DIY Network Attached Storage NAS Solution for cre ating your own personal cloud It includes a color LCD console display on the front a USB3 0 to SATA bridge Gen esis GL3321G and has room for a 2 5inch HDD SSD along with the XU4 board mounted inside Its a great way to have T Cloudshell for the ODROID XU4 is an affordable an XU4 with lots of storage inside a portable compact case Specifications Dimensions 47mm x 25mm x 21 mm assembled Weight approximately 248g Color Smoky Blue and Smoky White Circuit board includes IR receiver 2 2 320 x 240 TFT LCD SATA Connector USB3 0 Connector 30 pin 1 0 Connector Hard drive bay 12 I4mm 15mm is
29. Germany to gether with my wife and my two children I m 45 and working for a German newspa per publisher How did you get started with computers My first computer was an Atari ST 1040 where I learned programming Pas cal MODULA 2 C M86k Assembler I was lucky to work with an Acron Archime des 3000 which was light years ahead of everything else that I had access to at that time At university I was really happy to find a bunch of brand new NeXT Cubes and NeXT Stations that the computer sci ence department has bought recently What attracted you to the ODROID platform he ODROID CI wasn t the first ARM device I ve tried When compared to the Raspberry Pi it gives much better perfor mance Compared to the imx6 based de vices youll experience a vivid user com munity and a very responsive support The Hardkernel developers are open minded to contributions coming from the community which makes it easy to integrate custom projects like Docker into the main stream kernel And I m curious to see what ODROID de vice will be announced next How do you use your ODROIDs Currently I have a C1 only I m using it for develop ing and for things like home automation using openHAB I want to use it as a private syncing device together with OwnCloud in the future but first I need to enable crypto dev support for offloading TLS AES I m about to buy a C1 and the audio board as a replacement for my CD player as we
30. M any given instance only Debian or Android occupies the whole screen and switching is instantaneous Applications are unaware of which desktop is currently being displayed on the screen Provide a simple API for switching between the Android and Debian desktop Application performance with a unified distribution will be similar to what is expected when they run under their respective environments However since many more applications will be running after boot up it will be neces sary to provide sufficient system memory Performance of the unified distribution on the ODROID CI This unified distribution nttps www youtube com watch v USNISy17 YU has been ported to the ODROID C1 board and a download link is available on the ODROID C1 general forum We have ported the XFCE desktop that is available on Jessie We used gtkperf to measure graphics performance on both Ubuntu and our unified distribution On Ubuntu gtkperf took about 43 seconds to com plete versus 12 62 second on our unified distribution a 3X speedup The Debian Ixtask application reports 566MB of free memory at a display resolution of 720P and about 500 of free memory at 1080P So there is a slight increase in memory usage If necessary the user can exit completely from the Debian XFCE desktop XU4 CLUSTER A THOROUGH LOOK AT SEVERAL AVAILABLE OPTIONS FOR HIGH PERFORMANCE COMPUTING by Alan Mikhak evaluated a set of ODROID XU4 XU3 d
31. The only missing requirement was OpenCL The Jetson TK1 doesn t support OpenCL even though the Nvidia Tegra K1 SoC does To evaluate both CUDA and OpenCL on an MPI cluster I would need to get into custom boards based on the Tegra K1 SoC Alternatively I could bring up a second cluster for evaluat ing OpenCL with MPI and leave the evaluation of CUDA and MPI to the Jetson TK1 cluster Right about that time I saw the news announcing the ODROID XU4 at about half the price of the ODROID XU3 Jetson TK1 and Arndale Octa That s how I ended up with a five node cluster of four ODROID XU4s and one ODROID XU3 which is working well so far Final setup Bringing up the cluster of four ODROID XU4 boards was fair ly straight forward I ordered the boards from www ameriDroid com and some aluminum standoffs from www pololu com Both vendors delivered the components extremely fast and everything worked right out of the box I didnt have to return any boards at all which was a relief and a timesaver I stacked the boards with 1 25 4 40 thread M F standoffs using 0 25 standoffs for the bot tom of stack and fastening the stack with 5 16 screws The XU4 boards share two ASUS VX238H HDMI moni tors and two pairs of USB keyboards and mice alongside one ODROID XU3 and a cluster of Nvidia Jetson TK1 boards through two Bytecc 4 port USB HDMI KVM switches which came with USB HDMI cables and convenient infrared remote controls I purchased a powered
32. USB hub in order to supply power to one of the keyboards a Corsair K70 gaming keyboard with lights without which my Microsoft mouse wouldnt work when connected to XU4 USB 2 0 port through a USB switch I initially tried using Bytecc 5 Port HDMI switches for sharing the monitors while using separate USB switches for the mice and keyboards The caveat was that neither ASUS VX238H nor Samsung SyncMaster BX2431 HDMI monitors were detected correctly So I ditched that switching scheme in favor of using Bytecc 4 port USB HDMI KVM switches I flashed the Ubuntu 15 04 image for XU3 XU4 boards onto four 16GB Patriot microSD UHS 1 cards which I inserted into microSD slot on XU4 boards With the boot mode switch set to boot from microSD three boards came up to Ubuntu MATE desktop The fourth board also booted properly after I replaced its Patriot microSD card with a fifth card I confirmed that all 8 cores were in use by Ubuntu in HMP mode Fans often turn on and off randomly generating some noise during operation After shutting down Ubuntu and turning the A C power off the red LED stays on although unplugging the HDMI cable turns the red LED off The cluster is connected through a NETGEAR GS 116 16 port Gigabit Ethernet switch I used a simple MPI program with MPICH to verify operation of XU4 and XU3 as a cluster Everything is working well so far ROBOTIC COMPANION LUCI MY LAMP A SUPERCOOL ROBOTIC COMPANION POWERED BY AN ODROID U3
33. al days or weeks Therefore you should either deactivate or remove this service or create a cron job that restarts the service once a day It s good practice to add an SSH certificate for the user root for any computer that is allowed to connect directly as root rather than adding a password for root That way even if the system is hosting services on the Internet no one can access the server as root with a password but ths server can still be managed from your local network from a dedicated computer ODROID MAGAZINE I3 0 SPOTLIGHT UNIFIED ANDROID AND DEBIAN DISTRIBUTION THE BEST OF BOTH WORLDS by Vasant Kanchan Ithough the Linux kernel has been extremely success ful we are still waiting for a large scale deployment A of the Linux desktop Most of the current desktop deployments are on the x86 platform and projects such as WINE try to provide a glue layer that allows us to run Win dows applications on an x86 Linux desktop Using Debian on the x86 can reduce the software licensing cost but a move to an ARM based Linux PC can also reduce the hardware cost as there many semiconductor manufacturers selling cheap and reasonably powerful ARM SOC s Debian desktop soft ware running on an ARM based PC could provide a low cost computing solution for the underdeveloped world In fact many countries use Android tablets in their colleges as a part of their e learning program Android has become extremely succe
34. and slow are Figure 2 X Windows Both the client and server have to buffer and format com mands and responses as per the X Window protocol Synchronous and round trip requests are inefficient Frequent context switching between applications and the X server degrade performance Graphics rendering can only start after the X server starts running There are efforts within the open source community to move to new display server technologies such as Wayland and MIR MicroXwin Graphics MicroXwin implements graphics processing in the kernel as a load module and provides a character driver interface to the associated X11 library Figure 3 MicroXWin The advantages of this design are Low latency and round trip Minimal buffering of requests and responses No context switch overhead ODROID MAGAZINE 9 ANDROID GAMING NEED SOMETHING TO DO WHILE YOU RE SICK EXTERMINATE MANKIND WHILE YOU RECOVER WITH PLAGUE INC by Bruno Doiche he worst thing about catching a cold or flu is when you graduate from well a couple of days rest enjoy the free time to Netflix binged Internet fully browsed Odroid forum totally read now what So if you have ever wondered what would if be like if you are patient zero of a plague that is bound to end all humans Now you can do your best to be the worst thing ever to happen to human civilization since the black plague in 1348 h
35. ct note in the key which is be ing played Arjuna Components Arjuna consists of two primary com ponents the MPU MIDI Processing Unit and the Hand Module Here are the components for both parts MIDI Processing Unit ODROID CI nRF24LOI Transceiver Module Keypad Hand Module Arduino Pro Micro 24101 Transceiver Module Small Vibration Motors 1 Cell LiPo Battery 5V Step up Regulator 3D Printed Ring 3D Printed Case ODROID MAGAZINE 24 Students can use this device with ei ther a traditional piano or a digital piano Arjuna Function The function of Arjuna is straight forward the MPU receives data from the instrument processes that data and issues a command to the Hand Modules to guide the student The MPU and MIDI keyboard are connected to either the keyboard s USB cable or to the key board s MIDI port by using a MIDI to USB Converter Therefore all keyboards and digital pianos with a USB MIDI or a standard MIDI port are compatible with this device For the MPU we choose the ODROID CI of its flex ibility power and ease of use A trans because ceiver module based on the Nordic nRF24L01 IC is used to wirelessly connect the MPU to the Hand Mod ules Ihe transceiver is connected to the ODROID CI through the SPI inter face MPU control is performed by us ing a keypad which is interfaced to the ODROID CI through its General Pur pose Input Output GPIO
36. detected face position is not valid any more when the Kinematics module is sending a posi tion to the servos a couple of seconds afterwards The solution is to permanently compute the current 3D position and send that to the Kinematics module in order to change the head orientation towards the face in real time Conclusions Similar to my experience with my work at my job everything just took longer than expected Surprising ly the software and hardware worked out quickly but getting the construction and the mechanics in a shape that worked without being too heavy with properly mounted servos and springs took me a couple of week ends in the basement The mathematics were definitely challenging Getting facial recognition done was the simplest part but gets the most ahhs and ohhs The guys from OpenCV did a pretty good job at making this really easy The most fun part was the trajectory planning such as how Luci should move when the webcam recognizes a face moving I have been thinking of enhancing Luci with a microphone and a beat detection module allowing her doing cool moves according to the music My first thought was that it wouldnt be difficult but rhythm detection seems to be extremely tricky Parts List ODROID U3 running Ubuntu 14 04 02 with the latest g compiler Software uses OpenCV 3 0 and Boost 1 57 as base libraries ATmega 328 running C firmware based on Arduino Li brary for Servos and I2C Servos from Hitec
37. e visit the original thread at nccp bit 1y 1EGriQn he ODROID C1 is esteemed to be the most powerful low cost single board com T ly versatile device Featuring a quad core Amlogic processor advanced Mali GPU and Gigabit Ethernet puter available as well as being an extreme it can function as a home theater set top box a general purpose computer for web browsing gaming and social izing a compact tool for college or office work a prototyping device for hardware tinkering a controller for home automation a workstation for software development and much more Some of the modern operating systems that run on the ODROID CI1 are Ubuntu Android Fedora ARCHLinux Debian and OpenELEC with thou sands of free open source software packages available Ihe ODROID C1 is an ARM device which is the most widely used architecture for mobile devices and embedded 32 bit computing The ARM processor s small size reduced complexity and low power consumption makes it very suitable for miniaturized devices such as wearables and embedded controllers Next generation At Hardkernel we had received many requests for the following model of ODROID W So we started a survey for components for ODROID W2 Find ing the right CPU was the key part of the project Our target was a similar cost and performance as the ODROID W The Amlogic 5805 1 5Ghz quad core pro cessor outperforms the Broadcom BCM2835 We launched the ODROID C1 i
38. ecting Menu Programming QtCreator After QtCreator launches choose File gt New File or Project from the action ODROID MAGAZINE 28 Figure 4 Choosing the Desktop kit Figure 5 Changing the text element to Blinky for ODROID bar then choose Qt Quick Application Next give the project a name and choose the directory and configure the Qt5 project using the Desktop kit Continue through the dialogs until the project is created Then under the projects dock on the left navigate and open Resources gt qml qrc gt gt main qml After opening the file change the text inside the Text element to from Hello World to Blinky For ODROID Then build and run the project by pressing Ctrl R After clicking the application to close it open a terminal and navigate to the projects directory At the top of the project directory run the following command in order to clone the QGPIO class girt clone sapis com ADSIT EST CTIOIR ORA CT UMS Figure 6 Cloning the QGPIO project Go back to the QtCreator application and right click blinky ODROID in the project dock select Add Existing Directory from the context menu then choose the directo ries as shown in Figure 7 After adding the directory from the projects dock navigate and open Sources gt main cpp Alter it to look like Figure 8 Note that this step is related t
39. equests SAMI service amp device info Selita wie joi Seu sungsami io vl 1 messages bearer device token use your bearer token here bearer Bear er 75bced8ele456095673d Valar f Sdid devrce rid source id use your device token here scle usEI0Zyded5ec 345678760f8872af96 weather board ttyport check on yourse eu eoar e e headers headers Content type 11 Jeune vane yo qz ed c nos bearer NE ellose ok True We ll be reading only 8 chars ORE GEE VM The data char pattern will be Something like wnabcdefg where wn could range from WO TO sand abcdefg could be a string equivalent of any number between 00000 00 and 99999 997 and any integer in between it 1 char length A CHAR 1 TOR o clear l0 char bukter Gl p wor xxu xov NO 70 place holders EMPTY SIR temo val EMPTY STR presist EMETA altior EMIT OER time yell ec TEYS iter 0 setup serial port M cron Ice Ioas calet oo Spe timeout 1 print nOs TTY porrs gt 4 ser name ser close while True tE Clo e o s open device to read weather data SVs Ston Open weather board TEDO Yer Close Ok False Plime Vol opened warn
40. etwork where the device has access to the internet and the ODROID forums e Networked access to the 1 via utilities like Pu T TY FileZilla TightVNC Viewer MS Windows 7 terminal Mac linux etc from a testing desktop System setup The setup is shown in Figure 1 ODROID MAGAZINE 32 Figure I setup for SAMIIO Install Lubuntu Install latest C1 image on to the eMMC card Attach the eMMC card to the 1 With the VU display attached boot up the system Run the ODROID Utility program and set the display resolution to say 800p Reboot then expand the installation partition to use the entire eMMC by selecting the Resize your root partition option Reboot and re run the ODROID Utility again configuring and updating all remain ing relevant aspects of the system rebooting afterward Ensure you are always logged in as the default odroid user unless otherwise specified For the most recent images you would have to run the following commands in order to update the system S sudo apt get autoremove amp amp sudo apt get update sudo apt get dist upgrade ss sudo apt get upgrade sudo apt gert install md image c1 The last command is to fetch the lat est Cl kernel just in case it was held back Shutdown the device then at tach all the accessories and cables to the C1 including the SHOW and Weather Board accessories Reboot Check the USB port associated with the ODROID Show
41. evices as an cluster platform for parallel computing with OpenCL and MPI using Heterogeneous Multi Processing HMP Linux As a software consultant the purpose of this evaluation was to add more tools to my toolbox so that I can offer better service to my clients Project goals I started with a few requirements in mind I was look ing for a platform based on ARM Cortex A9 CPU cores at a minimum paired with a GPU which could run Ubuntu Unity desktop with hardware accelerated graphics supporting OpenGL OpenCL and CUDA with floating point and vector math hardware I just didnt want to run the cluster nodes in headless mode Having a popular desktop on each node was and still is on my wish list A WiFi interface would also be a bonus so that I can evaluate wireless clusters Evaluations At first I considered platforms based on the Freescale i MX6 Quad processor which has four Cortex A9 cores I evaluated the Wandboard Quad board which pairs a Vivante GC2000 GPU with the CPU It also includes a Broadcom BCM4329 WiFi interface I had used a Wandboard Duo a few years before with an earlier version of Ubuntu desktop running on it Howev er no matter what I tried I just couldnt get Ubuntu 14 04 Unity desktop to run on the Wandboard Quad and detect my Samsung SyncMaster BX2431 HDMI monitor at the time that I tried To run Ubuntu 14 04 Unity desktop smoothly I would need a platform that supported the full desktop OpenGL not
42. ing timeout could hang wait 10 secs for LLT time sleep 5 first get welcome lines stdin readline jesse c MEL Wd dative ec ei now start read ing data daca oS e iter iter 1 wo Char yS otdin weve Ve TOTAR print yangg wo char maan clear buffer that will hold weather board data wb phrase cl parase read all chars for a given piece of data Po decimal 27 is delimeter Lek 0 while Ore Eea M e wb hona acia A TCHAR Vins F TE wh ewe wear KA idx 1 Li Gae break null ter minate LE hie gt One wh phirase gt 0 pring 9 Na alor nie typically data arrives in order 7 wO wl and then w2 print os qned Qus 1 ia skip the lst char im acs a ars just a ODROID MAGAZINE 37 code for data type temp press adita if wb phrase 0 0 found start of weatherboard data VS for temperature N T pica peine mg Coll data Coll r 1 EIE TN phrase 0 1 found pressure data NN Sr phrase 1 D E Siete ar ia Coll data Coll r 1 eUre V fior phrase 0 2 alrcicude dara N T altice
43. just OpenGLES I also needed hardware acceleration for X Windows I started considering platforms based on Samsung Exynos 5 Octa which has four Cortex A15 and four Cortex A7 CPU cores as well as an integrated ARM Mali T628MP6 GPU I purchased a Samsung Chromebook II which ran ChromeOS with graphics acceleration The Chromebook has a built in monitor keyboard track pad and WiFi This seemed to be an advantage in my case considering the cost of the USB HDMI KVM switches and HDMI monitors Each Chromebook II AXUA cluster being managed by an XU3 console node would be self sufficient I put the Chromebook II in developer mode and installed Ubuntu 14 04 but again couldnt get Unity desktop to run on it at that time I then evaluated an Arndale Octa board which is also based on the Exynos 5 Octa Arndale Octa seemed promising be cause www linaro org listed recent support for it Again no matter what I tried I still couldnt get Ubuntu 14 04 Unity desktop to come up on the Arndale Octa board and detect my Samsung HDMI monitor I moved on to evaluating the ODROID XU3 which is also based on the Exynos 5 Octa The Hardkernel website showed that the Ubuntu MATE desktop was already running with smooth ac celeration HMP support was also on the horizon in Ubuntu Linux kernel The ODROID XU3 was the best match so far because it actually booted into an Ubuntu graphical desktop with my Sam sung HDMI monitor However I decided to keep looking for a p
44. k location home odroid zBU sarni ODROID SHOW Browse Editor language System Default v requires restart oF Arduino requires restart of Arduino These are the pins for Due Mega Leonan define sclk 13 define miso 12 define _mosi 11 define cs 10 define dc 9 define rst 8 Show verbose output during compilation upload Verify code after upload _ Use external editor Check For updates on startup const char versionl 4 5 Update sketch files to new extension on save pde ino uint8 t ledPin 5 t eferences can be edited directly in the file odroid arduino preferences txt el 0 15 running A Gulno IS NOL home Arduino Uno on devitty I SBO Figure 3 Arduino preferences using the command then launch the Arduino IDE as shown in Figure 2 Select the Preferences menu item under the File menu and select the ODROID SHOW folder as the sketch folder as shown in Figure 3 Figure 4 Arduino libraries location Select zip file or a folder containing the library you d like to add New Folder Rename File home odroid zBU sami ODROID SHOW libraries v ETA Files Adafruit_BMP085_Unified Adafruit_GFX Adafruit_ILi9340 Adafruit_Sensor ODROID Si1132 ODROID_Si70xx Timert Selection home odroid zBU sami ODROID SHOW libraries libraries Figure 5 Open sketch Open an Arduino sketch N a odroid zBU sami
45. kup right We will be messing with space allocation parti tions and file systems So even if you ODROID MAGAZINE 26 dont have bad fingers where everything you touch just blows up it is always a good idea to just relax and know that if you arrive at the moment where you say Whoops where is all my data you can say afterwards No problem I have it all on my backup To proceed with these steps you will need some free space It can be any blank drive that you might have or that old partition that you dont use anymore All you need is a logical device on which to save your data Installation That is the easy part You just need to install lvm on your system sudo apt get install lvm2 Configuration Here is where the magic happens If you have never heard of LVM before you should know that the volumes are divided into physical volumes volume Physical volumes are your actual disk partitions groups and logical volumes Volume groups are where all of your raw space is located and logical volumes are equivalent to the normal partitions that you are used to So let s create our physical volume first To do that type the following into a Terminal window where dev sdal is the partition you want to format as LVM This makes it available for use on our new LVM pvcreate dev sdal Then we create the volume group where rootvg is just a label you give to the volume group and dev sdl is
46. latform that could run the Unity desktop which I was used to I switched to evaluating the Nvidia Jetson T K1 develop ment kit based on the Nvidia Tegra K1 SoC which integrates four ARM Cortex A15 CPU cores and 192 Nvidia Kepler GK20A CUDA GPU cores The Jetson TK1 is actually the first platform I evaluated that runs Ubuntu 14 04 Unity desk top smoothly with graphics acceleration I then added a sec ond Jetson to bring up a two node cluster for evaluating ODROID MAGAZINE 17 ANDROID GAMING SLAY THE DRAGON SAVE THE VILLAGE SWORD OF XOLAN PROVES THAT NO MATTER HOW HIGH DEF OUR DISPLAYS GET WE WILL ALWAYS LOVE PIXELS by Bruno Doiche ne of my all time fa vourite games ever was an arcade game called Black Tiger a clas sic Capcom platformer that blended adventure with some RPG elements where you would look for coins in order to get better items and progress in the game I love to emulate it whenever I can and couldn t be hap pier to stumble across this gem from a Turkish indie game developer that managed to capture the thrill that I felt when first playing it It comes with the added bonus of having excellent controller support https play google com store apps details id com Alper SwordOfXolan amp hl en E Platforming check Runs all 0080105 check Controller support check Awesome swashbuckling fun check XU4 CLUSTER CUDA aware MPI programs
47. line Linux kernel hardware support would be really cool What advice do you have for someone want to learn more about programming and or hardware Start reading good books set up up your own Linux box learn Python or Java create your own project by mod ifying and extending existing ones and get familiar with GitHub There are also a lot of excellent MOOCs http bit ly 1EX2vLx covering a vast variety of different topics Uli enjoys windsurfing and other water sports with his children J ODROID MAGAZINE 41
48. ll as a XU for developing purposes Tools like Docker help you to move workloads between different devices easily so maybe I ll move the OwnCloud service to the once ODROID MAGAZINE 40 Uli regularly contributes his Docker expertise to the forums I ve managed to get Docker up and running there You are very knowledgeable about Linux especially kernels How did you become so proficient I started to use Linux in 1994 and two years later I worked as a system administrator at our university research group and started system administration by reading the Sys tem Administration book at http oreil ly 1TY1yWhH At that time compiling your own Linux kernel was a usual task I continued to work as an administrator for a couple of years but today I run Linux for my private purposes only On the PC platform there is almost no need to compile a custom Linux kernel anymore since the distribution main MEET AN ODROIDIAN This simplistic setup belies the powerful software running on Uli s trusty ODROID CI tainers vendors do the job for you When I started to work with ARM based Linux devices in 2013 I remembered the time when I had my first lessons in Linux Today there are a lot of helpful resources available online and it s very likely that someone else has raised your specific question before Which ODROID is your favorite I haven t worked with the U3 which most people would name as their favourite ODROID b
49. loudshell with hard drive re member that the bay is compatible with 2 5 SATA disks sized between 2 to 14mm If you try to assemble it with al5mm drive it won t fit Here is the assembled Cloudshell Needless to say it is good practice to keep the ventilation window clear of obstacles in order to allow adequate air flow ODROID MAGAZINE 7 NETFLIX ON LINUX NETFLIX UNDER LINUX ON THE ODROID CI CHILL OUT WITH A MOVIE 2 etflix runs well under Android on ODROID C1 simply by installing the mobile app from the Google Play Store but the technique for getting it to work under Linux requires more steps This article describes how to enjoy Netflix movies while running Arch Linux or Ubuntu Installation Chromium v43 0 2357 134 or higher is needed to run Netflix which is avail able for most ARM Linux distributions You can check the version of Chromium by typing chromium browser in a Terminal window Make sure to upgrade Chromium if the version is lower than the requirement I Download the Chrome OS recovery package at http bit ly JUOQQw then extract the zip file 2 Install the qemu nbd package via the package installer available for the operating system that you re using For example here is the Ubuntu command for installing qemu nbd sudo apt get install qemu nbd 3 Register the NBD protocol sudo modprobe nbd max part 16 4 Mount the recovery image using
50. n December 2014 and and the Raspberry Pi 2 was released in February 2015 The ODROID CI was superseded by the ODROID C1 in August 2015 Here are some comparisons to give you better understanding of ODROID CI Both are Linux friendly 35 ARM single board computers for various applica tions and purposes Hardware comparison The ODROID C1 has many advantages over the Raspberry Pi The processor is an S805 1 5GHz Quad core from Amlogic with 1GByte DDR3 RAM Gigabit Ethernet and infrared receiver The size of this computer is still only 85 x 56 mm with a weight of 40g and offers silent operation 2 3W average power usage and instant portability since it fits in a shirt pocket One powerful feature of the ODROID C1 is the row of GPIO general pur pose input output pins along the edge of the device These pins are a physical interface between the board and the outside world The 40 pin interface header includes SPI I2C UART ADC and GPIO function An SD 3 01 standard compatible UHS 1 microSD card as well as the faster eMMC module can be ordered with the ODROID CI and both arrive with either an Ubuntu or Android operating system already installed Insert the SD card into the slot connect a monitor a keyboard a mouse Ethernet and power cable and that s all you need to do to use the ODROID CI Browse the web play games run office programs edit photos develop software and watch videos right away
51. not compatible Further information is available in the Hardkernel wiki at http bit ly 1Laq7IS information Check out a demonstration video of the Cloudshell To purchase the XU4 Cloudshell for USD 39 or to obtain step by step assembly aptos instructions please visit the product page at http bit ODROID MAGAZINE 6 What was the number one request of Linux fans for the ODROID Well here it is a case with an awesome USB 3 0 to SATA converter and LCD console which also come in white and blue DROID lou 1 2 Editon Docker Develop Ship and Run Any Application Mv Seafile Open Source Personal Cloud Software OwnCli chron Enc e MicrosoftFree GNU Radic Wireless com munications research and rear For instructions on setting up a personal cloud server refer to the January 2015 issue of ODROID Magazine available for free download at http magazine odroid com 201501 XU4 CLOUDSHELL IR Receiver 320 x 240 TFT LCD Module 30Pin 1 0 Connector USB 3 0 Connector XI TH 150618 Le eR ol ee In this annotated diagram you can see that the Hardkernel team had the genius insight of offering the expansions on a dual sided board SATA Connector 6133216 USB 3 0 to STAT3 Bridge Controller containing a LCD the SATA controller and an extra infrared receiver When assembling the C
52. o implement it with fixed point integers and interpolated trigonometry since I was used to a 24MHz AImega What a surprise it was when I recognized that using floats and sin cos with no caching or table lookup had no noticeable performance impact Facial recognition The facial recognition module uses OpenCV 3 0 with Haar cascade classifiers Although the newer LBP cascades are signif icantly faster they had many more false positives so I thought 10 fps with Haar cascades is sufficient From the 2D position of the detected face the 3D position is estimated assuming a standard face size which worked surprisingly well Later on Luci s trajectory planning module moves towards the face if it is very close in order to simulate real interest then moves away if it violates the European intimacy distance Tracking a face in real time was a bit tricky since grabbing images from the video stream and facial recognition has a latency of 250ms So the computation of the faces 3D position needs to be done relatively to the webcams position 250ms ago Consequently when Luci moves quickly this does not work well when the image becomes blurry so the orientation of the head is directed towards the last stable face position until Luci moves slower and following the face in real time becomes possible again Ihe trajectory planning module computes the next two Kinematics diagram points in advance for calculating the B zier curve Therefore the
53. o using QGPIO not writing a general Qt5 application Next we can make the Blinky part of the application Re open the main qml file for editing After importing the com embedded io module defined in SA iere eren deme gr exited with code 0 Starting ae a den ugging Figure 8 Modifying the QGPIO class the C create a QGpio element and set the ID to gpio200 200 that will be invoked when the component is complete In the function set the GPIO direction to Out set the edge to Fall and the number to Next create the function callback ing set active_low to false and the value to false Then in the MouseArea object replace the onClicked function statements to simple toggle the GPIO value gpio200 value gpio200 value Figure 9 Modifying the main qml file Run the program and click on the center then observe the value of GPIO 200 changing by typing the following com mand into a Terminal window ODROID MAGAZINE 29 Figure 10 Checking the value of GPIO 200 cat sys class gpio gpio200 value Now you are ready to blink Connect a low amperage LED to pin 200 and ground as shown in Figure 3 If you do not have a low amperage LED use a resistor or a transistor with a separate power source The scope of LEDs and GPIO voltage are too large for this article but make sure not to overdraw your GPIO port with a big
54. oard The XU4 has a very interesting price performance ratio but I d love to see a 64 bit ARMv8 ODROID board Are you involved with any other computer projects unrelated to the ODROID I discovered Docker as a very fascinating way to develop deploy and operate applications but saw a lack of support for ARM based devices So I started to port Docker on ARM along with several others and I wrote down all the necessary steps to do this in my GitHub wiki at http bit ly 1M5Iphp This gives other interested people the chance to repeat these steps with their own boards which I prefer in favour of issuing and maintaining custom images I really like the idea of running Linux on this small ARM boxes due to the power consumption vs performance ratio Especially in small environments an ARM based Linux Server will offer more than enough performance So I will continue writing down interesting things about Linux on ARM just in case I need to remember how I did this par ticular thing What hobbies and interests do you have aside from computers Sports I m really keen on doing windsurfing like my whole family I like riding my bicycle instead of using a car and I love to go jogging What type of hardware innovations would you like to see for future Hardkernel boards I m certainly not the first one asking for this but a fanless ARMv8 AArch64 board supporting more than 2 GB of RAM SATA port or independent USB3 ports and main
55. roid ref http whiteboard ping se Android Debian Applications Places System O Hardware Terminal System Status forkompilerade programy Tasks 152 total Denatiover r 1 9 10004 20 O 456m 34m lim S 21 4 7 4 19 92 roid androidvNC vorker 0 2 server nomine 2 root Figure Android Debian The Debian distribution with its own set of libraries can run in a chroot and not interfere with any Android libraries With VNC Debian applications can redirect all graphics to Android There are two problems with this approach Graphics commands are sent through several layers of software resulting in poor performance Some screen real estate is lost to the Android panel Although this is a good proof of concept it is not an ac ceptable solution X Window System The X Window System is a network oriented windowing system used by all Linux desktop distributions The X server controls the display and is responsible for the drawing of on screen graphics Typical applications are X clients which exchange messages with the X server via the X Window pro tocol Applications are typically written through high level toolkits such as QT Tcl TK etc The Figure 2 shows an application communicating with the X server in a Linux desktop environment Most of the complex ity of X Windows is due to the client server architecture The design aspects that make X Windows complex
56. s shown in Figure 10 Enter the phrase Temp Sensor in the field that has a grayed our prompt Start typing the name of your sensor A new Figure 10 Post login screen It will take you to a new page as shown in Figure 12 Portal Mo Fuel File Edit View History Bookmarks Tools Help SAMI User Portal x Your new device C1 temp sensor has been added Connect another device Figure 12 Device main screen Click on the blue gear icon to create some IDs useful in the communication process You will be presented with a page that looks like Figure 13 Note the Device ID that is generated by the sys tem Click on the link that has the cap tion GENERATE DEVICE TOKEN You will be presented with the screen as shown in Figure 14 Note the Device Token that is generated by the system The device ID is especially used in the Device Info DISCONNECT DEVICE Device Info DISCONNECT DEVICE Figure 14 Device Token communication process The SAMIIO website provides a mechanism to obtain additional device data bearer id for authentication and test the SAMIIO API to submit data Before writing an application to submit the data the API can be tested via this test website Access the API test site at http bit ly 1NeVs1I Login to the site using your credentials that you setup earlier Under Figure 5 User information le samsungsami io somi Users GET
57. sequence of points and orientations in 3 dimensional space generated by certain patterns When no face is detected Luci runs a search pattern looking for faces by sampling the environment until a face has been found Then Luci carries out a pattern simulating real emotions like nodding without knowing why pretending to listen coming closer or retreating depending on the move ments of the face It s like in real life at home Trajectory Planning The implementation of the trajectory patterns is rather simple whenever Luci runs short of queued points to be approached she invokes a pattern point generator which is parameterized with the current pattern There the next point Hinge explosion diagram of a predefined sequence of movements is generated In case of of the trajectory and interpolates all intermediate points with the pattern that interacts with a face this is Move back quickly surprise recognizing a familiar face Move slowly towards the face first shy contact Watch face from various angles closer inspection Move down and watch the face from a frog s perspective looking cute Go up again and nod pretending an agreement The ideas were borrowed from Eliza http bit ly 1Co34ab but coded in a robot instead of Emacs Some patterns with special movements are hard coded For example when Luci pushes a box from the table or looks guilty for watching dirty pictures 1 34 and 2 00 in the video Finally
58. sion of temperature data with a message response id SAMIIO Python prerequisites At present we have Python 2 7 6 installed on the standard C1 images Versions of Python earlier than 2 7 9 have restric tions in their ssl module that limit the configuration that url lib3 can apply In order to address this issue install the follow ing components sudo apt get ims wall ces seudo apt get install pychon pip oython cey o e essential sudo pip install pyopenssl ndg httpsclient pyasn1 The use of the urllib python package results in verbose code Install the requests package to simplify the Python code using the commands scd ZEU S git clone git github com kennethreitz requests GLE cd requests VORP NOn Setup py Sample SAMIIO aware application Given the information obtained so far we can create a python script called sami req client py in the folder zBU sami Ensure that it has the permit execution attribute chmod 755 set Following is the content of that script Take a few minutes to see how information gathered so far has been used in the script fly Use bin python sami req client Util to post weatherboard info to Samsung s SAMI service Presumes weatherboard works off ttyUSBO c Venkat Bommakanti it it it it it it CA USA it it Free to use at your own risk No warranties im plied import sys time import serial json r
59. ssful and fortunately is based on the same Linux kernel used by the Linux desktop Independent software developers are also interested in writing applications for Android which has been a big problem for Linux desktops because of their limited penetration VOLKSPC At VOLKSPC http www volkspc org we have devel oped a solution to integrate both Android and Debian with the following features Full support for running Android applications Multi windowed Debian applications that work well with the keyboard Instantaneous switching between the Android and Debian desktops Quick launch of Android applications from the Debian desktop Users can install applications from both Google play and the Debian repository This unified distribution based on Android KitKat and Debian Jessie currently runs on the ODROID CI Even though I frequently refer to the Debian desktop in this ODROID MAGAZINE 14 document this solution is applicable to other X Windows based distributions such as Fedora and Ubuntu Benefits of running Android With Debian Android has many advantages such as Large number of available applications and games Very good support for touch interface e Hardware accelerated multi media e Large number of ARM SOC s with Android implementation Runs on enhanced Linux kernel However there are some Android limitations with used with large displays Each application uses the whole
60. t If you want to install a simple Samba share and exchange files over your network there is an easy way to install a Samba server and add shared folders as well If youd like to set up the newest OwnCloud server on your system it s just a few clicks away with my server scripts ODROID Server Setup Main Menu 1 Set Change local P address ethernet adapte only 2 Change Hostname 3 Resize partition to full size 4 Change username 5 Change password lt Select gt Maintaining the server itself Main Menu istall and configure DHCP Server one ethernet adapter only Advanced DHCP Configuration Install and configure DNS Server Bind basic functions only Advanced DNS Configuration WIP Install and configure OwnCloud Server Own private cloud server Install and configure Samba 4 Active Directory Domain Install and configure Samba Server Windows File Sharing Advanced Samba Server Configuration Install and configure OpenVPN VPN Server Create Client Certificates for VPN Install and configure PPPOE DSL Internet connection on eth0 Install and configure Jabber XMPP Server Openfire Install and configure Mumble Low latency VoIP server Server Install and configure Linux Dash WebBased System Monitor Install and configure BackupPC Linux system backup software Configure clients for BackupPC Install and configure minidlna daemon WOMAN EG lt Select gt lt Exit gt Differen
61. t servers that you can install and manage These scripts are part of my git repository at http bit 1y 1ECywYO and can be used on other images as well but are primarily intended for Ubuntu 14 04 LTS which address some specifics that only exist in Ubuntu 14 04 LTS When ever I have time I try to work and improve the scripts or implement new functions The scripts are not perfect yet but I like to fix issues and improve it This also means other people are free to do pull requests or ask for new features or help me figure out some bugs I will probably restructure the menu over time in order to make it easier to navigate Useful tips e It s best to change the default user and password to something only you know to further increase security on the system e These server images are not meant to run Kodi or similar programs nor to have a desktop to control them These are pure server images and should be handled as such Although it s possible to add a desktop and other things it s not recom mended since there are no libMali so blobs or framebuffer drivers installed such as armsoc or Mali DDX Ubuntu 14 04 LTS uses irqbalance which is normally is used to distribute IRQ interrupts over multiple cores rather thanlet them always be handled by the first core This should improve 1 0 opts and other things However on Ubuntu 14 04 irqbalance has a bug which causes it to use up 100 of avail able RAM over a period of sever
62. tes with keyboards by MIDI Musical Instrument Digital Interface protocol a protocol which enables digital musical instru ments computers and other supported devices to communicate with each other ith this protocol the MPU can receive data such as notes and velocity from the _ keyboard w the student is playing Figure 6 Playing the keyboard Arjuna has two modes Listen Mode and Evaluation Mode Both modes re quire two sets of data one for the song and one for the fingering data Songs are stored in a MIDI file mid which could be found at several Internet sites or can even be your own song made with any MIDI song creator and there a lot of them out there The fingering data can be created from the MIDI song file with software we call MidiFGR In this software you can manually set the cor rect finger to play for each note and it will then generate a new file This file is needed for guiding the student in play ing the correct key with the correct fin ger In Listen Mode the MPU will read the chosen song and play the song thru the keyboard At the same time the MPU will send commands to the hand modules which will vibrate the cor rect finger for every notes that should be played In this way the student can learn the proper fingering skill In Evaluation Mode the student can play the keyboard and receive guidance While the student is pla
63. the partition the the full size of the eMMC SD card on boot Another major difference is the kernel updates via apt get that I offer for all ODROID boards as well as the script collection that I include with my server images Script collection If you are logged into the image either via SSH UART or directly with keyboard on your ODROID you can type sudo odroid server and it will bring up a menu that can Startup screen of the script collection guide you through different server tasks as shown in Figure 1 From this menu you can select if you want to config ure the server itself or install and configure different services such as Samba Share Samba4 Active Directory Domain OpenVPN server and many other packages I created these scripts in order to make it easier to setup new systems especially for often used tasks For instance it s easy to change the password for users that exist on your sys tem or even rename a user As mentioned earlier the default user linaro should be changed to increase security To do so go to Server Maintenance gt Change username and change the user to anything you want The home folder will be renamed together with the user The same method applies if you want to change the password for the user I tried to make it easy for you to change basic settings like the name of the server or set up a static IP address for your system but there is more to it than tha
64. the system by fixing some issues that are common with the images from HardKernel For example if you use the UART to connect to your ODROID on the HardKernel image you are already logged in as root which means that no login or password is required and you or anyone else has full access to your server and has the pow er to change install or delete whatever they want I also deactivated the option to login as root via password to make it harder for attackers to get access to the server ODROID MAGAZINE 12 since they normally try to connect as root to get full access However since this server image has no login for root this modification creates another layer of security I also generate new SSH keys on the first boot so that not every server that is based on my image has the same SSH host key files Another issue present in the Hardkernel image is the method of waiting for network timeouts The default Ubuntu Server image waits nearly two minutes if theres an issue with the network during boot This means the boot process can be delayed cause the server is idling while waiting for network Since its not critical to wait for the LAN I deactivated that option in order to reduce the boot time significantly I also added a script that increases the partition size of the rootfs system to the full size during the first boot Therefore the image can be kept very small around 1GB which allows for fast flashing then later resizing of
65. tion e sys print y mles tailed tco send errors a str repeat search every 2 mins pring waiting 2 mins to send next fcis NM time sleep 120 repeat whole process print V2 Ore scs Wome em eck while block ends excepti some error eo 0 vince d 10 preine Strle t An print prank Dene Type the following to run the script S cd zBU sami S python sami req client py It should start running and gather the weather data from the ttyUSBO port and submit it to the SAMI website once every iteration and submits tempera ture values once every 2 minutes You can vary the temperature by moving the sensor closer to or away from a hot light source such as a desk lamp Figure 18 illustrates the temperature chart as seen from the SAMIIO website at http bit ly 1IVhfoZ The website logs of the submitted data are shown in Figure 19 The above script can be modified to show additional data such as the atmo spheric pressure and altitude obtained from the weather board The SAMIIO platform also provides SDKs for a vari ety of programming languages which can be used to develop applications Additional resources http bit ly 1O9FKFZ http bit ly 1ds2ONj http bit ly ILUqbPP http bit ly IKBbpjQ http bit ly I NeVs1I http bit ly ITVhfoZ http bit ly 1g6FbPj http bit ly 1IVhc I Figure 18
66. tomatically as well as manually First add the width and height to match your current resolution then add the flasher button which is simply a rectangle with an other MouseArea in it The mouse click will then start and stop a timer which will be defined in main qml as shown in Figure 14 Figures 14 and 5 Blinky ODROID interface code ODROID MAGAZINE 30 The logic is that if the timer is not running then we start it else we stop it First give the rectangle a height a width and a color Add text to the button and anchor it to a location on the screen Below that create the flasher timer and give it an interval of 500ms which is equivalent to half of a second The timer is then set to repeat and an onTriggered callback is created which states while running toggle GPIO 200 every half second Finally add an exit button which is very similar to the flasher button but colored red and located in the bottom right Also instead of toggling the timer the exit button will close the application If this was a real replacement for the desktop envi ronment we would shut down instead of quit Quitting brings you back to the LightDM screen in order to choose where to go next Creating the binary Until now QtCreator has likely been performing a shadow build and operating in debug mode When deploying the application we want to build for release Open a Terminal window and navigate to the
67. ttps play google com store apps details id com miniclip plagueinc amp hl en _ 31122014 eae E a u DER New President of USA selected Global News Insanity Palin has been selected to replace the ill President au cc RM Disease World is Infected Dead 2848932281 Now do you see what happens when you don t wash your hands after using the bathroom Wriggles mutation patterns extraordinary Scientists are struggling to understand the extraordinary mutation patterns of Wriggles RMS researchers say that this setback will damage cure efforts C Cure 64 Wfected m Dead Disease 2 327 274 997 6 483 861 498 0 SPOTLIGHT Direct rendering of all graphics by the client No changes required for existing Xlib applications 2X faster than standard X Windows Unified Android and Debian with MicroXwin With MicroXwin Debian applications can write di rectly to the frame buffer without going through Android s SurfaceFlinger This requires that both MicroXwin and Android graphics co exist and run simultaneously without interfering with each other In addition to providing Xlib API support to Debian applications the MicroXwin ker nel module also provides following features Monitors keyboard shortcuts LeftALt LeftMeta and facilitates switching between the Android and Debian dis plays The state of the Android graphics and Debian graphics Is maintained
68. ur system unbootable if you do so so be careful These are the basics to set up LVM on your system There is a lot more that you can do with it but this should be enough to start experimenting with it and discovering all of its possibilities File File system system Volume Group Physical Volume ODROID Magazine is now on Reddit ODROID Talk Subreddit http www reddit com r odroid QTS DEVELOPMENT BUILDING A SINGLE APPLICATION USER INTERFACE by Christopher Dean his article describes how to use the Qt5 programming language and the Qt5 Developer s Dream image in or der to create a Single Application User Interface This is helpful for individuals building kiosks media players medi cal equipment and other embedded Linux systems We will quickly jump into creating a simple Qt5 application and then learn how to configure the session to run the application on startup Getting started The first thing is to download and flash the latest Qt5 De velopers Dream image to your SD card or eMMC module Download links for the image may be downloaded from http bit ly IPMDwKP Qt Creator 3 5 81 Based on Qt 5 1 GCC 1 0150711 32 ba Figure Qt5 Developer s Dream desktop Sample application After booting into the image we can now create our first Qt5 application Open Qt Creator from the application draw er at the top left of the Lubuntu desktop environment by se l
69. with the following command ls lsery devis BS 0 ecrw rw 1 roor i bs SS 0 Aug 12 10 25 dev ttyUSBO Check the system version from a ter minal to ensure you have the latest as of this writing uname a ia doce dq SO 2 pl SME PREEMPT Mon Aug 10 20 27 04 BRE 2015 armv71 armv71 armv71 GNU T3 DU Update Weather Board sketch While the weather board sketch is not directly needed to update the SAMIIO website with the weather data it is useful to visually validate the accuracy of the data being submitted Shown below are the steps to upload a modified sketch that make the presented data well orga nized so one can quickly find the data being submitted Install the Arduino IDE for 1 if not already present Sudo apt gert install an dme amp amp mkdir ZBU amp amp ZBU amp amp mkdir sami amp amp cd sami git clone com hardkernel ODROID SHOW git Decl EGNID HO weather board Ensure that the weather board ino sketch file is present zBU sami ODROID SHOW firmware weather board weather_board ino Create an empty patch file called weather_board ino changes in the cur rent directory copy the following con tents and save it lt const Char version 57 gt Const Ghar vb lt ON 2950 gt 200 S87 696337 ES lt potes emp DE lt
70. ying the MPU evaluates the data received from the key board by comparing it with the song file And when the student presses the wrong piano key the MPU will detect this and send a command to the hand module This command will then vibrate the motor either on the left or on the right side of the correct finger The side will depend on which position the key that should be pressed is located relative to the incorrectly pressed key For exam ple If the correct key is located to the right of the wrongly pressed key the left motor will vibrate On the other hand if the correct key is located to the left of the wrongly pressed key the right motor will vibrate Of course this behavior can be reversed in the MPU settings About The Arjuna Project We are a three person team from Gadjah Mada University Indonesia Originally this project was dedicated to helping the visually impaired in learning how to play the piano Learning to play the piano is not easy for anyone but for someone with limited vision capability This device was created to introduce the visually im it is much more difficult paired to some of the basic piano skills without the need for sight With Arju na we hope to open a new window for the visually impaired a window into the beautiful world of music Arjuna is open source Currently we are rebuilding our public repository for easier installation and it is available at http github com ArjunaElins
Download Pdf Manuals
Related Search
Related Contents
Manual_Z8FR - trondigital.com.br ESP AÑOL - ojfresh.com Sony RM-LG112 User's Manual User Manual Samsung SGH-D500 Manuel de l'utilisateur Porta de Abrir Electrolux EIDW5705PB Wiring diagram Unique Home Designs 5V0000DN0WH00A Installation Guide Philips Robust Collection Mixer HR1581/00 DPS (Data and Programming System) Copyright © All rights reserved.
Failed to retrieve file