I want to parse a large number to sync time on my arduino. For this i send it a string with the current time in Unix time format wich looks somethink like this:


For this I just call a php script wich echos the time() function.

But with string.toInt()I'm unable to parse it. I suppose the number is too large for an int or a long. But I can't put it directly into the setEpoch() method from the RTCzero libary because it accepts as input datatype only uint32_t. So how can I parse large numbers on a system where double isn't implemented. And I don't just try to parse the entire HTTP-Response. I iterate thru the response and at the relevant line I write all the chars into a char-Array. I also have removed the \r and \n chars.


2 Answers 2


On 32 bit systems, uint32_t is usually the same as unsigned int and unsigned long. You should be able to parse the number using strtoul(), which is quite standard and returns an unsigned long.


Thanks for the quick response. I also found another solution: Before echoing the time remove a large chuck of the time by just removing the current timestamp on the server-side. Later on I add the exact same amount when using the setEpoch() function. I know that's not very elegant but it works for me.

  • How do you share the time base (that large chunk) between the Arduino and the PC? Commented Aug 28, 2018 at 8:34
  • @DmitryGrigoryev, subtract epoch time of the first second of this year
    – Juraj
    Commented Aug 28, 2018 at 8:40
  • So you already have current time set on both Arduino and the PC? Commented Aug 28, 2018 at 8:48
  • @DmitryGrigoryev, read the question. he gets the time with HTTP GET request to his service on the server
    – Juraj
    Commented Aug 28, 2018 at 8:50
  • @Juraj I totally don't see that in the question. Commented Aug 28, 2018 at 8:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.