Amp clamp 100a non invasive

hey i was wondering if you can use this amp clamp to measure dc current?
also would it be damage if more than 100amp of dc current went through?
thank you for your time


We don’t have a DC variant of that sensor. We do have clamp meters that will measure DC though:

I am having trouble with a bit of code. In my IF statement has a voltage variable I want the serial monitor to print out the actual voltage.
If (voltage>=4.50 && voltage<=7.600 && amps >=200)

I would like to know how to print the actual voltage in the serial monitor.

Hey, I assume you’re using Arduino. In that case you can just Serial.print(volts). If you need to format the number before you print it I’d recommend you use dotstrf(), like this:

void setup() {

  char stringBuffer[12];
  float volts = 123.456;

  Serial.print("Voltage: ");

  dtostrf(volts, 4, 0, stringBuffer);

  Serial.print("Formatted Volts: ");

void loop() {


Hope that’s what you need. Please reply if it isn’t.

  • Chris.

Hey Chris,
How are you?
I have a massive problem it’s racking my brains out. I purchased 2 hall effect sensor, it is a 500amp (find picture attached blue image) and the other one is the second image attached it is a black amp clamp. I am trying to get it to work via arduino. As you know it runs a 10bit resolution. I am running this code but it doesn’t seem to work -

const double cbd1zerocurrvoffset= 2.0039; ;
double temp;
int tempPin = A2;
int sensorValue;
int itempcompensatedcount;
double currentA=0.0;

void setup() {


void loop() {
// read the value from the sensor:
float sensorValue= analogRead(A5);
//sensorValue=sensorValue + analogRead (A5);
//sensorValue=sensorValue /2;

Serial.print ("\n sensorValue: “);
Serial.print (”\n ");

float temp;
temp = analogRead(tempPin);
temp = temp*0.48828125;
Serial.print (“temp = “);
Serial.print(”*C \n”);

//sensorValue = iHallSensorTempCompensate(sensorValue, temp); // method

Serial.print (“Sensor Value Calculation 1: “);
delay (1000);

currentA =(((double)sensorValue * 5.0)/1023.0 - cbd1zerocurrvoffset)*325;
Serial.print (“Calculated AMPS=”);
return currentA;

// int inputsensorvalue;

itempcompensatedcount=(int)( (double)sensorValue - 0.09125 * (temp-20.0) );

// Serial.print ("\n Temp Compensation Count: “);
// Serial.print(itempcompensatedcount);
// Serial.print (”\n ");

delay (1000);


// Method - accepts values and always returns one value

float iHallSensorTempCompensate(float sensorValueforMethod, double TempforMethod)
float iTempCompensatedCountforMethod;
iTempCompensatedCountforMethod=(sensorValueforMethod - 0.09125 * (TempforMethod-20.0) );

// Serial.print ("\n sensorValueforMethod: “);
// Serial.print(sensorValueforMethod - 0.09125);
// Serial.print (”\n TempforMethod: “);
// Serial.print(TempforMethod-20.0);
// Serial.print (”\n ");
// delay (1000);

return iTempCompensatedCountforMethod;

Should I be using this code or do you recommend something else?
The problem with this code is that when I activate the blue hall sensor it, It starts at a negative 0v = -501amps and the black amp clamp it is not collobrated correctly e.g. on a 10amp current draw it shows 8amps, will you be able to help me collobrate it?


Hey there. The equipment you have aren’t items that we stock. We just don’t have any expertise with these items. I would suggest you look for other makers who have projects using the same or similar equipment and see what you can learn from them. I wish I could be more help.

  • Chris

Yep, might be best to engage the OEM of those sensors for this one.

hi there,
how are you? iam moving from arduino to particle .
and i just realized that it only run a 3.3 volt board.
aposed to 5v arduino uno.
do u sell a 3.3 voltage divider?
cheers mate

This ought to do it:

hi mate ,
not sure if i understand, iam trying to connect a analog voltage divider dfr0051 to a particle electron , however thos divider is 5v rated . if i connect it to A0 pin which i not sure if its 5volt tolerant , would it still work ? or do i need a 3.3 voltage divider ?