[Official] FAQ for uArm Swift (Pro) - keep updating

1. What should I do if uArm Studio failed to connect with uArm Swift (Pro)?
Please check this post:

2. What is “firmware”? How to update firmware?

  1. Firmware is the “brain” of uArm, which enables uArm to understand your requests when you try to control it via software or codes.
    In order to fix bugs or add new features, we’ll update firmware from time to time. We suggest all users to keep the firmware updated.

  2. Please enter “Setting” or "Check for Updates’ to see the latest firmware version, release notes, and update firmware.


3. What should I do if firmware flashing is failed halfway, or I flashed the wrong firmware?

Here are the steps to flash firmware manually:

  1. Download “FlashTool” (Flashtool is a simple tool made by the uArm Team for flashing firmware manually) and Firmware .hex file (currently for Pro only)

  2. Connect uArm Swift (Pro) with computer via USB.
    Please don’t use uArm Studio while using FlashTool, or the port will be occupied.

  3. Open FlashTool, and then drag the .hex file into the FlashTool window. Done!
    Now you can open uArm Studio to check if the firmware is the latest.

4. What should I do if uArm seems to have a calibration problem/moves abnormally/skips steps?

1)Please check the wire connection (which may loose during shipping).

2)Let uArm go to these points via Blockly and send us a video.
So we can judge if there’s a hardware problem.

3)Re-calibrate manually (only available for Pro).
But we don’t recommend frequent calibrations.
Guide for re-calibration

5. How to use Bluetooth Module? How should I deal with Bluetooth problems?

Plug in Bluetooth module to your PC, let uArm stay close to PC, and then you can control uArm via uArm Studio wirelessly.

If Mac failed to discover uArm via Bluetooth:
1). Donwload FTDI driver here: http://www.ftdichip.com/Drivers/VCP.htm3
(some Mac systems don’t have built-in drivers)
2). Restart PC and try again.

If PC(Win/Mac/Linux) can discover but failed to pair with uArm:
It’s caused by an error of pairing prior to shipping.
Please download Bluetooth Pairing Tool, and pair them manually.
Before using it, please ensure neither the uArm nor the bluetooth module is connected by other bluetooth-enabled device.

6. How to get the current coordinates of the uArm
We recommend 2 ways to get the current coordinates of the uArm.
(1)By Aruidno
Send “M2120 V1” to uArm and it will feedback current coordinates per second.

image

(2)By uArm Studio.
Run uArm Studio and open the blockly function, drag “Move to” module to the panel and DO NOT click the “OK” button. It will show current coordniate.







10.How to upload firmware to uArm Swift(Pro) by Arduino IDE

7. What should I do if uArm Studio shows disconnected
Please check this post:

8. How to get the log files of uArm Studio
Please check this post:

9. How to adjust focus of uArm Laser?

Please rotate this part while the light is on until you get a very tiny dot on the paper. Please ware the protection glass while doing the adjustment.

10. How to order extra kit?
For those who want to order extra kits, please visit our online store: http://store.ufactory.cc

11. Why my Android device failed to connect to uArm by uArm Play APP?
You may have to turn on the Bluetooth and Location Service for the Android system,and also need give uarm play the access to the Bluetooth and Location service.


UFACTORY Website:
www.ufactory.cc
uArm User Facebook Group
Contact Us:
English Channel
中文

1 Like

Could you maybe share the calibration sheet as a vector file (pdf)?

Here: https://drive.google.com/open?id=0B-L-tCvknXU9aWdjcE5mV3QtZEU

Hi Daniel, thanks but the file is rasterized and not in a vector format anymore.

Hi , here is the PDF file, hope it may help. https://drive.google.com/open?id=1TozVf1TjM7DMA6W30R7relzdcBKEkV2r

Hi, I’m trying to upload the firmware to swift pro by Arduino IDE (as I want to remove the annoying beep each time the uArm starts). I did exactly as you said in part 10 (1,2,3&4) BUT… all I got is a compiling error:

Arduino : 1.8.5 (Windows 10), Carte : “Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)”

sketch\uArmAPI.cpp: In function ‘void getMacAddr()’:

sketch\uArmAPI.cpp:102:39: warning: invalid conversion from ‘unsigned char*’ to ‘const char*’ [-fpermissive]

char *s = strstr(readBuf, “OK+ADDR:”);

                                   ^

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:25:0,

             from sketch\uArmAPI.h:13,

             from sketch\uArmAPI.cpp:10:

c:\program files (x86)\arduino\hardware\tools\avr\avr\include\string.h:557:14: note: initializing argument 1 of ‘char* strstr(const char*, const char*)’

extern char *strstr(const char *, const char *) ATTR_PURE;

          ^

sketch\uArmAPI.cpp:107:33: warning: invalid conversion from ‘unsigned char*’ to ‘char*’ [-fpermissive]

strncpy(mMacStr, s+8, MAC_LEN);

                             ^

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:25:0,

             from sketch\uArmAPI.h:13,

             from sketch\uArmAPI.cpp:10:

c:\program files (x86)\arduino\hardware\tools\avr\avr\include\string.h:449:14: note: initializing argument 1 of ‘char* strncpy(char*, const char*, size_t)’

extern char *strncpy(char *, const char *, size_t);

          ^

sketch\uArmAPI.cpp: In function ‘void init_user_mode()’:

sketch\uArmAPI.cpp:262:24: warning: invalid conversion from ‘uint8_t {aka unsigned char}’ to ‘UserMode_t’ [-fpermissive]

set_acceleration(mode);

                    ^

In file included from sketch\uArmAPI.cpp:10:0:

sketch\uArmAPI.h:74:6: note: initializing argument 1 of ‘void set_acceleration(UserMode_t)’

void set_acceleration(UserMode_t mode);

  ^

uArmAPI.cpp:267: error: ‘planner’ was not declared in this scope

planner.acceleration = read_print_acceleration();

^

uArmAPI.cpp:273: error: ‘planner’ was not declared in this scope

debugPrint(“acceleration P:%f T:%f max_xy_jerk:%f max_z_jerk:%f\r\n”,planner.acceleration,planner.travel_acceleration,planner.max_xy_jerk,planner.max_z_jerk);

                                                                   ^

sketch\uArmAPI.cpp:275:12: warning: invalid conversion from ‘uint8_t {aka unsigned char}’ to ‘UserMode_t’ [-fpermissive]

user_mode = mode;

        ^

sketch\uArmAPI.cpp: In function ‘void set_acceleration(UserMode_t)’:

uArmAPI.cpp:299: error: ‘planner’ was not declared in this scope

planner.acceleration = MODE_LASER_ACCELERATION;

^

uArmAPI.cpp:334: error: ‘planner’ was not declared in this scope

save_max_xy_jerk(planner.max_xy_jerk);

               ^

sketch\uArmAPI.cpp: In function ‘bool setBtName(char*)’:

sketch\uArmAPI.cpp:440:37: warning: invalid conversion from ‘unsigned char*’ to ‘const char*’ [-fpermissive]

char *s = strstr(readBuf, “OK+Set:”);

                                 ^

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:25:0,

             from sketch\uArmAPI.h:13,

             from sketch\uArmAPI.cpp:10:

c:\program files (x86)\arduino\hardware\tools\avr\avr\include\string.h:557:14: note: initializing argument 1 of ‘char* strstr(const char*, const char*)’

extern char *strstr(const char *, const char *) ATTR_PURE;

          ^

exit status 1
‘planner’ was not declared in this scope

Hi you could refer to this doc to flash firmware: http://download.ufactory.cc/docs/en/uArm-Firmware%20Guidance_20181204.pdf

Thanks Daniel,
but I can’t modify or create .hex files (due to compiling errors with the Marlin-based firmware). I only want to remove the beep sound the uarm makes everytime it starts (which seemed to be possible editing the Marlin-based firmware with arduino IDE, but this is where errors appear when compiling). I downloaded the last Grbl-based firmware. No errors when compiling with arduino IDE but I can’t find which file to modify to remove the sound… Any idea?
Thanks.

I have found where the error came from!
in pins_swift, when modifying the beeper pin, someone wrote in a forum to put -1 value instead of 44. This is wrong: it causes all these errors. Simply replacing 44 by 0 removes the beep and does not generate errors when compiling. The end.