# Troubleshooting and Overcoming Challenges with Chinese Arduino CH340 Boards

🤔 Why I am making a post about this particular model? because I've entered the world of arduino recently and I already got a lot of problems with this model. As I noticed with the few lectures I made, the arduino uno ch340 is a fake one (chinese copy) which has a few issues with being detected by the computer, so after saying this I'm going to make a short guide on how I managed to make it work (at least in linux, sorry windows users).

### ☑️ Validate that our model is the correct one

* First of all make sure your model is the CH340G which looks something like this -&gt;
    
    ![model](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202597794/1070619f-ae70-4976-a732-93af1fe5106d.jpeg align="left")
    
* Once we confirmed our model is the correct we are going to continue!
    

### ⬇️ Get the drivers

Drivers are download from [here](https://www.wch.cn/download/CH341SER_LINUX_ZIP.html)

Inside the zip is a README.md

### 💾 Installing the latest IDE

* Now is time to download the latest IDE from `https://www.arduino.cc/en/software`
    
* Is going to be an `AppImage` so we need to give permissions to it.
    

```bash
chmod +x ./<file>
# Then we run it
./<AppImage>
```

You can also create an alias in your .bashrc (or anything you are using, in my case zshrc) something like this -&gt;

```makefile
cd
vim .zshrc
# Add this line
alias arduino="Path to AppImage"
# Then we source it
source .zshrc
# And run it with our newest alias
arduino
```

After all of this we aren't sure yet is our arduino board is going to be working or not in the IDE, so is time to test it!

### 😊 Run your first program

* The first time you open the IDE is going to look like this -&gt;
    

![FIRST](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202602171/0fae2ddd-c518-46b9-b85b-5d925053e6a9.png align="left")

Now we want to click where it says `Select Board` and there we are going to find the following things

* Arduino Uno
    
* USB Serial Port
    

It should look something like this -&gt;

![SECOND](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202603657/250e3a8c-88e1-44a8-9e93-9713239a31d6.png align="left")

Then we click OK to save it

* Next thing is going to be that we wrote our code! I'll leave it a simple example of `Hello World` in another file in this gist, so copy it from there and paste it there.
    

Then we have something like this -&gt;

![THIRD](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202604756/b8e41984-b9eb-44c9-9200-184de943a79d.png align="left")

We click the two icons which are to compile and upload and we should get something like this -&gt;

![FOUR](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202605904/6b04a4ac-ef54-432a-ba34-728f3490cbd1.png align="left")

And for the last thing we have to click in the `Serial Monitor` icon which is in the top right corner (The right one of the two)

![FIVE](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202607648/959caea4-cd33-4935-aa03-14c280463464.png align="left")

Then we got something like this in our console! -&gt;

![FINAL](https://cdn.hashnode.com/res/hashnode/image/upload/v1687202609479/17acbebc-9cea-4d01-a44b-857ad7341ad0.png align="left")

And there it is! Our hello world is there, enjoy our chinese arduino!
