Abuse of Intellectual Property Rights

  • News
  • Thread starter jack action
  • Start date
  • Tags
    Property
In summary: No JSON file found, indicating that the URL is not accessible { Serial.println("URL not accessible"); } }In summary, a hacker modified a cheap Casio calculator with code he says he wrote from scratch. Casio came down on him claiming he used proprietary Casio
Physics news on Phys.org
  • #2
So basically, a hacker modded a cheap CASIO calculator with code he says he wrote from scratch using publicly available resources. Someone commented in the article that the mod could be used to cheat on exams. The hacker said he hoped that's not the case.

Casio came down on him claiming he used proprietary Casio code and then used the DMCA to take down his project on Github. He is fighting back.

I think Casio used the DMCA to protect their brand especially in light of the potential for cheating mentioned earlier which could get Casio banned from the educational world out of fear that it could happen and teachers wouldn't know how to combat it without a Casio ban. That could cost them a lot of money I'm sure.
 
  • Like
  • Skeptical
Likes jack action and berkeman
  • #3
Casio claims the repository contains its source code. The repo owners claims it doesn't. Shouldn't take too long to see who is right.
 
  • #4
Vanadium 50 said:
Casio claims the repository contains its source code.
How do you access private source code within the calculator? That would be pretty absurd to put it there in the first place.
 
  • #5
Where there is a lawyer, there is a way for some money making argument to be made.
 
  • Like
Likes Bystander, Rive and Astronuc
  • #6
Vanadium 50 said:
Casio claims the repository contains its source code. The repo owners claims it doesn't. Shouldn't take too long to see who is right.
It's prima facie a false complaint.

The DMCA complaint (available at https://github.com/github/dmca/commit/1e533a25356944db37d238361989ec1ceb2cc215) says in pertinent part:
**Please provide a detailed description of the original copyrighted work that has allegedly been infringed. If possible, include a URL to where it is posted online.**
It came to our attention that the below-mentioned repository is using copyrighted source code in order to modify Casio's copyrighted program.​
Link to the original content:​
**What files should be taken down? Please provide URLs for each file, or if the entire repository, the repository’s URL.**
The entire repository is infringing. In accordance with your Guide, I explicitly confirm that all of the content at the URL infringes.​

The code that is cited as the copyrighted code is completely unrelated to the code in the repository, which is all .ino (Arduino) files, and contains no Casio proprietary code.

The guy changed the project name and description to:
esp-oled-firebase-Integration
0.91" inch OLED and a esp8266-12E, which is integrated to firebase to fetch text file and send and receive text message.​
Here's the file list:

1594861547755.png


the 'main' subdirectory:

1594860035986.png


Two candidates that I looked at for possible infringement are the firebase code, and the data management code.

Here's firebase:
Code:
//To fetch data from firebase, User2 should be your patners user name
String fetchStringData()
{

   if (Firebase.getString(firebaseData,"/User2/chat"))
     {
        if(firebaseData.stringData())
        {
          return firebaseData.stringData();
        }
        else
        {
          return "No Text!";
        }
     }
     else
     {
      Serial.println(firebaseData.errorReason());
     }
}

//To send data to firebase, User1 should be where you send the data
  void insertData(String value)
  {
    if (Firebase.set(firebaseData, "/User1/chat", value))
    {
      return;
    }
    else
    {
      Serial.println(firebaseData.errorReason());
    }
  }
and here's data management:
Code:
/*This function writes the data to the file system*/
void writeDownloads()
{
  File spiffTextFile = SPIFFS.open(textFilePath, "w");
  if(spiffTextFile)
  {
    spiffTextFile.print(textFile);
    spiffTextFile.close();
  }
}

/*This reads the data from the file system and store it in textFile variable*/
void readDownloads()
{
  File spiffTextFile = SPIFFS.open(textFilePath, "r");
  if(spiffTextFile)
  {
    int i;
    for(i=0;i<spiffTextFile.size();i++) //Read upto complete file size
      {
        textFile += (char)spiffTextFile.read();
      }
      spiffTextFile.close();  //Close file
  }
}

/*
  To read JSON file form flash
  this setup is not necessary if you have to read single URL, u can get away with above function
  but this helps us to get multiple fields in the esp hosted server to enter multiple data.
*/
void readFlashJson()
{
    if(SPIFFS.exists(textFileUrlPath))
  {
    const char* _url = "";
    File configFile = SPIFFS.open(textFileUrlPath,"r");
    if(configFile)
    {
      Serial.println("Reading to file");
      //getting the size of the file
      size_t size = configFile.size();
      //using buffer to get the data
      std::unique_ptr<char[]> buf(new char[size]);
      //store it in buffer
      configFile.readBytes(buf.get(), size);
      //closing the file
      configFile.close();
      //json buffer to store the json
      const size_t capacity = JSON_OBJECT_SIZE(1);
      //json buffer to store the json
      DynamicJsonDocument doc(capacity);
      //parsing the json object
      DeserializationError error = deserializeJson(doc,buf.get());
       if(!error)
      {
        _url = doc["link"];
        textFileUrl = _url;

  /*More debugging*/

//        Serial.println(textFileUrl);
//        Serial.println();
      }
    }
  }
}
Downloading the Casio code from the link in the DMCA complaint requires agreeing to their license, and especially given that it's the subject of a DMCA complaint, I won't post it here. It's 59 lines of sample code for a fx-FD10 Pro that imports fields from a CSV file (using a USB connection) ##-## here's what that file looks like in Excel:

1594862664298.png


The Casio code clearly has no contributory relationship whatsoever to the project code. None of the project code has anything to do with the calculator. The project doesn't even use any of the fx-991MS calculator's hardware other than the case.

1594861237437.png

Everything runs in the wifi processor, input is entirely from the Hall Effect sensors, and output is only to the OLED screen that sits where the solar cell was. The project uses a battery, and let's the calculator use the battery for power instead of its no-longer-present solar cell.
 
  • Informative
Likes Ophiolite

Related to Abuse of Intellectual Property Rights

1. What is considered "abuse" of intellectual property rights?

Abuse of intellectual property rights refers to the unauthorized or excessive use of someone else's intellectual property without proper permission or compensation. This can include infringement on copyrights, trademarks, patents, and trade secrets.

2. What are some examples of abuse of intellectual property rights?

Examples of abuse of intellectual property rights include pirating or illegally downloading copyrighted material, using someone else's trademark without permission, and reverse engineering patented products without proper authorization.

3. How does abuse of intellectual property rights affect the economy?

Abuse of intellectual property rights can have a negative impact on the economy by discouraging innovation and creativity. It also undermines the value of intellectual property and can lead to lost revenue for creators and companies.

4. What are the consequences of abusing intellectual property rights?

The consequences of abusing intellectual property rights can include legal action, fines, and damages awarded to the rightful owners of the intellectual property. In some cases, it can also result in criminal charges and imprisonment.

5. How can we prevent abuse of intellectual property rights?

To prevent abuse of intellectual property rights, it is important to educate individuals and businesses about the importance of respecting and properly using intellectual property. Strong enforcement of laws and regulations, as well as implementing proper licensing and permission protocols, can also help prevent abuse of intellectual property rights.

Similar threads

Replies
3
Views
821
  • General Discussion
3
Replies
102
Views
8K
Replies
9
Views
3K
Replies
5
Views
977
  • General Discussion
Replies
7
Views
2K
  • New Member Introductions
Replies
1
Views
110
  • Computing and Technology
Replies
14
Views
2K
  • General Discussion
Replies
15
Views
3K
  • General Discussion
Replies
2
Views
3K
  • Programming and Computer Science
Replies
9
Views
1K
Back
Top