Frequently Asked Questions
Q: Do you have a Wiki?
A: Yes we do. It is under construction and has some good stuff so far. Feel free to ask for new sections or expanded material. www.armworks.cc
Q: What are all these Mini Micro Tiny things anyway?
A: I'm glad you asked. The Mini2440 is a 400 MHz ARM9 system with 64 MBytes of RAM and 256M or 1G of NAND. A Micro2440 is a "stamp" module with the Samsung S3C2440 processor and memory like a Mini2440. It is meant to mount on a Micro2440-SDK board or a board of your own design - we have the 2mm sockets are on the site. They all have Ethernet, USB, LCD drive, SPI, IIC, audio, GPIO, ADC, UARTs, SD socket, expansion header, etc. The Mini/Micro2440 can run Debian Squeeze from an SD card with half the RAM still available. We often use Debian with Python with X and TKinter.
The Mini6410 is a 533 MHz ARM11 with all the features of a Mini2440 plus 256 MBytes of RAM and 1G of NAND. It has hardware floating point and vector processing with hardware assist for 2D and 3D graphics, and can run full Linux desktop type distributions with file systems on SD cards (Ubuntu, and Debian has a full ARMEL repository), as well as all the usual embedded Linux and other OS's. The Tiny6410 is the "stamp" version and Tiny6410-SDK is the stamp and development board.
The Mini210S is a 1000 MHz ARM A8 Cortex with 512 MBytes of RAM and 1/2/4 GBytes of NAND. The Samsung S5PV210 chip has hardware media accelerators and transcoders for all the usual video and sound formats. It has fast math vector processing with 2D and 3D acceleration hardware. The Tiny210 is again, a stamp, and the Tiny210-SDK is the carrier or development board. There are two versions of Tiny210. One is simplified and can use the capacitive touch displays. The Mini210 has dual CSI2/MIPI camera interfaces and can encode 1080P at 60Hz in real-time. It has HDMI output that can drive high def TVs and monitors and the kit includes an HDMI cable.
Q: How can I calibrate the touch pad if it is so uncalibrated that I can't open a terminal or select the calibration task?
Boot with a generic USB mouse attached. It will be recognized and will work at the same time as the touch pad. Select the tools tab, then the calibrate icon. Don't use the mouse to calibrate! Calibration needs the values from touching the screen with a good stylus. Speaking of styli, get some Nintendo DS styluses. They are non-conductive and have a nice Teflon or poly tip.
Q: Can I run Android?
A: Yes. Android can run on them all but is sluggish on the 2440. The Mini/Tiny 210 comes with Android 4 and Android 2.3.1 on the ISO. It has graphics acceleration and media encoders/decoders that produce great graphics and video. Angry Birds runs great.
Q: I don't have Windows XP (or I just refuse to use it). How do I load new systems on my Mini2440 or Mini6410?
A: Go to Mobyfab's page and you can get his utility for Win7 and Linux! It is better and cooler than DNW. http://mini2440.netyxia.net/viewtopic.php?f=11&t=2 You can also use Win7 and Vista with the latest version of DNW. Lauch as Administrator by right clicking.
Q: I am compiling the kernel from the DVD and the W35 display is not working right. What do I do to fix this?
Q: I am trying to use "SDFlasher" to make a bootable SD for a Mini6410. SDFlasher won't recognize SD cards on my Windows computer. Is the software broken?
A: Right click on SDFlasher and "Run as Administrator". On one of our laptops, in Administrator mode, SDFlasher finds SD cards in the built in reader and in USB to SD adapters. Once they are found, "Relayout" the cards. Then, click on them in the SDFlasher line item window again so they say YES they can be programmed instead of NO. Remember to point the source file to the version of Superboot you will be using.
Q: I have an old Mini2440 with 64M Flash and want to get one with 128M / 256M/ 1G. Will I have any problems with my software?
A: Yes, a little. The 64Mbyte NAND Flash has a read/write block size of 512 Bytes and an erase block of 16K. The 128, 256, 1024M parts have page read/write size of 2K and erase blocks of 128K. So, 128, 256, and 1024 (1G) are identical in usage. The latest versions of u-boot test the environment and pass boot parameters so Linux knows which memory it is using. In other situations, like Windows CE6.0, images are generated specifically for the two memory parameters. Only two images are needed: one for 64M, and one for all others.
Q: I am trying to use the serial port on the Mini2440 and getting nothing! What is wrong?
A: The Mini and Micro2440 DB9 are wired as a DCE, like a MODEM, not a PC. Use the cable that came with your system, not a null modem cable. In other words, the same kind of serial cable you would use with a printer. Note: The Mini6410 is DTE and needs a null MODEM or a crossover cable to connect to a PC (ships with a crossover).
Q: I have a Micro2440-SDK and the NAND/NOR switch isn't working. It is always in NAND mode. Is it broken?
A: Well, maybe. But the Micro2440 "stamp" module has a jumper you should remove before jumping to conclusions -- the only one on the board. It is used to switch modes in custom designs with no external switch. In fact, the pins are rather sharp and if the Micro2440 is going to stay in the SDK, it is not a bad idea to clip them or use an "open jumper" to protect against puncture wounds.
Q: I have a new Mini2440 with LCD. When I power on, Linux launches, but in Chinese! How do I change it?
A: There are several tools that look like they should change the language but only one will work. Select the tab that looks like a bunch of colored balloons. There is a red icon easily mistaken as a canvas beach lounge. It is a PRC flag, red with yellow star, waving horizontally over a Union Jack. The Chinese characters say "Language Selection." Tap this icon and choose English or Japanese. The Linux will restart when you are done.
Q: I have a system over a year old. How can I use the newer FriendlyARM OS images? They either won't load or something crashes, including Vista!
A: If you have 64M NAND, you have an early model Mini2440. To load the latest kernel and file system you will need to update the boot loader (supervivi) in the NOR Flash. Here is a PDF on how to do it JTAGingTheNor.PDF and get the download of the newest binaries including the latest supervivi from the friendlyarm.net/downloads page. Note that there are versions for 64M and 128M. New Mini2440's all have 128 MBytes or more of NAND Flash. The 64Ms are getting hard to find. The boards were designed to grow with the increase in Flash density and the chips fit with no changes.
Q: I am trying the new software on my old Mini2440 and video is not working right. What is wrong?
A: All the new Mini35 ship with a Sharp W35i (earlier have Toppoly or Sony 3.5" LCD and the older units all have NEC 3.5" LCD's. X35, T35, N35). The LCDs need different timing. The software releases include kernel images for each. Try switching to the kernel that ends with "W35" depending on your display. (N35, T35, X35).
Q: I need to do floating point math and use transcendental functions but the S3C2440 on the Mini has no math coprocessor. What kind of speed can I expect?
A: People using Linux or Windows CE with software floating point get 4 to 8 MFLOPS - Million Floating Point Operations Per Second, like multiply, add, divide - which is pretty good. The ARM has a single cycle barrel shifter that can shift any number of bits as part of any machine instruction. This allows very efficient software floating point. Those with a Mini6410 can compile to do all FP with the Vector Floating Point unit and get great speed. The VFP is often left only for graphics acceleration. Our Windows CE 6.0 for the 6410 enables VFP for all math. The Mini210 has all hardware FP and vector units. It can handle math intense problems and DSP.
Q: How much power does the Mini2440 use?
A: With 5V input, the Mini2440 + 3.5" LCD uses 600mA peak (3 Watts), 440mA when Linux is idling and the backlight on, 290 mA when Linux is idling and the backlight off. When Linux has shut down, the system is waiting for a reset at 250 mA (1.25 Watts).
A Mini440 with no display runs between 200 mA and 300 mA. Adding SD cards has a small effect. USB devices like wifi can increase the load quite a bit.
Q: Will the Mini2440 handle full size SDHC SD cards?
A: Yes. The Linux drivers meet the spec for SDHC volumes to 32 gig.
Q: Can I use something bigger, like a VGA display, during development?
A: Yes. There is a Mini2440/Micro2440 VGA adapter with a cable just like the LCD and a VGA connector. It can be mounted in place of the LCD or anywhere convenient. It will handle 1024x768 and other sizes. There is a simpler EZVGA adapter for the Mini/Tiny6410. The Mini/Tiny210 has HDMI. For the Mini6410, there is the EZVGA that uses the FFC normally connected to an LCD. The Mini210 has an HDMI connector and is great for very large displays and signage with large screen TV.
Q: Why can't I get the Ubuntu ARM distro to run on my Mini2440?
A: The Ubuntu ARM Distro is based on the ARMv5 instruction set (and ARMv7, Cortex, etc. for netbooks and Mini210). The S3C2440 ARM920T uses the ARMv4 instruction set. You would have to compile the Ubuntu distro from scratch and solve all the problems that arise. Note that the Mini6410's easily run Ubuntu. Some people add the tools and do their compiling on the Mini6410. With a VGA adapter, keyboard and mouse, it is a complete system.
Q: Do I have to use the Linux that comes loaded on the board?
A: Of course not! Check the Downloads page to start. There are several alternatives and there will be more. There will also be more consistency now that Mini2440/6410/210 support has been merged into mainstream Linux. Check out the E.L.L.K. training system on Mini35 (Mini2440 + 3.5" LCD).
Q: I have built my own Linux but it won't load and I can't program the NAND. What is wrong?
A: Probably a million things. If you happened across an old original Mini2440, it has 64M of NAND with different read and write block sizes than all the newer ones with more NAND.
Q: Can I work with Windows CE by myself?
A: You can write applications for CE with EVC, Embedded Visual C, Visual Studio and your favorite language, or the .NET stuff. To change the features of the runtime OS package you can use the BSP (Board Specific Package) with Windows Platform Builder. For CE 6.0r3, there is an evaluation version plus Visual Studio 2005, since Platform Builder 6.0 is a plugin for Visual Studio 2005. For full unlimited software, the tools are about $1,000. Licensing is about $3.00 per unit (license stickers are bought in 1000 piece lots) for the most basic licensed runtime and jumps to about $12 when certain Microsoft property, like IE, is added. The tools have to be bought from a reseller like BSquare, or Avnet, or Future. You can get all the evaluation tools from Microsoft on DVD (5 of them!) for free. Using them with Vista requires several patches and service packs and a confusing sequence of downloads and installs. XP-Pro is a better choice for development. They also work on Windows 7, which for some reason requires the Vista patch.
Q: How can I load the OS image files from Windows?
A: There is a utility called DNW on your DVD or the downloads page. It is an executable and does not need to be installed. Here are directions for loading Linux kernels and file systems from Windows. DNW Linux Load PDF.
Q: How do I make connections to the board for my project?
A: The Cable/Connector Kits are a bargain with complete cables and connectors and mating sockets for each type of board.
Q: What are the "OEM" versions of the FriendlyARM parts?
A: OEMs (Original Equipment Manufacturers) have begun production of a product using, say, the Mini or Tiny6410 and buy in volumes like 50 or 300 or 5000 a month. They don't need the power supply, Ethernet, USB, Serial cables, nor the DVDs, etc. They get a price savings for both the stuff they don't need and the much lighter load for shipping. Pricing is on a company-by-company basis depending on their volumes and customizing needs.
A: Power over Ethernet is a scheme that uses a quirk of the Cat5 cable and has the great advantage of powering remote devices over the same cable used for communication. Ethernet on Cat5 leaves 4 wires unused - yes, we have all been using cables and connectors twice as big as we need all this time. PoE uses these 4 wires in pairs to provide power much like USB can power a device. Pins 4 and 5 are positive and pins 7 and 8 are negative or return. There is a standard that allows up to 67 volts and 70 watts and requires "smart" supplies, and powered devices that communicate by changing the resistance of the load. Most PoE power supplies provide 48V or 24V (or 12V for shorter runs). Do it yourself PoE is 48 volts or less. In most of the US, this is below the levels that require an electrician or inspection. Note that any crossover cables will swap the polarity! The solution to this potentially disastrous problem is to always put a bridge on the input to the regulator for any powered device, then the polarity will not matter. Beware of connecting a shield or "ground" wire to the ground of your system after the bridge rectifier diodes. The two "grounds" will not be the same. The better solution is the bridge, then an isolated DC/DC converter with output grounded. There are some DC/DC controller chips with internal optical feedback so that there is no electrical connection between input and output. Texas Instruments and many others now make inexpensive chips for wide range DC/DC converters for PoE. The whole converter fits in a tiny space with awesome power output. We supply 12V and 24V power supplies with built in PoE injection, and very inexpensive injector/splitter hardware. For a great through-hole device, check the uRata parts. http://search.digikey.com/us/en/products/OKI-78SR-5%2F1.5-W36-C/811-2196-5-ND/2259781
Q: I have a Mini2440 and 7 inch LCD. Why is the touchpad difficult to use with the stylus? (solved)
A: The Samsung S3C2440 chip on which the Mini2440 is based has 10 bit A/D converters. A 10 bit converter has 1024 distinct digital outputs. The 7 inch LCD is 800 pixels wide. There are electronic offsets at the left and right edge that can leave the A/D with a usable span of less than 800 "steps". This means there is less than one count per pixel position and we see this as noise in the signal. A driver with improved digital filtering can help. A small PCB with op-amps for gain and offset to produce full span for the A/D could be rigged up if absolutely necessary. We are working on driver improvements. It looks like the drivers available have been extended from code meant for small cell phone screens, and they need reworking. Early experiments are very promising.
Note: The Mini/Tiny6410 and Mini/Tiny210 have 1-wire interfaces to a great touch pad converter chip that mounts on the back of the LCD, and they are rock solid. This is why the LCDs for the Mini2440 are not compatible with the 6410 and 210. Someday....
In the source, find this file
and change the S3C2410 frame buffer definitions to the following. Search for the first string, it remains the same.
#define LCD_PIXCLOCK 170000
#define LCD_RIGHT_MARGIN 68
#define LCD_LEFT_MARGIN 4
#define LCD_HSYNC_LEN 5
#define LCD_UPPER_MARGIN 10
Save it, then change touch screen parameters here
disX = disX * 1024 / 240;
disY = disY * 1024 / 320;
disX = disX * 1024 / 320;
disY = disY * 1024 / 240;
Q: What happens when a doe sees a dangerous predator near her fawns?
Q: Can I download a picture of that amazing cat for background on my display?
A: Yes you can. Right here.
Copyright 2008/2009/2010/2012 Industrial ARMWorks. All rights reserved.