Incorrect measurements with Arduino HX711 and cc2541 Bluetooth module

I am using Arduino Nano with HX711 scales module and cc2541 Bluetooth module(Bluetooth 4.0) to send data to Android device.

#define RX 11
#define TX 10

#include "HX711.h"

HX711 scale(A1, A0);

float scale_calibration = -13.5;
float mass,massround;
float units;

int out;

#include <SoftwareSerial.h>
SoftwareSerial bluetooth(TX, RX);

void setup()
{
  bluetooth.begin(9600);

  scale.set_scale();
  scale.tare();
  scale.set_scale(scale_calibration);
}

void loop()
{

  for(int i = 0;i < 10; i ++) units =+ scale.get_units(), 1;

  units / 10;
  mass = units * 0.035274; 
  massround=mass;
  out = round(massround);
  out = abs(out);

  if(out<0)
  {
    out=0;
    scale.tare();
  }
  bluetooth.println(out);

}

If I run Arduino using USB coonected to my PC, the scales work perfect and give right results via Bluetooth. However, when I run Arduino using battery (not connected to PC), I get 0-3 grams value, while there is nothing on the scales. So because of that all measurements are incorrect. How can I fix this problem?

  for(int i = 0;i < 10; i ++) units =+ scale.get_units(), 1;

What do you think this code is doing? It is nonsense, but fixing it depends on what you think it is doing.

=+ is not a compound operator, and the comma operator is being seriously abused.

  out = abs(out);

  if(out<0)
  {

After calling abs(), out can not possibly be less than 0.

However, when I run Arduino using battery

What kind of battery?

for(int i = 0;i < 10; i ++) units =+ scale.get_units(), 1;

What do you think this code is doing? It is nonsense, but fixing it depends on what you think it is doing.

=+ is not a compound operator, and the comma operator is being seriously abused.

Well, this should smooth the scales value. I deleted this part, but problem still exists.

What kind of battery?

Just regular 3.7V battery connected to 3.7 to 5 V converter. Pins from converter are connected to +5v and GND of Arduino, as well as to GND and VCC of HX711.

Could this incorrect measurements happen because of voltage? Well, when I use USB there is 4.55V on HX711 and when I use battery there is 5.15V.

Afomin:
Could this incorrect measurements happen because of voltage?

Yes. The calibration value depends on the voltage being supplied.

Well, when I use USB there is 4.55V on HX711 and when I use battery there is 5.15V.

You are going to have to explain that. The USB voltage should be very close to 5.000, while it is hard to imagine that the 3.7V battery is causing 5+ volts.

I have similar problem.
After tare the read out is zero when HX711 is supplied 3V via VCC from MKRFOX1200 supplied from USB, but it is Not zero when MKRFOX1200 is supplied from 3V battery.
Was the battery issue above solved?

I think it's clearly your battery issue. When you are powering it up from USB, it's working fine coz it's getting required current. But the battery failed to provide the required current that's why it's not working fine. Make sure ground of all modules are common.