# DEEC

# Colaboração



# Drive DEEC

<div id="bkmrk-a-plataforma-drive-d">A plataforma Drive DEEC é uma nuvem privada para ambientes de colaboração, disponível para colaboradores do DEEC.</div><div id="bkmrk-vantagens%3A---a-qualq"><div>  
</div><div>Vantagens:</div><div>- A qualquer hora, em qualquer plataforma: Aceda aos seus ficheiros 24 horas por dia, 7 dias por semana, em plataformas desktop e móveis;</div><div>- Sincronização e backup: Mantenha os seus ficheiros sempre atualizados e protegidos;</div><div>- Colaboração suave: Edite folhas de cálculo, documentos e apresentações utilizando o Synology Office.</div></div><div id="bkmrk-">  
</div><div id="bkmrk-a-quota-para-armazen">A quota para armazenamento disponível por utilizador é de 10GB.</div>

# Gestor de passwords Bitwarden

Instalar plugin Chrome

<div id="bkmrk-https%3A%2F%2Fchrome.googl"><div>[https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb](https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb "https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb")</div></div><div id="bkmrk-">  
</div><div id="bkmrk--0">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21345)  
</div><div id="bkmrk--1">  
</div><div id="bkmrk--2">  
</div><div id="bkmrk--3">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21346)  
</div><div id="bkmrk--4">  
</div><div id="bkmrk--5">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21347)  
</div><div id="bkmrk--6">  
</div><div id="bkmrk-https%3A%2F%2Fpwd.streamli">[https://pwd.streamline.pt](https://pwd.streamline.pt/)</div><div id="bkmrk--11">  
</div><div id="bkmrk--12">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21356)  
</div><div id="bkmrk-autenticar%C2%A0-com-as-c">Autenticar com as credenciais.</div><div id="bkmrk--13">  
</div><div id="bkmrk--14">  
</div><div id="bkmrk--15">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21357)</div><div id="bkmrk--16">  
</div><div id="bkmrk--17">  
</div><div id="bkmrk--18">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21358)  
</div><div id="bkmrk--19">  
</div><div id="bkmrk--20">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21359)  
</div><div id="bkmrk--21">  
</div><div id="bkmrk--22">![](https://helpdesk.deec.uc.pt/api/v1/attachments/21421)  
</div><div id="bkmrk--23">  
</div><div id="bkmrk--24">  
</div><div id="bkmrk-dica-pro">**Dica Pro**</div><div id="bkmrk-para-auto-completar-">Para auto-completar num site que já tenha as credenciais registadas, pressionar Control + Shift + L</div>

# Helpdesk Serviços DEEC

<p class="callout warning">**NOTA:** Sistema de acesso reservado a membros autorizados e pertencentes aos diferentes cargos elegíveis.</p>

#### Acesso ao sistema

Para aceder à plataforma, deve aceder ao endereço [https://servicos.deec.uc.pt](https://servicos.deec.uc.pt/) e introduzir as suas credenciais de e-mail do DEEC e clicar em “Sign In”  
**![](https://helpdesk.deec.uc.pt/api/v1/attachments/17445)**

#### Ver processos no sistema 

Para aceder aos processos, deve clicar em “Overviews”**![](https://helpdesk.deec.uc.pt/api/v1/attachments/17446)**

Após aceder aos processos, pode selecionar se pretende ver a lista dos que pertencem à secção que pretende trabalhar (Direção, Gabinete do Diretor, etc.):

![](https://helpdesk.deec.uc.pt/api/v1/attachments/17447)

Terá também acessos aos “Processos fechados”, por forma a verificar algum assunto que já tenha sido tratado e fechado.

É também possível aceder a uma vista de tickets já atribuídos ao seu utilizador na opção “Os meus processos”.

#### Tratar tickets em sistema 

Para resolver um processo recebido, tem um várias opções: no menu lateral direito pode direcioná-lo para a lista correta (Gabinete do Diretor ou Direção) atribuir um responsável pelo ticket, alterar o estado do ticket e definir a sua prioridade.

Nas opções assinaladas na parte inferior do ticket é possível responder a quem abriu o ticket, encaminhá-lo para um e-mail, dividir em 2 tickets caso existam 2 problemas no mesmo ticket e pode ainda apagar o ticket.

Qualquer esta ação só é validada após clicar no botão “Atualizar”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/17448)

# Resolução de problemas com o Drive DEEC

### Acesso via Web entra em LOOP

Se acontecer o acesso via browser entrar em LOOP e não conseguir aceder ao serviço, poderá utilizar as seguintes indicações para resolver o problema:

[![image-1655302038718.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/scaled-1680-/image-1655302038718.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/image-1655302038718.png)

Pode, alternativamente introduzir o seguinte endereço na barra de URL:  
[chrome://settings/content/siteDetails?site=https%3A%2F%2Fdrive.deec.uc.pt](chrome://settings/content/siteDetails?site=https%3A%2F%2Fdrive.deec.uc.pt)

[![image-1655302283298.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/scaled-1680-/image-1655302283298.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/image-1655302283298.png)

[![image-1655302356992.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/scaled-1680-/image-1655302356992.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/image-1655302356992.png)

[![image-1655302531938.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/scaled-1680-/image-1655302531938.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/image-1655302531938.png)

[![image-1655302544889.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/scaled-1680-/image-1655302544889.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-06/image-1655302544889.png)

O problema deverá ficar resolvido.

# E-mail



# Actualização SMTP Maio 2020

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-por-favor-consulte-a"><div class="knowledge-base-article-content richtext-content js-answer-body">Por favor consulte as instruções para o seu cliente de e-mail específico abaixo. <div>- Thunderbird</div><div>- Outlook</div><div>- Mail App Mac</div><div>- GMail</div></div></div>## Thunderbird

## ![](https://helpdesk.deec.uc.pt/api/v1/attachments/3559)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--0"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3560)</div><div>  
</div></div></div>Na janela abaixo deve fazer as seguintes alterações:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-configura%C3%A7%C3%A3o-valor-a"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div><table class=" align-center"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr><td>**Configuração**

</td><td>**Valor actual**

</td><td>**Alterar para**

</td></tr><tr><td>Porto

</td><td>465

</td><td>587

</td></tr><tr><td>Segurança da ligação

</td><td>SSL / TLS

</td><td>STARTTLS

</td></tr><tr><td>Nome de utilizador

</td><td>seu.username

</td><td>seu.username@deec.uc.pt

</td></tr></tbody></table>

</div></div></div></div>#####   


<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--2"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3561)  
</div></div></div>## Outlook

Na janela principal do Outlook, pressione a seguinte combinação de teclas:

Control + Alt + S

Deverá surgir a seguinte janela, pressione "Editar":

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--3"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3562)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3563)</div><div>  
</div><div>  
</div></div></div>Na janela abaixo deve fazer as seguintes alterações:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-configura%C3%A7%C3%A3o-valor-a-0"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div class="align-center"><table class=" align-center"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr><td class="align-center">**Configuração**

</td><td class="align-center">**Valor actual**

</td><td class="align-center">**Alterar para**

</td></tr><tr><td class="align-center">O meu servidor de envio...

</td><td class="align-center">Iniciar sessão utilizando

</td><td class="align-center">Utilizar as mesmas definições...

</td></tr></tbody></table>

</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3564)</div><div>  
</div></div></div>Na janela abaixo deve fazer as seguintes alterações:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-configura%C3%A7%C3%A3o-valor-a-1"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div class="align-center"><table class=" align-center"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr><td class="align-center">**Configuração**

</td><td class="align-center">**Valor actual**

</td><td class="align-center">**Alterar para**

</td></tr><tr><td class="align-center">Servidor de envio (SMTP)

</td><td class="align-center">465

</td><td class="align-center">587

</td></tr><tr><td class="align-center">Utilize o seguinte tipo ...

</td><td class="align-center">SSL / TLS

</td><td class="align-center">STARTTLS

</td></tr></tbody></table>

</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3565)  
</div></div></div>## Mail MAC

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--6"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3566)  
</div></div></div>Na janela abaixo deve fazer as seguintes alterações da secção SMTP:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-configura%C3%A7%C3%A3o-valor-a-2"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div class="align-center"><table class=" align-center" style="width: 46.9136%;"><colgroup><col style="width: 28.496%;"></col><col style="width: 25.8547%;"></col><col style="width: 45.9131%;"></col></colgroup><tbody><tr><td>**Configuração**

</td><td>**Valor actual**

</td><td>**Alterar para**

</td></tr><tr><td>Porta

</td><td>465

</td><td>587

</td></tr><tr><td>Utilizador

</td><td>seu.username

</td><td>seu.username@deec.uc.pt

</td></tr></tbody></table>

</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3567)</div><div>  
</div></div></div>## GMAIL

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--8"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3568)  
</div></div></div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3569)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--10"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div></div></div>Na janela abaixo deve fazer as seguintes alterações:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-configura%C3%A7%C3%A3o-valor-a-3"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div class="align-center"><table class=" align-center"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr><td>**Configuração**

</td><td>**Valor actual**

</td><td>**Alterar para**

</td></tr><tr><td>Porta

</td><td>465

</td><td>587

</td></tr><tr><td>Ligação protegida através de

</td><td>SSL

</td><td>TLS

</td></tr><tr><td>Nome de utilizador

</td><td>seu.username

</td><td>seu.username@deec.uc.pt

</td></tr></tbody></table>

</div><div><div>  
</div><div>  
</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3570)</div></div></div></div><div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--12"><div>  
</div></div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-linked-tickets-1">**LINKED TICKETS <span class="badge">1</span>**  
</div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-mail-luis%40deec.uc.pt"><span class="badge">[Mail luis@deec.uc.pt](https://kb.deec.uc.pt/attachments/13)</span></div>

# Assinatura de E-mail no Thunderbird

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-colocar-o-seguinte-c"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2509)  
</div><div>  
</div><div>**Ativar a opção "Anexar assinatura de um ficheiro (texto, HTML ou imagem)" e descarregar o ficheiro anexo.**</div></div>

# Configuração Calendário Zimbra em Android

\- Descarregar app Open Sync : [https://play.google.com/store/apps/details?id=com.deependhulla.opensync&amp;hl=pt\_PT&amp;gl=US](https://play.google.com/store/apps/details?id=com.deependhulla.opensync&hl=pt_PT&gl=US "https://play.google.com/store/apps/details?id=com.deependhulla.opensync&hl=pt_PT&gl=US")

\- No Zimbra Webmail, criar um calendário denominado "my"

<div id="bkmrk---utilizar-a-op%C3%A7%C3%A3o-%22"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/9575)</div><div>  
<div>- Utilizar a opção "Login com URL e nome do usuário" e</div><div>**URL = [https://zimbra.deec.uc.pt/dav/SEU\_USERNAME/](https://zimbra.deec.uc.pt/dav/famaia/FM "https://zimbra.deec.uc.pt/dav/famaia/FM")my**</div><div>**Username = SEU\_USERNAME**</div><div>**Password = SUA\_PASSWORD**</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/9576)  
</div></div></div><div id="bkmrk---adicionar-o-seu-en">- Adicionar o seu endereço de e-mail na caixa abaixo:</div><div id="bkmrk--0">![](https://helpdesk.deec.uc.pt/api/v1/attachments/9577)  
</div><div id="bkmrk---por-fim%2C-activar-o">- Por fim, activar os Calendários que pretender sincronizar no telefone</div><div id="bkmrk--2">![](https://helpdesk.deec.uc.pt/api/v1/attachments/9578)  
</div><div id="bkmrk---os-calend%C3%A1rios-ati">- Os calendários ativados surgirão nas aplicações de calendário do telefone e com funcionalidade de sincronização de 2 vias (telefone - web e vice-versa)</div>

# Configuração do cliente de e-mail

Os parâmetros genéricos da configuração de clientes de e-mail para todos os endereços de correio electrónico com o domínio **@deec.uc.pt** são os que a seguir se apresentam.

### Recepção/Entrada (*Incoming settings*)

<table border="0" class=" align-center" id="bkmrk-protocolo-imap-nome-"><tbody><tr><th>**Protocolo**</th><td>IMAP</td></tr><tr><th>**Nome do Servidor**</th><td>imap.deec.uc.pt</td></tr><tr><th>**Segurança**</th><td>TLS (SSL no Outlook)</td></tr><tr><th>**Porto**</th><td>993</td></tr><tr><th>**Método de Autenticação**</th><td>*Password* (normal)</td></tr><tr><th>**Utilizador**</th><td>&lt;o seu email&gt; (por exemplo, jferreira@deec.uc.pt)   
</td></tr><tr><th>***Password***</th><td>&lt;a sua palavra chave&gt;</td></tr></tbody></table>

O domínio está configurado para autoconfiguração através dos clientes Mozilla Thunderbird e Microsoft Outlook, pelo que se usar um destes, a configuração deverá surgir automaticamente, com a simples introdução do endereço de e-mail e da password respectiva.

### Envio/Saída (*Outgoing settings*)

<table border="0" class=" align-center" id="bkmrk-protocolo-smtp-nome-"><tbody><tr><th>**Protocolo**</th><td>SMTP</td></tr><tr><th>**Nome do Servidor**</th><td>smtp.deec.uc.pt</td></tr><tr><th>**Segurança**</th><td>STARTTLS</td></tr><tr><th>**Porto**</th><td>587</td></tr><tr><th>**Método de Autenticação**</th><td>*Password* (normal)</td></tr><tr><th>**Utilizador**</th><td>&lt;o seu email&gt; (por exemplo, jferreira@deec.uc.pt)</td></tr><tr><th>***Password***</th><td>&lt;a sua palavra chave&gt;</td></tr></tbody></table>

## Webmail

Pode aceder ao sistema Webmail do DEEC, através do endereço [https://webmail.deec.uc.pt](https://webmail.deec.uc.pt/)

# Configuração Mail Outlook

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3437)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3438)  
</div><div></div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3434)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3435)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3439)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3440)  
</div><div>  
</div><div>  
</div></div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-linked-tickets-1">**LINKED TICKETS <span class="badge">1</span>**</div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-ajuda">**<span class="badge">[Ajuda](https://kb.deec.uc.pt/attachments/14)</span>**</div>

# Configuração POP3 para GMail

Apresentam-se abaixo screenshots do procedimento de configuração do cliente POP3 do GMail para o e-mail do INESC , para melhor ilustração do processo.

<div id="bkmrk-">  
</div><div id="bkmrk--0">![](https://helpdesk.deec.uc.pt/api/v1/attachments/13922)  
</div><div id="bkmrk--1">![](https://helpdesk.deec.uc.pt/api/v1/attachments/13923)  
</div><div id="bkmrk--2">![](https://helpdesk.deec.uc.pt/api/v1/attachments/13924)  
</div><div id="bkmrk--3">  
</div><div id="bkmrk-no-passo-seguinte-in">No passo seguinte introduza o seu endereço de e-mail do INESC.   
</div><div id="bkmrk--4">  
</div><div id="bkmrk--5">![](https://helpdesk.deec.uc.pt/api/v1/attachments/13925)  
</div><div id="bkmrk--6">  
</div><div id="bkmrk-no-ponto-5%2C-introduz">No ponto 5, introduza a password associada à sua conta do INESC.  
</div><div id="bkmrk-no-ponto-6%2C-introduz">No ponto 6, introduza pop3.inescc.pt e certifique-se que está selecionado o porto 995 no ponto 7.</div><div id="bkmrk--7">  
</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/20383)

<div id="bkmrk--9">  
</div><div id="bkmrk-neste-momento%2C-o-gma">Neste momento, o GMail passará a obter e-mail da sua conta do INESC em intervalos regulares.</div>

# Descrição Geral do Serviço de E-mail

O DEEC diponibiliza a todos os seus utilizadores – colaboradores docentes e não docentes – uma conta de correio electrónico.

O sistema de e-mail é baseado no sistema [Zimbra](http://www.zimbra.com/open-source "http://www.zimbra.com/open-source"), que tem as seguintes funcionalidades:

- Liberdade de escolha de cliente 
    - Browser – Cliente Zimbra AJAX
    - Cliente PC – Outlook (Online, Offline, Cached Mode), Apple Mail and iCal, Eudora, Evolution, Thunderbird/Sunbird, RSS, etc.
- Pastas auto-organizáveis
- Pesquisas rápidas, avançadas (em mensagens e anexos), graváveis, multi-pasta
- Visualização em formato de conversa, com suporte multi-pasta
- Filtros
- Calendário completo
- Interface Web rico, multi-plataforma – browser e sistema operativo
- Acesso ubíquo – qualquer lugar, qualquer dispositivo
- Acesso seguro a anexos sem necessidade de recurso a software adicional
- Sistema colaborativo assente em tecnologias modernas

Os domínio de e-mail é o @deec.uc.pt.

O procedimento de criação de contas passa pela atribuição do username com base no formato primeironome.ultimonome@deec.uc.pt por, nomeadamente, questões de normalização, organização interna, entre outros.

# Gestão de listas de e-mail no Zimbra

<div id="bkmrk-se-o-administrador-d">Se o administrador do sistema de e-mail lhe conceder direitos de gestão da lista de e-mail, poderá fazer a sua própria gestão da lista de e-mail no sistema Zimbra, disponível através da interface web em [https://webmail.deec.uc.pt](https://webmail.deec.uc.pt/).</div>Para tal, basta dirigir-se à Tab “Contactos” &gt; “Listas de contactos” &gt; “Listas de distribuição”.

Nessa área, tem uma lista das listas de distribuição onde está inserido. No caso de ser um dos proprietários de qualquer uma das listas, terá a notificação de que “É um proprietário desta lista.”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/166)

Terá então a permissão para efectuar as seguintes alterações na lista de e-mail em causa:

<div id="bkmrk-adicionar-e-remover-">- Adicionar e remover membros;
- Alteração o título da lista;
- Escolher se a lista deve estar visível ou escondida no catálogo global de endereços;
- Permissões de post ou subscrição na lista;

</div>

# Listas de E-mail

<div id="bkmrk-o-deec-disp%C3%B5e-de-um-">O DEEC dispõe de um sistema de listas de correio electrónico, permitindo o contacto célere com todos os serviços e grupos.</div><div id="bkmrk-">  
</div><div id="bkmrk-tecnicamente%2C-as-lis">Tecnicamente, as listas são suportadas pelo software [Mailman](http://www.gnu.org/software/mailman/ "http://www.gnu.org/software/mailman/") e/ou pelo sistema [Zimbra](http://www.zimbra.com/open-source "http://www.zimbra.com/open-source"). Por este motivo, algumas listas possuem um sistema de moderação, para redução do Spam enviado para as mesmas, sendo que a entrega das mensagens poderá acontecer de forma deferida.</div><div id="bkmrk--0"><div><div><div>  
</div></div></div></div>Consulte a lista abaixo para informação detalhada.

## DEEC

<div id="bkmrk-lista-destinat%C3%A1rios-"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="align-center">**Lista**

</td><td class="align-center">**Destinatários**

</td></tr><tr><td class="align-center">All Users DEEC

allusers@deec.uc.pt

</td><td class="align-center">Todos os alunos, colaboradores docentes e não docentes do departamento

</td></tr><tr><td class="align-center">Alunos

alunos@deec.uc.pt

</td><td class="align-center">Alunos Atuais do DEEC

</td></tr><tr><td class="align-center">Casa

*casa@deec.uc.pt*

</td><td class="align-center"></td></tr><tr><td class="align-center">Colaboradores Não Docentes

naodocentes@deec.uc.pt

</td><td class="align-center">Colaboradores Não Docentes

</td></tr><tr><td class="align-center">Comissão Científica

cientifica@deec.uc.pt

</td><td class="align-center">Membros da Comissão Científica

</td></tr><tr><td class="align-center">Direcção

*direccao@deec.uc.pt*

</td><td class="align-center">Membros da Direcção do DEEC

</td></tr><tr><td class="align-center">Docentes

docentes@deec.uc.pt

</td><td class="align-center">Colaboradores Docentes Internos ao DEEC

</td></tr><tr><td class="align-center">Docentes | Outros

docentes.outros@deec.uc.pt

</td><td class="align-center">Outros Colaboradores Docentes

*Inclui Docentes Convidados e Docentes Externos*

</td></tr><tr><td class="align-center">Erasmus

*erasmus@deec.uc.pt*

</td><td class="align-center">Interlocutores no DEEC pelo processo Erasmus

</td></tr><tr><td class="align-center">Gestão da Rede Informática

informatica@deec.uc.pt

</td><td class="align-center">Gestão da Rede Informática (Streamline)

</td></tr><tr><td class="align-center">Helpdesk Informática

*helpdesk@deec.uc.pt*

</td><td class="align-center">Gestão da Rede Informática (Streamline)

</td></tr><tr><td class="align-center">Info DEEC

*info@deec.uc.pt*

</td><td class="align-center">Secretaria, Direcção

</td></tr><tr><td>Investigadores DEEC

*investigadores@deec.uc.pt*

</td><td>Investigadores do DEEC

</td></tr><tr><td class="align-center">Laboratórios

laboratorios@deec.uc.pt

</td><td class="align-center">Maria João Cavaleiro, Fábio Faria

</td></tr><tr><td class="align-center">Manutenção

manutencao@deec.uc.pt

</td><td class="align-center">Carlos Coelho

</td></tr><tr><td class="align-center">Secretaria

secretaria@deec.uc.pt

</td><td class="align-center">Secretaria

</td></tr><tr><td class="align-center">Serviços Financeiros

*aprovisionamento@deec.uc.pt*

</td><td class="align-center">Aurora Gaspar

</td></tr></tbody></table>

</div>#### Unidades de I&amp;D

**Instituto de Engenharia de Sistemas e Computadores, Coimbra (INESCC):**

[https://helpdesk.deec.uc.pt/help/pt-pt/46-e-mail/151-listas-de-e-mail  ](https://helpdesk.deec.uc.pt/help/pt-pt/46-e-mail/151-listas-de-e-mail "https://helpdesk.deec.uc.pt/help/pt-pt/46-e-mail/151-listas-de-e-mail")

**Instituto de Sistemas e Robótica, Coimbra (ISR):**

[https://helpdesk.deec.uc.pt/help/pt-pt/23-e-mail/155-listas-de-e-mail  ](https://helpdesk.deec.uc.pt/help/pt-pt/23-e-mail/155-listas-de-e-mail "https://helpdesk.deec.uc.pt/help/pt-pt/23-e-mail/155-listas-de-e-mail")

**Instituto de Telecomunicações, Coimbra (IT):**

[https://helpdesk.deec.uc.pt/help/pt-pt/32-e-mail/156-listas-de-e-mail](https://helpdesk.deec.uc.pt/help/pt-pt/32-e-mail/156-listas-de-e-mail "https://helpdesk.deec.uc.pt/help/pt-pt/32-e-mail/156-listas-de-e-mail")

# Webmail

<div id="bkmrk-o-sistema-de-webmail">O sistema de Webmail é baseado no sistema [Zimbra](http://www.zimbra.com/open-source "http://www.zimbra.com/open-source"), que tem as seguintes funcionalidades:  
</div><div id="bkmrk-">  
</div>- Pastas auto-organizáveis
- Pesquisas rápidas, avançadas (em mensagens e anexos), graváveis, multi-pasta
- Visualização em formato de conversa, com suporte multi-pasta
- Filtros
- Calendário completo
- Interface Web rico, multi-plataforma – browser e sistema operativo
- Acesso ubíquo – qualquer lugar, qualquer dispositivo
- Acesso seguro a anexos sem necessidade de recurso a software adicional
- Sistema colaborativo assente em tecnologias modernas

Pode aceder ao sistema Webmail do DEEC, através do endereço [https://webmail.deec.uc.pt](https://webmail.deec.uc.pt/)

# Listas de e-mail da UC

<div id="bkmrk-o-deec-disp%C3%B5e-de-um-">A UC dispõe de um sistema de listas de correio electrónico, permitindo o contacto célere com determinados serviços e grupos.</div><div id="bkmrk-">  
</div><div id="bkmrk-tecnicamente%2C-as-lis">Tecnicamente, as listas são suportadas pelo software [Mailman](http://www.gnu.org/software/mailman/ "http://www.gnu.org/software/mailman/"). Por este motivo, algumas listas possuem um sistema de moderação, para redução do Spam enviado para as mesmas, sendo que a entrega das mensagens poderá acontecer de forma deferida.</div><div id="bkmrk--0"><div><div><div>  
</div></div></div></div>Consulte a lista abaixo para informação detalhada.

## UC

<div id="bkmrk-lista-destinat%C3%A1rios-"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="align-center">**Lista**

</td><td class="align-center">**Destinatários**

</td></tr><tr><td class="align-center">cc-cc-fctuc@ci.uc.pt

</td><td class="align-center">Conselho Científico da FCTUC

</td></tr></tbody></table>

</div>

# Hardware



# Datacenter

<div id="bkmrk-um-centro-de-process">Um Centro de Processamento de Dados, ou Datacenter, é o local onde são concentrados os equipamentos de processamento e armazenamento de dados de uma organização.</div><div id="bkmrk-">  
</div>São normalmente projectados para serem seguros e abrigam servidores e bases de dados e armazenamento de ficheiros, processando grande quantidade de informação.

Em 2008, o DEEC apostou na criação de um novo Datacenter, para melhoria das condições de funcionamento dos seus sistemas de informação, sendo que em 2022 foram feitos investimentos no sentido de melhorar um conjunto de características do espaço, nomeadamente ao nível bastidores e das condições de alojamento em regime de Housing.

O Datacenter foi desenhado de raíz, sendo composto por diversas componentes técnicas:

<div id="bkmrk-energia-%28incluindo-s"><div>- Energia (incluindo sistemas de alimentação redundantes)
- Climatização
- Conectividade (Rede)
- Servidores
- Sistemas de Armazenamento

</div></div>Todas estas componentes encontram-se montadas numa sala protegida contra acesso indevido, com mecanismos de passagem de cabos elétricos e de dados, armários metálicos (racks), onde são montados os equipamentos e um ambiente totalmente controlado.

O sistema de climatização é composto por um sistema duplo de ar-condicionado, redundante, de precisão, com monitorização constante, mantém a temperatura constante, refrigerando os equipamentos. Possui sistemas de controlo de falhas e de comutação para prolongar a duração de vida dos mesmos, assim como evitar problemas em caso de avaria de componentes individuais.

O abastecimento de energia, além da energia do operador, usa fontes de alimentação ininterrupta (UPS) de grande porte, montados em bastidor próprio, para manter os equipamentos ligados, mesmo em caso de falha no fornecimento. Os equipamentos activos (servidores, switches, etc.) são também adquiridos com fontes redundantes, para garantia de caminhos alternativos de fornecimento de energia, em caso de falha em componentes individuais.

O Datacenter possui actualmente as seguintes especificações aproximadas:

#### Componente Elétrica

O Datacenter possui actualmente as seguintes especificações aproximadas:

<div id="bkmrk-27-circuitos-de-forn"><div>- 27 circuitos de fornecimento de energia, num total máximo de 100A;
- 8 UPS com capacidade total superior a 20.000VA;

</div></div>#### Refrigeração

O Datacenter possui actualmente as seguintes especificações aproximadas:

<div id="bkmrk-2-sistemas-de-ar-con">- 2 sistemas de ar condicionado com um total de 40.000 BTU;

</div>#### Rede

O Datacenter possui actualmente as seguintes especificações aproximadas:

<div id="bkmrk-8%C2%A0switches%2C-disponib">- 8 Switches, disponibilizando um total de 216 portas, com velocidades individuais de 1Gbps e 10Gbps em tecnologia de cobre e fibra óptica;
- Ligação com os 8 bastidores de piso existentes no edíficio em fibra óptica, com caminhos redudantes;
- Ligação com o exterior em fibra óptica com um total acumulado de 10Gbps de largura de banda;

</div>#### Servidores

<div id="bkmrk-55%C2%A0servidores-f%C3%ADsico"><div>- 55 servidores físicos e 43 servidores virtuais;
- Mais de 150 cores de CPU e mais 1TB de RAM distribuídos pelos diferentes servidores;

</div></div>Armazenamento

<div id="bkmrk-capacidade-total-bru">- Capacidade total bruta de armazenamento superior a 24 TB em 2 sistemas de storage;

</div>

# Equipamento para apoio em aulas teóricas no contexto de COVID

<table border="1" cellpadding="0" cellspacing="0" id="bkmrk-%C2%A0-t4.1-t4.4-t5.1-t5." style="width: 70.4938%; height: 297.969px;"><tbody><tr style="height: 29.7969px;"><td style="width: 53.8596%; height: 29.7969px;"> </td><td style="width: 7.7193%; height: 29.7969px;">T4.1</td><td style="width: 7.7193%; height: 29.7969px;">T4.4</td><td style="width: 7.7193%; height: 29.7969px;">T5.1</td><td style="width: 7.7193%; height: 29.7969px;">T5.4</td><td style="width: 7.7193%; height: 29.7969px;">T6.1</td><td style="width: 7.7193%; height: 29.7969px;">T6.4</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**PC**</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Monitor Docente**</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Monitor Zoom**</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Webcam**</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Câmara Digitalizadora de Documentos**</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Mesa Digitalizadora Wacom One com Display**</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Colunas**</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Microfone Lapela sem Fios**</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 53.8596%; height: 29.7969px;">**Projector com ligação HDMI**</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">X</td><td style="width: 7.7193%; height: 29.7969px;">Sim</td></tr></tbody></table>

<div id="bkmrk-actualizado-a%3A-2020-">Actualizado a: 2020-09-25</div>

# Laboratórios Informáticos

<div id="bkmrk-o-deec-possui-um-con">O DEEC possui um conjunto de laboratórios didácticos, preparados com um conjunto de estações de trabalho para apoio às actividades lectivas, ligados à rede local.</div><div id="bkmrk-">  
</div>Os computadores, enquanto ferramenta essencial de apoio, estão equipados com o software necessário às diferentes disciplinas leccionadas.

Para o efeito, existem 8 laboratórios, equipados com um total de 133 estações de trabalho, instalados com sistema operativo Windows e/ou Linux, distribuídos da seguinte forma:

<div id="bkmrk-sigla-laborat%C3%B3rio-n%C2%BA"><div><table><tbody><tr><th class="align-center">**Sigla**</th><th class="align-center">**Laboratório**</th><th class="align-center">**Nº de computadores**</th></tr><tr><td class="align-center">LAI 1</td><td class="align-center">Laboratório de Apoio Informático 1</td><td class="align-center">20</td></tr><tr><td class="align-center">LAI 2</td><td class="align-center">Laboratório de Apoio Informático 2</td><td class="align-center">20</td></tr><tr><td class="align-center">LAI 3</td><td class="align-center">Laboratório de Apoio Informático 3</td><td class="align-center">30</td></tr><tr><td class="align-center">LMI</td><td class="align-center">Laboratório de Medidas e Instrumentação</td><td class="align-center">12</td></tr><tr><td class="align-center">LSD</td><td class="align-center">Laboratório de Sistemas Digitais</td><td class="align-center">15</td></tr><tr><td class="align-center">LSRC</td><td class="align-center">Laboratório de Sistemas e Redes de Computadores</td><td class="align-center">20</td></tr><tr><td class="align-center">LT</td><td class="align-center">Laboratório de Telecomunicações</td><td class="align-center">5</td></tr><tr><td class="align-center">LH</td><td class="align-center">Laboratório de Hiperfrequências</td><td class="align-center">5</td></tr></tbody></table>

</div></div>Os docentes podem requerer a qualquer momento a instalação de software adicional, através do serviço de helpdesk@deec.uc.pt. No início de cada semestre, os pedidos deverão ser feitos com antecedência adicional, uma vez que são momentos com elevadas requisições.

# Impressão e Cópias



# Impressão & Cópias

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-o-deec-disponibiliza"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>O DEEC disponibiliza aos seus colaboradores um moderno sistema de cópias e impressão, cujos detalhes de funcionamento se explicam neste documento.</div><div>  
</div><div>  
</div></div></div>Para efeitos de configuração nos computadores, existem 3 impressoras virtuais, cujos nomes e função são:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-cacifoscolor%C2%A0%E2%80%93-a-imp"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>- **CacifosColor** – A impressão a cores sairá na seguinte impressora física: Konica Minolta C368
- **CacifosGrayscale** – A impressão a preto &amp; branco sairá numa das seguintes impressoras físicas: Konica Minolta C368 ou Konica Minolta 284e. Caso imprima a cores, a impressão será automaticamente convertida para preto &amp; branco.
- **Gab-3a4** – A impressão a preto &amp; branco ou cores, consoante definido pelo utilizador, sairá na seguinte impressora física: Konica Minolta C280

</div></div></div>As vantagens inerentes a esta implementação são:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-o-hardware-espec%C3%ADfic"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>- O hardware específico fica abstraído do utilizador, o que significa que em caso de avaria, não é necessário voltar a instalar drivers específicos;
- É possível efectuar balanceamento transparente para o utilizador, com vantagens evidentes em momentos de pico de utilização;
- O Duplex está activo por defeito em todas as impressoras;
- Melhoria do impacto ambiental;
- Redução global de custos de impressão;

</div></div></div>Os manuais de configuração estão disponíveis em:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-windows-linux"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>- [Windows](https://kb.deec.uc.pt/books/deec/page/instalacao-de-impressora-papercut-no-windows "https://helpdesk.deec.uc.pt/help/pt-pt/42/94")
- [Linux](https://kb.deec.uc.pt/books/deec/page/instalacao-de-impressora-papercut-no-linux "https://helpdesk.deec.uc.pt/help/pt-pt/42/95")

</div></div></div>As especificações dos equipamentos físicos são apresentados na tabela seguinte:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-equipamentos-local-c"><div class="knowledge-base-article-content richtext-content js-answer-body"><div class="align-center"><table align="center" border="0" cellpadding="5" cellspacing="1" class=" align-center" style="width: 63.2099%; height: 320.75px;"><tbody><tr style="height: 29.7969px;"><th align="left" style="width: 28.18%; height: 29.7969px;"> **Equipamentos**</th><th align="left" style="width: 22.7006%; height: 29.7969px;"> **Local**</th><th align="center" style="width: 25.636%; height: 29.7969px;">**Características**</th><th align="right" style="width: 23.4834%; height: 29.7969px;">**Custo / página**</th></tr><tr style="height: 96.9844px;"><td style="width: 28.18%; height: 96.9844px;">Konica Minolta C368 </td><td style="width: 22.7006%; height: 96.9844px;">Sala dos Cacifos</td><td style="width: 25.636%; height: 96.9844px;">– A3  
– Laser  
– Cores  
– Duplex  
– Scan para e-mail</td><td align="right" class="align-right" style="width: 23.4834%; height: 96.9844px;">P&amp;B = 0.003€ Cores = 0.03€

</td></tr><tr style="height: 96.9844px;"><td style="width: 28.18%; height: 96.9844px;">Konica Minolta 284e</td><td style="width: 22.7006%; height: 96.9844px;">Sala dos Cacifos</td><td style="width: 25.636%; height: 96.9844px;">– A3  
– Laser  
– Preto &amp; Branco  
– Duplex  
– Scan para e-mail</td><td align="right" style="width: 23.4834%; height: 96.9844px;">P&amp;B = 0.003€ Cores = 0.03€

</td></tr><tr style="height: 96.9844px;"><td style="width: 28.18%; height: 96.9844px;">Konica Minolta C280</td><td style="width: 22.7006%; height: 96.9844px;">Gabinete 3A.4</td><td style="width: 25.636%; height: 96.9844px;">– A3  
– Laser  
– Cores  
– Duplex  
– Scan para e-mail</td><td align="right" style="width: 23.4834%; height: 96.9844px;">P&amp;B = 0.004€ Cor = 0.04€

</td></tr></tbody></table>

</div></div></div>*\* Valores com IVA incluído*

**LINKED TICKETS <span class="badge">2</span>**

<div class="knowledge-base-article-linked-tickets js-answer-linked-tickets" id="bkmrk-linked-tickets%C2%A02-pro"><div class="attachments attachments--list"><div class="tasks tasks--standalone"><div class="task"><div class="task-text">[Problemas com a impressora do DEEC](https://helpdesk.deec.uc.pt/#ticket/zoom/398)</div><div class="task-text"><time class="humanTimeFromNow time" datetime="2020-04-08T09:31:18.526Z" title="08/04/2020 10:31">08/04/2020</time></div></div><div class="task"><div class="task-text">  
</div><div class="task-text">[Preparação Portátil Asus ZenBook 14](https://helpdesk.deec.uc.pt/#ticket/zoom/437)</div><div class="task-text"><time class="humanTimeFromNow time" datetime="2020-04-15T13:31:05.900Z" title="15/04/2020 14:31">15/04/2020</time></div></div></div></div></div>

# Instalação de impressora Papercut no Linux

### Introdução

Neste documento vai ser apresentado passo a passo a instalação das impressoras da sala dos cacifos e do gabinete 3A4 no Linux e Mac OS X através do CUPS.

Para a instalação da impressora é necessário fazer o download dos drivers em [https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk](https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk)

### Instalação do cliente PaperCut

 **Nota:** Não é possível imprimir sem o cliente do PaperCut.

- **Linux**

Extrair a pasta dos drivers para “/opt/papercut/” e de seguida adicionar o cliente do PaperCut ao arranque do sistema operativo.

Nome: PCClient  
Command: /opt/papercut/drivers/client/linux/pc-client-linux.sh

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2296)

- **Mac OS X**

Executar o instalador **client-local-install** localizado na pasta “drivers\\client\\mac” do ficheiro ZIP.

Se aparecer o erro “can’t be opened because it is from an unidentified developer.”, ir a System Preferences &gt; Security &amp; Privacy e em “Allow applications downloaded from:”, selecionar “Anywhere”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2297)

Para o cliente do PaperCut arrancar automaticamente com o sistema operativo é necessário ir a System Preferences &gt; Users &amp; Groups e em “Login Items”, e adicionar o PCClient à lista (clicar no “+”).

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2298)

Após a instalação, introduzir as suas credenciais do DEEC.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2299)

### **Instalação da impressora**

**1-** Abrir o Terminal e correr o comando “sudo cupsctl WebInterface=yes”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2300)

**2-** Através do browser aceder ao endereço: [http://localhost:631/](http://localhost:631/). Ir ao separador “Administration” e “clicar em Add Printer”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2301)

**3-** Introduzir as credenciais do seu Mac.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2302)

**4-** Selecionar “Internet Printing Protocol (https)”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2303)

**5-** No campo “Connection” introduzir o endereço da impressora que pretende instalar:

- Impressora a cores da sala dos cacifos: [http://print.deec.uc.pt:631/printers/CacifosColor](http://print.deec.uc.pt:631/printers/CacifosColor)
- Impressora a preto e branco da sala dos cacifos: [http://print.deec.uc.pt:631/printers/CacifosGrayscale](http://print.deec.uc.pt:631/printers/CacifosGrayscale)
- Impressora a cores do gabinete 3A4: [http://print.deec.uc.pt:631/printers/gab-3a4](http://print.deec.uc.pt:631/printers/gab-3a4)
- <div>Impressora a cores do GRI: [http://print.deec.uc.pt:631/printers/gri](http://print.deec.uc.pt:631/printers/gri "http://print.deec.uc.pt:631/printers/gri")</div>

<div id="bkmrk--15">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2304)  
</div><div id="bkmrk--16">  
</div><div id="bkmrk-6-%C2%A0preencher-os-segu">**6-** Preencher os seguintes campos:   
</div><div id="bkmrk--17">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2305)  
</div><div id="bkmrk--18">  
</div><div id="bkmrk-7-%C2%A0selecionar-no-cam">**7-** Selecionar no campo Make selecionar a opção Generic e de seguida selecionar o driver “Generic PostScript Printer (en)”:   
</div><div id="bkmrk--19">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2306)  
</div><div id="bkmrk--20">  
</div><div id="bkmrk-8-%C2%A0selecionar-as-op%C3%A7">**8-** Selecionar as opções conforme a imagem:   
</div><div id="bkmrk--21">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2307)  
</div><div id="bkmrk--22">  
</div><div id="bkmrk-9-%C2%A0abrir-o-separador">**9-** Abrir o separador Options Installed e no campo Duplexer, selecionar a opção Installed. Por fim clicar em Set Default Options.   
</div><div id="bkmrk--23">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2308)</div>

# Instalação de impressora Papercut no macOS OSX

### Introdução

<div id="bkmrk-"><div><div>  
</div></div></div>Neste documento vai ser apresentado passo a passo a instalação das impressoras da sala dos cacifos e do gabinete 3A4 no Linux e Mac OS X através do CUPS.

Para a instalação da impressora é necessário fazer o download dos drivers em:  
[https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk](https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk)

Executar o instalador **client-local-install** localizado na pasta “drivers\\client\\mac” do ficheiro ZIP.

Se aparecer o erro “can’t be opened because it is from an unidentified developer.”, ir a System Preferences &gt; Security &amp; Privacy e em “Allow applications downloaded from:”, selecionar “Anywhere”.

Se aparecer o erro "ditto: can't get real path for source", copie o instalador para a pasta de Aplicações e execute novamente.

[![image-1661504609281.03.00.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-08/scaled-1680-/image-1661504609281-03-00.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-08/image-1661504609281-03-00.png)

Para o cliente do PaperCut arrancar automaticamente com o sistema operativo é necessário ir a System Preferences &gt; Users &amp; Groups e em “Login Items”, e adicionar o PCClient à lista (clicar no “+”).

[![image-1661504798640.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-08/scaled-1680-/image-1661504798640.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-08/image-1661504798640.png)

Após a instalação, introduzir as suas credenciais do DEEC.

### **Instalação da impressora**

**1-** Abrir o Terminal e correr o comando “sudo cupsctl WebInterface=yes”:

**2-** Através do browser aceder ao endereço: [http://localhost:631/](http://localhost:631/). Ir ao separador “Administration” e “clicar em Add Printer”.

**3-** Introduzir as credenciais do seu Mac.

**4-** Selecionar “Internet Printing Protocol (http)”.

**5-** No campo “Connection” introduzir o endereço da impressora que pretende instalar:

- Impressora a cores da sala dos cacifos: [http://print.deec.uc.pt:631/printers/CacifosColor](http://print.deec.uc.pt:631/printers/CacifosColor)
- Impressora a preto e branco da sala dos cacifos: [http://print.deec.uc.pt:631/printers/CacifosGrayscale](http://print.deec.uc.pt:631/printers/CacifosGrayscale)
- Impressora a cores do gabinete 3A4: [http://print.deec.uc.pt:631/printers/gab-3a4](http://print.deec.uc.pt:631/printers/gab-3a4)

<div id="bkmrk--15">  
</div><div id="bkmrk--2"></div><div id="bkmrk-6-%C2%A0preencher-os-segu">**6-** Preencher os seguintes campos:   
</div><div id="bkmrk--17">  
</div><div id="bkmrk--18">  
  
</div><div id="bkmrk--19">  
</div><div id="bkmrk-7-%C2%A0selecionar-no-cam">**7-** Selecionar no campo Make selecionar a opção Generic e de seguida selecionar o driver “Generic PostScript Printer (en)”:   
</div><div id="bkmrk--20">  
</div><div id="bkmrk--21">  
  
</div><div id="bkmrk--22">  
</div><div id="bkmrk-8-%C2%A0selecionar-as-op%C3%A7">**8-** Selecionar as opções conforme a imagem:   
</div><div id="bkmrk--23">  
</div><div id="bkmrk--24">  
</div><div id="bkmrk--25">  
</div><div id="bkmrk-9-%C2%A0abrir-o-separador">**9-** Abrir o separador Options Installed e no campo Duplexer, selecionar a opção Installed. Por fim clicar em Set Default Options.   
</div><div id="bkmrk--26">  
</div><div id="bkmrk--27">  
</div><div id="bkmrk--4"></div><div id="bkmrk--6"></div><div id="bkmrk--28">[![image-1661504819615.20.35.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-08/scaled-1680-/image-1661504819615-20-35.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-08/image-1661504819615-20-35.png)</div>

# Instalação de impressora Papercut no Windows

### Introdução

Neste documento vai ser apresentado passo a passo a instalação das impressoras da sala dos cacifos e do gabinete 3A4 no Windows.

### Atualização de versão

<div id="bkmrk-caso-j%C3%A1-tenha-uma-ve">Caso já tenha uma versão anterior, deverá obrigatoriamente remover a anterior antes de executar os passos de instalação a seguir descritos.</div>### Instalação da impressora

**1 –** Para a instalação das impressoras é necessário fazer o download dos drivers do Software Papercut, disponível em:

<div id="bkmrk-https%3A%2F%2Fdrive.deec.u"><div>[https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk](https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk "https://drive.deec.uc.pt/d/s/oMJHHXizotI32KGY2YyDqeds9hwMwFEc/Hz08uEHVqhhO2wzlXuS9ECGJ6XhpruYO-OrRAKAbQfwk")</div></div><div id="bkmrk--1">  
</div>**2 -** **<u>Descompactar o ficheiro</u>** (se executar diretamente do ficheiro compactado vai falhar) e executar o instalador **client-local-install.exe** localizado na pasta “drivers\\client\\win”

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2287)

**3-** Introduzir as suas credenciais do DEEC.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2288)

**4-** Posteriormente, aceda ao Painel de Controlo, opção “Ver dispositivos e impressoras” e seleccione a opção “Adicionar nova impressora”.

**5-** Na janela que se irá abrir (Adicionar um dispositivo), clique em “A impressora que pretendo não se encontra listada”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2289)

**6-** Seguidamente seleccione a opção “Selecionar uma impressora partilhada pelo nome” e introduzir o endereço da impressora que pretende instalar:

- Impressora a cores da sala dos cacifos: [http://print.deec.uc.pt:631/printers/CacifosColor](http://print.deec.uc.pt:631/printers/CacifosColor)
- Impressora a preto e branco da sala dos cacifos: [http://print.deec.uc.pt:631/printers/CacifosGrayscale](http://print.deec.uc.pt:631/printers/CacifosGrayscale)
- Impressora a cores do gabinete 3A4: [http://print.deec.uc.pt:631/printers/gab-3a4](http://print.deec.uc.pt:631/printers/gab-3a4)
- <div>Impressora a cores do GRI: [http://print.deec.uc.pt:631/printers/gri](http://print.deec.uc.pt:631/printers/gri "http://print.deec.uc.pt:631/printers/gri")</div>
- <div>Impressora Secretaria: [http://print.deec.uc.pt:631/printers/konica\_283\_secretaria](http://print.deec.uc.pt:631/printers/konica_283_secretaria "http://print.deec.uc.pt:631/printers/konica_283_secretaria")</div>

<div id="bkmrk--8">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2290)  
</div><div id="bkmrk--9">  
</div><div id="bkmrk-7%E2%80%93-seguidamente-cliq">**7**– Seguidamente clique no botão “Disco” e escolha o driver que efectuou download no primeiro passo deste manual.   
</div><div id="bkmrk--10">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2291)  
</div><div id="bkmrk--11">  
</div><div id="bkmrk-8-%C2%A0seleccione-o-driv">**8-** Seleccione o driver na pasta “drivers\drivers\win\PC-Global-Print-Driver” e clique em seguinte.   
</div><div id="bkmrk--12">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2292)  
</div><div id="bkmrk--13">  
</div><div id="bkmrk--14">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2293)  
</div><div id="bkmrk--15">  
</div>Neste momento a impressora encontra-se instalada com sucesso.

### Impressão duplex por omissão

Para efectuar impressões duplex por omissão é necessário efectuar os seguintes passos:

**1 –** Aceder ao painel de controlo.

**2 –** Com o botão direito do rato na impressora pretendida, seleccionar a opção “Preferências de impressão”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2294)

**3 –** Na janela “Preferências de impressão”, seleccionar o separador “Esquema” e na dropdown “Imprimir nos dois lados”, usar a opção “Virar pela margem mais larga” ou “Virar pela margem mais estreita”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2295)

Desta forma, as impressões que fizer irão obter por omissão estas definições.

# Rede & Conectividade



# Ligar à rede DEEC-Guests

**Seguindo os passos deste documento, será possível estabelecer uma ligação à rede DEEC-Guests:**

- Primeiramente, ir à lista de redes disponíveis e ligar à rede “DEEC-Guests”.

<div id="bkmrk-">![](https://helpdesk.deec.uc.pt/api/v1/attachments/20720)  
</div><div id="bkmrk--0">  
</div>- De seguida, introduzir o código do voucher na página que aparecerá automaticamente no seu browser depois do passo anterior.
- Para obter o **código do voucher** terá de fazer o pedido do mesmo através do endereço de e-mail <helpdesk@deec.uc.pt> ou presencialmente, no Gabinete da Rede Informática, piso 2.


<div id="bkmrk--1">![](https://helpdesk.deec.uc.pt/api/v1/attachments/20721)</div>

# Network Time Protocol (NTP)

O serviço de NTP destina-se a sincronizar a hora entre os diversos equipamentos da rede. O gabinete de Gestão da Rede Informática (GRI) mantém uma referência de tempo (ntp.deec.uc.pt), sincronizada com os servidores de tempo centrais da Universidade de Coimbra e com outras referências de nível superior. Os equipamentos que pretenderem, poderão sincronizar com esta referência local, por forma a manterem o seu relógio constantemente actualizado e sincronizado.

Para ter acesso ao serviço, os utilizadores deverão configurar o cliente NTP do dispositivo, apontando para o servidor ntp.deec.uc.pt (ou 193.136.205.254).

# Política de Utilização da Rede

<div id="bkmrk-para-utilizar-os-rec"><div><div>Para utilizar os recursos informáticos existentes no Departamento de Engenharia Electrotécnica e de Computadores (DEEC) da FCTUC, é necessário conhecer a política de utilização da rede, apresentada nesta página.</div><div>  
</div><div>  
</div></div></div>Estas normas existem para garantir a correcta disponibilidade dos recursos para todos os utilizadores, protegendo-os de eventuais problemas causados pela má utilização dos recursos.

#### A) Direitos e Deveres dos Utilizadores

<div id="bkmrk-as-contas-atribu%C3%ADdas"><div><div>1. As contas atribuídas aos utilizadores são propriedade do DEEC;
2. Só poderão usufruir de uma conta os alunos e colaboradores da Universidade de Coimbra;
3. Os utilizadores ficam conscientes de que a sua conta é pessoal, não podendo ceder a sua utilização a terceiros;
4. O utilizador é responsável pela conservação das máquinas, terminais e outros equipamentos de rede que utiliza;
5. O utilizador tem conhecimento da lei da criminalidade informática nº 109/91 publicada em 17 de Agosto de 1991 que contempla, entre outras, as seguintes infracções: 
    - Adulteração ou sabotagem de dados, programas ou sistemas informáticos;
    - Acesso não autorizado a redes e sistemas informáticos;
    - Intercepção ilegítima de programas e/ou dados;
    - Reprodução e divulgação ilegítimas de programas;
    - Que qualquer tentativa de infracção, mesmo não consumada, é igualmente punível por lei;

</div></div></div>#### B) Normas de Utilização

<div id="bkmrk-encontra-se-interdit"><div><div>1. Encontra-se interdita a utilização de software de intercepção de passwords de outros utilizadores;
2. Encontra-se interdito o acesso ou tentativa de acesso a contas de outros utilizadores;
3. Encontra-se interdita a instalação de software em equipamentos do Departamento, assim como a configuração/reconfiguração de equipamentos externos ou internos, sem conhecimento prévio do Gabinete de Gestão da Rede Informática (GRI);
4. Encontra-se interdita a alteração das características físicas dos equipamentos do Departamento, assim como a alteração da sua localização, sem conhecimento prévio do GRI;
5. Encontra-se interdita a utilização de programas que resultem em DoS (Denial of Service) e consequentes interrupções de serviços na rede;
6. Encontra-se interdita a disseminação de todo e qualquer conteúdo ilícito (incluindo jogos, *software* e música, publicidade, pornografia, conteúdos protegidos por copyright, virus/worms, etc) com recurso a contas do DEEC e/ou na rede do Departamento;
7. Encontra-se interdita a utilização de software P2P (peer-to-peer);
8. É da responsabilidade dos utilizadores garantir que a sua conta não seja utilizada por terceiros, pelo que deverá adoptar medidas tais como: terminar sessão sempre que se ausenta de um equipamento, utilizar uma password segura, alterar a password com regularidade e não transmitir a mesma a terceiros;

</div></div></div>#### C) Boas Práticas de Utilização de Rede

<div id="bkmrk-o-utilizador-deve-ev"><div><div>1. O utilizador deve evitar atingir os limites de quotas atribuídos em cada sistema, fazendo uma boa gestão de conteúdos da conta e do seu correio electrónico;
2. O utilizador deve evitar a disseminação de ficheiros de grande dimensão para um grupo alargado de utilizadores;
3. O utilizador deve evitar o recurso a software de elevado consumo de largura de banda, em horários de pico de utilização, que possam interferir com o desempenho e funcionamento da rede. Em situações desta natureza, o GRI reserva-se ao direito de terminar processos em curso, sem aviso prévio;
4. O utilizador deve evitar que a sua conta seja um meio de propagação de todo e qualquer tipo de ‘Spam’;
5. O utilizador deve evitar o recurso à conta do DEEC para registo em websites que não tenham uma finalidade académica e/ou profissional;

</div></div></div>#### D) Sanções

Os utilizadores que incorram em incumprimento das determinações expressas na política de utilização da rede, estarão sujeitos a sanções internas, além das punições constantes da legislação em vigor:

<div id="bkmrk-suspens%C3%A3o-tempor%C3%A1ria"><div><div>1. Suspensão temporária da conta de utilizador, caso se verifique utilização indevida da mesma;
2. Cancelamento da conta de utilizador, em casos de gravidade extrema;
3. Comunicação às autoridades competentes de situações que resultem na prática de crime;

</div></div></div>#### E) Controlo de Utilização

<div id="bkmrk-a-verifica%C3%A7%C3%A3o-da-cor"><div><div>1. A verificação da correta utilização de recursos e do cumprimento de todas as indicações supracitadas encontra-se a cargo do GRI, serviço que deverá contactar em caso de dúvida.

</div></div></div>*Última actualização: 19 de Maio de 2015*

# Voz (IP)

### Serviço de Voz sobre IP

O DEEC dispõe de uma infra-estrutura de voz sobre IP, que veio substituir a anterior infra-estrutura de voz analógica.

Este serviço está integrado na infra-estrutura da Universidade de Coimbra, sendo por isso possível efectuar chamadas internas entre edifícios e departamentos dentro da mesma.

O prefixo do DEEC é o 42.

Em qualquer momento, pode consultar a lista telefónica em:

[http://web.deec.uc.pt/telefones](http://web.deec.uc.pt/telefones)

### Equipamentos

Os equipamentos terminal instalados são todos SNOM 300 / SNOM 710 e possuem um conjunto de funcionalidades modernas para conforto do utilizador:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-desvio-de-chamada-du"><div class="knowledge-base-article-content richtext-content js-answer-body">- Desvio de chamada
- Duas linhas de entrada
- Duas linhas de saída
- Identificação do chamador
- Livro de Endereços
- Mãos Livres
- Melhor qualidade de som
- Personalização de toques de chamada
- Registo de chamadas efectuadas
- Registo de chamadas não atendidas
- Rejeição de chamada
- Conferências

</div></div>### Manuais &amp; Guias

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-ver-anexos-no-fundo-"><div class="knowledge-base-article-content richtext-content js-answer-body">- [Snom 300](https://kb.deec.uc.pt/attachments/60)
- [Snom 710](https://kb.deec.uc.pt/attachments/60)

</div></div>### Custos das chamadas

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-destino-custo-%28euro%29"><div class="knowledge-base-article-content richtext-content js-answer-body align-center"><table align="center" border="0" cellpadding="5" cellspacing="1" class=" align-center"><tbody><tr><th align="left"> **Destino**</th><th align="left">**Custo (euro) / minuto**</th></tr><tr><td>Fixo Local</td><td>0,0070</td></tr><tr><td>Fixo Nacional</td><td>0,0070</td></tr><tr><td>Prefixo “96”</td><td>0,0200</td></tr><tr><td>Prefixo “922”</td><td>0,0200</td></tr><tr><td>Prefixo “924”</td><td>0,0200</td></tr><tr><td>Prefixo “925”</td><td>0,0200</td></tr><tr><td>Prefixo “926”</td><td>0,0200</td></tr><tr><td>Prefixo “927”</td><td>0,0200</td></tr><tr><td>Prefixo “91”</td><td>0,0280</td></tr><tr><td>Prefixo “921”</td><td>0,0280</td></tr><tr><td>Prefixo “929”</td><td>0,0280</td></tr><tr><td>Prefixo “93”</td><td>0,0300</td></tr><tr><td>Fixo-móvel nacional 31</td><td>0,0450</td></tr><tr><td>Nómada</td><td>0,0070</td></tr><tr><td>Fixo Espanha</td><td>0,0145</td></tr><tr><td>Fixo Europa Zona 18</td><td>0,0121</td></tr><tr><td>Fixo Restante Europa</td><td>0,0290</td></tr><tr><td>Fixo EUA e Canadá</td><td>0,0121</td></tr><tr><td>Fixo Brasil e Venezuela</td><td>0,0218</td></tr><tr><td>Fixo Restante América</td><td>0,1557</td></tr><tr><td>Fixo Marrocos</td><td>0,0192</td></tr><tr><td>Fixo África Zona 115</td><td>0,1090</td></tr><tr><td>Fixo Restante África</td><td>0,1557</td></tr><tr><td>Fixo Austrália</td><td>0,0178</td></tr><tr><td>Fixo Resto do Mundo</td><td>0,1175</td></tr><tr><td>Móvel Europa Zona 120</td><td>0,0560</td></tr><tr><td>Móvel Restante Europa</td><td>0,0970</td></tr><tr><td>Móvel EUA, Canadá, Brazil e Venezuela</td><td>0,1570</td></tr><tr><td>Móvel Restante América</td><td>0,1420</td></tr><tr><td>Móvel África Zona 125</td><td>0,1220</td></tr><tr><td>Móvel Restante África</td><td>0,2236</td></tr><tr><td>Móvel Austrália</td><td>0,1126</td></tr><tr><td>Móvel Resto do Mundo</td><td>0,1175</td></tr><tr><td>Satélite</td><td>1,9989</td></tr></tbody></table>

</div></div>*Data: 2/4/2012 (Válido até 2015, sujeito a revisão anual)*

# Segurança



# Acesso ao departamento

## Acesso fora de horas

O acesso ao Departamento, fora do horário normal de funcionamento, é feito através de um sistema biométrico.

#### PODEM REQUERER ESTE TIPO DE ACESSO OS SEGUINTES GRUPOS:

– alunos de dissertação de mestrado;  
– estudantes Erasmus;  
– alunos de pós-graduação;  
– alunos de doutoramento;  
– organizações estudantis sediadas no DEEC (NEEC, BEST,?);  
– estudantes representantes do respectivo curso junto do Coordenador;  
– investigadores;  
– funcionários;  
– alunos-investigadores;  
– outros sob pedido fundamentado;  
– docentes internos e externos.

#### PROCEDIMENTO:

1º) Aceder ao formulário através do seguinte [endereço](http://web.deec.uc.pt/go/acessos "http://web.deec.uc.pt/go/acessos");  
2º) Preenchê-lo de acordo com as instruções;  
3º) Aguardar resposta via e-mail, onde será contactado para se dirigir ao Gabinete de Rede Informática, caso não tenho ainda registo de acesso no departamento.

# Autenticação & Password

<div id="bkmrk-o-deec-possui-um-sis">O DEEC possui um sistema de autenticação centralizada, ou seja, um sistema único de identificação, que permite a todos os seus utilizadores aceder aos vários serviços informáticos, usando as mesmas credenciais de autenticação – o mesmo nome de utilizador e palavra-chave.</div><div id="bkmrk-">  
</div><div id="bkmrk-dado-o-grau-de-criti">Dado o grau de criticidade desta palavra-chave, que permite aceder a múltiplos serviços informáticos, foram estabelecidas as seguintes regras:</div><div id="bkmrk-a%C2%A0palavra-chave%C2%A0deve">  
- A palavra-chave deve ter obrigatoriamente no mínimo oito carateres e três variantes distintas (letras maiúsculas, minúsculas, algarismos e pontuação);

- A palavra-chave deve ser renovada periodicamente pelo utilizador;

Pode alterar a sua password através do endereço [https://password.deec.uc.pt](https://password.deec.uc.pt/)</div>

# Serviços



# Aula via plataforma Colibri Zoom

A FCCN disponibiliza à comunidade académica e científica de Portugal um serviço para colaboração à distância, denominado Colibri.

O Colibri utiliza a plataforma cloud Zoom e é um serviço de colaboração Web que disponibiliza um ambiente propício para a realização de aulas e reuniões à distância. A plataforma é um ponto central de colaboração que permite realizar sessões de videoconferência com participantes de múltiplas instituições. Fornece um ambiente seguro e intuitivo que inclui ferramentas de gestão, partilha e gravação de sessões.

Neste documento descrevem-se, de forma sistemática, os passos necessários à criação de uma aula.

#### **Licenciamento Pro**

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-o-licenciamento-pro-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>O licenciamento Pro está disponível ao abrigo da pertença à RCTS.</div><div>Para obtenção deste licenciamento, é necessário usar uma conta @[uc.pt](http://uc.pt/ "http://uc.pt").</div><div>O Colibri, trabalha com contas flutuantes, para todos os membros da rede RCTS. A contas Pro/Licensed são válidas até duas horas após ter sido realizado o login federado na plataforma. Caso não esteja em reunião duas horas após o login a sua conta irá ser reduzida para BASIC. Terá de voltar a proceder à autenticação, sempre que quiser moderar uma nova reunião.</div><div>Quando acede ao Zoom e se autentica com as suas credenciais da federação RCTSaai terá automaticamente acesso aos privilégios de uma conta Pro. Caso tal não aconteça, confirme em primeiro lugar se se autenticou no Zoom usando as mesmas credenciais que usa quando acede aos serviços da sua instituição. Caso o tenha feito e mesmo assim a sua conta continue como Basic, agradecemos que entre em contacto com o serviço COLIBRI, usando os contactos na página de contactos.</div></div></div>#### **Recomendações a transmitir aos Alunos**

Recomendam-se as seguintes boas práticas de utilização de qualquer ferramenta de colaboração online, com vista a uma melhor experiência:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-dar-prefer%C3%AAncia-%C3%A0-ut"><div class="knowledge-base-article-content richtext-content js-answer-body">- Dar preferência à utilização de um computador em detrimento de smartphones ou tablets. A qualidade global da rede conseguida é tipicamente superior e o tamanho de ecrã maior permite uma aula mais imersiva e a garantia de leitura dos conteúdos que o Docente está a apresentar (apresentações, etc.).
- Escolher um local o mais perto possível do Router ou Access Point, para garantir a melhor qualidade de sinal possível.
- Evitar a utilização de ligações móveis (3G, 4G, etc.) e ADSL, dado que as mesmas não possuem as mesmas larguras de banda e garantias de qualidade de rede de uma ligação banda larga.
- Evitar deslocar os equipamentos no decorrer da aula, para evitar a degradação do sinal Wi-Fi e quebras de ligação.

<div>  
</div></div></div>#### **Acesso ao serviço e processo de autenticação**

Aceder ao endereço web do serviço, através do endereço:

[https://videoconf-colibri.zoom.us/](https://videoconf-colibri.zoom.us/)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--1"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div></div></div>Para agendar uma aula, usar a opção “Agendar”:![](https://helpdesk.deec.uc.pt/api/v1/attachments/1880)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--2"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div></div></div>No passo seguinte, deverá autenticar-se com as suas credenciais da Universidade de Coimbra:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--3"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1901)  
</div><div>  
</div></div></div>Após a autenticação sucedida, deverá receber a seguinte janela, com os seus dados, que deverá aceitar:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--5"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div><div><div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1902)</div>  
</div></div></div></div><div>  
</div><div>  
</div></div></div>Na próxima fase, deverá autorizar um envio de um e-mail para a sua conta associada, para verificação de segurança e associação da conta Zoom ao seu endereço de e-mail:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--6"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1882)</div>  
  
</div></div></div>Deverá, então, verificar a sua caixa de correio e pressionar o botão contido no e-mail para validar a recepção do e-mail de segurança:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/1908)

Deverá aceitar as condições do convite, pressionando o botão azul:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/1883)

**Está concluído o processo inicial de configuração da sua conta.**

#### **Agendamento de sessão para aula**

Neste contexto, devido à natureza do licenciamento da FCCN no serviço Zoom, o utilizador poderá, no momento de autenticação na plataforma, obter um seguintes tipos de conta:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-conta-b%C3%A1sica---permi"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>- Conta Básica - Permite realizar uma sessão/aula com limite máximo de 100 participantes e de 40 minutos por sessão (expirado este tempo, a sessão termina e é necessário entrar novamente na reunião com o mesmo ID);
- Conta Pro - Permite realizar um sessão/aula com limite máximo de 300 participantes, sem limite de duração.

</div></div></div>Aceder ao endereço web do serviço, através do endereço:

[https://videoconf-colibri.zoom.us/](https://videoconf-colibri.zoom.us/)

Autenticar-se, conforme indicações atrás. Seguidamente, preencha os campos assinalados com caixas a vermelho, com vista a marcar a sua sessão, nomeadamente:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-nome-da-aula-data-e-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>- Nome da aula
- Data e hora da aula
- Fuso horário associado

</div></div></div><div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--12"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1884)</div><div>  
</div></div></div>E também os seguintes:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-gera%C3%A7%C3%A3o-de-endere%C3%A7o-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>- Geração de endereço web automático para a aula
- Permissão de vídeo por parte do Docente (Host) e dos Alunos (Participant)
- No exemplo abaixo, está activa a câmara para o Docente e inactiva para os Alunos

- Audio via computador, desactivação de chamada telefónica por razões de segurança
- Iniciar a sessão com áudio desligado para os alunos
- Activar sala de espera virtual para os Alunos que cheguem antes do Docente

![](https://helpdesk.deec.uc.pt/api/v1/attachments/1885)  
</div></div></div>Por fim, active o botão azul, para gravar o agendamento da aula:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--15"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1903)</div>  
</div><div>  
</div></div></div>Após gravação da sessão, surge uma janela com o resumo das definições gravadas:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--16"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1886)  
</div></div></div>Deverá, agora, utilizar o botão “Copiar o convite”, para copiar o endereço (URL) da aula e enviar o mesmo para os Alunos, através de um qualquer canal de comunicação (E-mail, NONIO, etc.).

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--17"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
  
</div></div></div>#### **Inicio da Aula**

Para iniciar a aula, utilize o botão azul: “Iniciar esta Reunião”:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--19"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1887)  
  
</div></div></div>Será então descarregado o software necessário e iniciada a aplicação:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--20"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1870)</div><div>  
</div></div></div>Quando os alunos entrarem na aula, deverá admitir a sua entrada, através do botão azul:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/1888)

Para partilhar conteúdos do seu computador (ecrã total, apresentações, etc.), pressionar o botão “Compartilhar tela”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/1889)

Para interromper a partilha de ecrâ, pressionar o botão “Interromper Compartilhamento”, a vermelho:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--28"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1890)</div><div>  
</div></div></div>**A perspectiva do Aluno…**

O Aluno deverá utilizar o endereço (URL) da Aula que recebeu, da parte do Docente, copiar e colá-lo no browser. Será, então, descarregado o software necessário e iniciada a aplicação:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--29"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1874)  
</div></div></div><div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--31"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>Neste ponto, introduza o seu nome e número de aluno no formato:</div></div></div><p class="callout info">Primeiro\_Nome Último\_Nome (Número\_Aluno)</p>

<p class="callout info">Por exemplo: João Ferreira (2019123567)</p>

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--33"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1891)  
</div></div></div>Aceitar os termos e condições do serviço Zoom:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--36"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1876)  
</div></div></div>Deverá aceitar a entrada na aula, pressionando o botão azul para ingressar na aula:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--38"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1892)  
</div></div></div>Aqui, surgirá uma janela com a aula:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--41"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1893)</div>  
  
</div></div></div>**Configuração Áudio**

Pode configurar quais os dispositivos a utilizar para efeitos de entrada (microfone) e saída de som, pressionando o botão abaixo:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--42"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1894)</div>  
</div></div></div></div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk--44">**LINKED TICKETS <span class="badge">1</span>**</div><div class="knowledge-base-article-linked-tickets js-answer-linked-tickets" id="bkmrk-linked-tickets%C2%A01-man"><div class="attachments attachments--list"><div class="tasks tasks--standalone"><div class="task"><div class="task-text">**[Manual Zoom - Conta Pro](https://helpdesk.deec.uc.pt/#ticket/zoom/345)**</div><div class="task-text"><time class="humanTimeFromNow time" datetime="2020-03-30T20:31:23.162Z" title="30/03/2020 21:31">30/03/2020</time></div></div></div></div></div>

# Boas Práticas exame.DEEC

<div id="bkmrk-para-uma-melhor-util">Para uma melhor utilização da plataforma exame.DEEC, sugerimos as boas práticas abaixo, no contexto de algumas funcionalidades da plataforma:</div><div id="bkmrk-">  
</div><div id="bkmrk-file-manager%C2%A0%28https%3A">**File Manager** ([https://exame.deec.uc.pt/admin/code/tce\_filemanager.php](https://exame.deec.uc.pt/admin/code/tce_filemanager.php))</div><div id="bkmrk---usar-a-seguinte-es">- Usar a seguinte estrutura de pastas: CACHE / Nome completo da disciplina</div><div id="bkmrk---n%C3%A3o-colocar-nenhum">- Não colocar nenhum ficheiro na raíz</div><div id="bkmrk--0">  
</div><div id="bkmrk-estrutura-de-m%C3%B3dulos">**Estrutura de módulos** ([https://exame.deec.uc.pt/admin/code/tce\_edit\_module.php](https://exame.deec.uc.pt/admin/code/tce_edit_module.php))</div><div id="bkmrk---usar-a-seguinte-es-0"><div>- Usar a seguinte estrutura: / Nome completo da disciplina  
</div><div>  
</div></div><div id="bkmrk-grupos%C2%A0%28https%3A%2F%2Fexam">**Grupos** ([https://exame.deec.uc.pt/admin/code/tce\_edit\_group.php](https://exame.deec.uc.pt/admin/code/tce_edit_group.php))</div><div id="bkmrk---usar-o-seguinte-fo">- Se turma: Usar o seguinte formato: Ano Lectivo | Sigla Disciplina | Grupo (p.e. 2022-2023 | EII | Turma 1)</div><div id="bkmrk---se-todos-alunos-da">- Se todos alunos da cadeira: Usar o seguinte formato: Ano Lectivo | Sigla Disciplina (p.e. 2022-2023 | EII)</div><div id="bkmrk---apenas-a%C2%A0inform%C3%A1ti">- Apenas a Informática cria os grupos, a pedido dos Docentes</div>

# Ligação ao servidor Alunos via SFTP

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt ou @student.uc.pt</p>

Neste documento são apresentados os passos necessários para utilizar o servidor Alunos via SFTP para transferência de ficheiros.

**1 –** Efectuar o download e instalar o Cyberduck. Para efectuar o download clique [aqui](https://cyberduck.io/ "https://cyberduck.io/") (seleccionar Windows ou Mac OSX).

**2 –** Abrir o Cyberduck, clicar em Open Conection, seleccionar SFTP (SSH File Transfer Protocol) e de seguida preencher os campos conforme a imagem, utilizado os seu utilizador e respectiva password:

[![image-1676563442844.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-02/scaled-1680-/image-1676563442844.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-02/image-1676563442844.png)

**3 –** Clicar em Allow na janela seguinte.

[![image-1676559373960.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-02/scaled-1680-/image-1676559373960.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-02/image-1676559373960.png)

**4 –** Após a ligação estabelecida pode iniciar a transferência de ficheiros entre o servidor e a sua máquina.

[![image-1676559380729.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-02/scaled-1680-/image-1676559380729.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-02/image-1676559380729.png)

# Ligação aos servidores Home via FTP TLS/SSL

Neste documento são apresentados os passos necessários para aceder via FTP TLS/SSL aos servidores web.deec.uc.pt e home.deec.uc.pt.

**1 –** Efectuar o download e instalar o Cyberduck. Para efectuar o download clique [aqui](https://cyberduck.io/ "https://cyberduck.io/") (seleccionar Windows ou Mac OSX).

**2 –** Abrir o Cyberduck, clicar em Open Conection, seleccionar FTP-SSL (Explicit AUTH TLS) e de seguida preencher o endereço do servidor, assim com o seu utilizador e respectiva password:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/107)

**3 –** Após a ligação estabelecida pode iniciar a transferência de ficheiros entre o servidor e a sua máquina.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/108)

# My DEEC

<div id="bkmrk-a-plataforma-my-deec"><div><div id="bkmrk-a-plataforma-my-deec-0">A plataforma My DEEC é um sistema de informação evolutivo, de suporte interno às actividades do departamento, acessível por alunos, colaboradores docentes e não docentes, sendo composto pelas seguintes grandes áreas de funcionalidade (disponíveis consoante os privilégios de cada utilizador):</div><div id="bkmrk-"></div>- Académicos
- Arquivo de Documentação
- Contactos
- Edíficio
- Imagem &amp; Comunicação
- Informática
- Inventário
- Orgânica
- Secretariado

</div></div>Pode aceder a este sistema através do endereço (URL):  
[https://my.deec.uc.pt](https://my.deec.uc.pt/)

O login no sistema é o endereço de e-mail e a password é a que utiliza na conta de e-mail respectiva.

# Aula via plataforma Conference DEEC

No contexto da pandemia COVID-19, o DEEC disponibilizou um serviço para colaboração à distância, denominado Conference DEEC, para dar aos Docentes uma opção alternativa de comunicação com os Alunos.

O Conference.DEEC é baseado num conjunto de componentes open source que dá origem à plataforma Jitsi e é um serviço de colaboração Web que disponibiliza um ambiente propício para a realização de aulas e reuniões à distância. A plataforma é um ponto central de colaboração que permite realizar sessões de videoconferência com participantes em qualquer lugar. Fornece um ambiente seguro e intuitivo que inclui ferramentas de gestão, partilha e gravação de sessões.

Neste documento descrevem-se, de forma sistemática, os passos necessários à criação de uma aula.

**Recomendações a transmitir aos Alunos**

Recomendam-se as seguintes boas práticas de utilização de qualquer ferramenta de colaboração online, com vista a uma melhor experiência:

- Dar preferência à utilização de um computador em detrimento de smartphones ou tablets. A qualidade global da rede conseguida é tipicamente superior e o tamanho de ecrã maior permite uma aula mais imersiva e a garantia de leitura dos conteúdos que o Docente está a apresentar (apresentações, etc.).
- Escolher um local o mais perto possível do Router ou Access Point, para garantir a melhor qualidade de sinal possível.
- Evitar a utilização de ligações móveis (3G, 4G, etc.) e ADSL, dado que as mesmas não possuem as mesmas larguras de banda e garantias de qualidade de rede de uma ligação banda larga.
- Evitar deslocar os equipamentos no decorrer da aula, para evitar a degradação do sinal Wi-Fi e quebras de ligação.

<div id="bkmrk-">  
</div>**Acesso ao serviço e processo de autenticação**

<div id="bkmrk-aceder-ao-endere%C3%A7o-w"><div>Aceder ao endereço web do serviço através do browser <u>Google Chrome</u>, através do endereço:</div><div>[https://conference.deec.uc.pt](https://conference.deec.uc.pt/ "https://conference.deec.uc.pt")</div><div>  
</div></div><div id="bkmrk--0"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1914)  
</div></div><div id="bkmrk--1">  
</div><div id="bkmrk-inicio-da-aula%C2%A0">**Inicio da Aula**   
</div><div id="bkmrk-para-iniciar-a-aula%2C"><div>Para iniciar a aula, introduza o nome da aula e carregue em “Go”:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1915)  
</div><div>  
</div><div>De seguida aparecerá a seguinte imagem. Deverá carregar em “Permitir” para dar acesso ao microfone e à câmara.</div><div> ![](https://helpdesk.deec.uc.pt/api/v1/attachments/1916)  
</div><div>  
</div><div>O Docente terá que se autenticar para ter privilégios adicionais, para isso deve pressionar em “I am the host”:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1917)  
</div><div>  
</div><div>Introduza as credenciais do domínio DEEC (só o username) e pressione o botão “Ok”:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1918)  
</div><div>  
</div><div>Introduza o seu nome e pressione em “Ok”:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1919)  
</div><div>  
</div><div>Está agora na sala virtual. Utilize o endereço que está na barra de endereços do Browser para partilhar com os Alunos. É o mesmo para Docente e Alunos e, por isso, é esse que deve partilhar com eles.</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1927)  
</div><div>  
</div><div>Para partilhar conteúdos do seu computador (ecrã total, apresentações, etc.), pressionar o botão assinalado:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1920)  
</div><div>  
</div><div>Depois de escolher o que pretende partilhar, pressionar “Partilhar”:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1921)  
</div><div>  
</div><div>Para interromper a partilha de ecrâ, pressionar o botão “Parar a partilha”:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1922)  
</div><div>  
</div><div>Após estes passos, a conferência está funcional:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1923)  
</div></div><div id="bkmrk--2">  
</div><div id="bkmrk-a-perspetiva-do-alun"><div>**A perspetiva do aluno...**  
</div><div><div>O Aluno deverá utilizar o endereço (URL) da Aula que recebeu, da parte do Docente, copiar e colá-lo no browser.</div><div>  
</div><div>Neste ponto deverá introduzir o seu nome com o seguinte formato:</div><div> Primeiro_Nome Último_Nome (Número_Aluno)</div><div>Por exemplo:</div><div> João Ferreira (2019123567)</div></div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1924)  
</div><div>  
</div><div><div>Após este ponto, o aluno está pronto para assistir à conferência.</div></div><div>  
</div><div>**Configuração Áudio**  
</div><div><div>Pode configurar quais os dispositivos a utilizar para efeitos de entrada (microfone) e saída de som, pressionando o botão abaixo:</div></div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1925)</div></div><div id="bkmrk--3"><div><div>  
</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/1926)</div></div>

# Serviço de Alojamento de Páginas Pessoais

## Apresentação

O DEEC disponibiliza aos seus colaboradores um serviço para a publicação de páginas pessoais web, para seu usufruto. Este serviço é disponibilizado através do endereço URL [http://home.deec.uc.pt/~username](http://home.deec.uc.pt/~username).

Os materiais alojados através deste serviço são da responsabilidade de cada utilizador e refletem a sua visão individual. A informação publicada não representa a opinião ou a política do Departamento, Faculdade ou da Universidade de Coimbra. Assim, a instituição não deve ser associada à visão dos utilizadores, expressa nas páginas alojadas neste serviço.

##   


## Gestão do site pessoal

### Passo 1: Aceder a [drive.deec.uc.pt](https://drive.deec.uc.pt)

Aceda ao endereço acima, e coloque as suas credenciais (não é necessário colocar "@deec.uc.pt").

### Passo 2: Abrir pasta "SiteWeb"

Todos os docentes têm uma pasta individual chamada "SiteWeb", onde irão colocar os ficheiros do site individual.

[![image-1769437681600.png](https://kb.deec.uc.pt/uploads/images/gallery/2026-01/scaled-1680-/image-1769437681600.png)](https://kb.deec.uc.pt/uploads/images/gallery/2026-01/image-1769437681600.png)

### Passo 3: Alterar o conteúdo para a estrutura desejada

Agora é só inserir o seu website na pasta "SiteWeb".

# Servidor MIPS

O DEEC disponibiliza aos alunos e docentes um servidor com base na arquitetura MIPS, que executa uma distribuição adequada de Linux.

Para aceder, deverá utilizar as credencias associadas à **conta da Universidade de Coimbra (as mesmas que utiliza para aceder à plataforma Inforestudante).**

Por razões técnicas, a primeira vez que tentar entrar no servidor, a ligação irá falhar e a conta será criada. Deverá cancelar a operação (CTRL+C), tentar novamente. De futuro, já conseguirá aceder ao servidor sem problemas.

Para se ligar ao servidor e poder utilizar o mesmo, assim como transferir ficheiros de e para o seu computador, necessita de utilizar os protocolos “SSH” (Secure shell) e “SFTP”, respetivamente.

##### **Ligação através de Linux e MacOS**

Se for utilizador Linux ou Mac/OSX, execute o seguinte comando numa consola Terminal, para se ligar ao servidor:

**$ ssh 'uc20YYXXXYYY@student.uc.pt'@mips.deec.uc.pt**

e terá acesso à máquina MIPS, quer esteja dentro ou fora da LAN do DEEC.

# Suporte Remoto

Se o colaborador da Informática lhe solicitar e necessitar de acesso remoto ao seu computador para dar resposta a um pedido de suporte seu, deverá seguir as instruções seguintes.

Obter o cliente AnyDesk no endereço em baixo e executar o mesmo:

**Em Windows:** [https://download.anydesk.com/AnyDesk.exe](https://download.anydesk.com/AnyDesk.exe)

**Em MacOS:** [https://download.anydesk.com/anydesk.dmg](https://download.anydesk.com/anydesk.dmg)

Em seguida, deve indicar o endereço de suporte remoto associado ao seu computador ao colaborador da Informática:

![](https://helpdesk.streamline.pt/api/v1/attachments/2710)

Neste momento, o colaborador da Informática irá proceder à ligação ao seu computador, sendo que terá que autorizar a ligação remota:

![](https://helpdesk.streamline.pt/api/v1/attachments/2711)

Após aceitação da ligação, receberá a indicação que existe uma ligação remota estabelecida. Deverá agora seguir as indicações telefónicas dadas e continuar com a sessão de suporte remoto:

![](https://helpdesk.streamline.pt/api/v1/attachments/2712)

No final, o colaborador da Informática irá fechar a sessão do seu lado, terminando o acesso remoto ao seu computador.

Neste momento, poderá fechar a aplicação AnyDesk. Guarde a mesma no disco rígido, poderá utilizar a mesma em futuros pedidos de suporte, uma vez que o endereço deste computador mantém-se.

**<u>A segurança do seu computador está garantida</u>**, na medida em que o suporte só pode ser feito com a aplicação aberta e com a sua autorização explícita e física de ligação.

**Autorizações necessárias em ambiente Windows**

Se, nalgum momento surgir a seguinte janela de segurança, seleccionar a opção “Permitir acesso”:

<div id="bkmrk--7">  
</div>**Autorizações necessárias em ambiente MacOS**

A partir do MacOS Mojave é exigida a permissão para que o AnyDesk controle explicitamente um dispositivo.

Surgirá a janela seguinte na primeira execução da aplicação. Siga a sequência de acções indicada abaixo:

![](https://helpdesk.streamline.pt/api/v1/attachments/2713)

![](https://helpdesk.streamline.pt/api/v1/attachments/2714)

Após concluir, clique novamente no cadeado para terminar o processo de autorização.

# Suporte Remoto Rustdesk

Se o colaborador da Informática lhe solicitar e necessitar de acesso remoto ao seu computador para dar resposta a um pedido de suporte seu, deverá seguir as instruções seguintes.

#### Instalação

Obter o cliente RustDesk no endereço em baixo e executar o mesmo:

<span style="text-decoration: underline;">**Versão atual Windows:**</span> https://github.com/rustdesk/rustdesk/releases/download/1.3.8/rustdesk-1.3.8-x86\_64.exe

#### Configuração do software

[![image-1724426937987.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-08/scaled-1680-/image-1724426937987.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-08/image-1724426937987.png)

#### **Pedir Suporte** 

Em seguida, deve indicar o endereço de suporte remoto associado ao seu computador ao colaborador da Informática:

####   


[![image-1724426669688.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-08/scaled-1680-/image-1724426669688.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-08/image-1724426669688.png)

Neste momento, o colaborador da Informática irá proceder à ligação ao seu computador, sendo que terá que autorizar a ligação remota:

Após aceitação da ligação, receberá a indicação que existe uma ligação remota estabelecida. Deverá agora seguir as indicações telefónicas dadas e continuar com a sessão de suporte remoto.

No final, o colaborador da Informática irá fechar a sessão do seu lado, terminando o acesso remoto ao seu computador.

Neste momento, poderá fechar a aplicação RustDesk. Guarde a mesma no disco rígido, poderá utilizar a mesma em futuros pedidos de suporte, uma vez que o endereço deste computador mantém-se.

**<u>A segurança do seu computador está garantida</u>**, na medida em que o suporte só pode ser feito com a aplicação aberta e com a sua autorização explícita e física de ligação.

**Autorizações necessárias em ambiente Windows**

Se, nalgum momento surgir a seguinte janela de segurança, seleccionar a opção “Permitir acesso”:

<div id="bkmrk--11">  
</div>**Autorizações necessárias em ambiente MacOS**

A partir do MacOS Mojave é exigida a permissão para que o RustDesk controle explicitamente um dispositivo.

Surgirá a janela seguinte na primeira execução da aplicação. Siga a sequência de acções indicada abaixo:

[![image-1726138666407.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-09/scaled-1680-/image-1726138666407.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-09/image-1726138666407.png)

Após concluir, clique novamente no cadeado para terminar o processo de autorização.

# Software



# Instalação Labview e Multisim

**O DEEC possui uma licença Labview para estudantes e colaboradores:**

<p class="callout warning">**Antes de proceder à instalação do software, é necessário fazer o registo de uma conta NI, utilizando o site:** [https://lumen.ni.com/nicif/us/header\_create/content.xhtml?action=create&amp;du=https://www.ni.com/myni/dashboard/](https://www.ni.com/myni/dashboard/ "https://www.ni.com/myni/dashboard/")</p>

<p class="callout warning">Use a sua conta de estudante (ucXXXXXXXXXX@student.uc.pt)</p>

**Para aceder a este software:**

- Fazer o download do mesmo: [https://installers.deec.uc.pt/labview\_multisim/labview\_multisim.zip](https://installers.deec.uc.pt/labview_multisim/labview_multisim.zip "https://installers.deec.uc.pt/labview_multisim/labview_multisim.zip")
- Extrair o ficheiro e executar o instalador

\- Nos próximos passos, clique em “next” para concordar sempre com o termos de licença:

\- Escolha o pacote de software que necessita e clique em “next”:

\- Nos próximos passos, clique em “next” para concordar sempre com o termos de licença:

\- Confirme que a escolha do software está correta e clique em “next”:

\- Aceite que o NI Update Service procure automaticamente por novas atualizações:

\- Entre com a conta que criou nos passos anteriores:

\- Escolha a opção “serial number”:

\- Introduza o serial number, contido no ficheiro "LABVIEW SERIAL" do zip que descarregou, e clique em “Activate”:

# MATLAB Alunos

### Instalar e activar uma cópia pessoal do MATLAB (Alunos)

<p class="callout warning">**Para utilizar o Matlab, deverá possuir uma conta @student.uc.pt**</p>

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>  
</div></div></div></div>#### 1. Criar uma conta MathWorks (Caso já possua uma conta MathWorks pode saltar este passo)

• Vá a [http://www.mathworks.com](http://www.mathworks.com/) e clique em *“Log in”.*

![](https://helpdesk.deec.uc.pt/api/v1/attachments/143)

• Clique em *“Create Account”.*

![](https://helpdesk.deec.uc.pt/api/v1/attachments/144)

• Deverá utilizar o seu **e-mail da Universidade (@student.uc.pt)** e seleccionar a opção ***“Academic Use”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/145)

• Neste ponto, pode **finalizar a criação da sua conta MathWorks.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/146)

#### 2. Associar a conta MathWorks com a licença

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--15"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>  
</div></div></div></div>• Depois de iniciar sessão na sua conta MathWorks, vá a ***“My Account”*** e clique em ***“View My Licenses”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/147)

• Clique no botão ***“Add License”***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/148)

• Seleccione a opção ***“Activation Key”*** e clique em ***“Continue”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/149)

• Introduza a **Chave de Activação: 12668-22703-15866-38939-29347** e clique em ***“Continue”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/150)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--26"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div></div></div>#### 3. Descarregar e instalar o Software

**Pode descarregar o software do site da Mathworks (método b), no entanto sugerimos e recomendamos que opte por descarregar o mesmo do servidor local BOX (método a), sendo o processo muito mais rápido, uma vez que a transferência utiliza apenas a rede local.**

####   


##### **MÉTODO A – TRANSFERÊNCIA ATRAVÉS DA REDE LOCAL (RECOMENDADO)**

- [Windows](https://drive.deec.uc.pt/d/s/pYApj2fV6CTwNvJn9kmwDexPVDmWrQ3P/W7NHLPuSS7VwYoxtK7SYqSIVw4jt1kjb-Q79A1QBGrwk)
- [Linux](https://drive.deec.uc.pt/d/s/pYAhzbbbs2YpZzMN6gicovRS7UoSBS0W/-2QN1fizStZ4Uu1cXnTO4ZAeIYtFlbDa-erig4gpGrwk)
- [macOS](https://drive.deec.uc.pt/d/s/pYAquBDU0soePfNDmo1LiiM1Ka3kkyPs/qJR-uDFohe0c7g1CHL17XJhIcJxfmDJv-IrPgPBdGrwk)

##### **MÉTODO B – TRANSFERÊNCIA ATRAVÉS DO SITE DA MATHWORKS (ALTERNATIVO)**

a. Quando a licença estiver activada na sua conta MathWorks, **vá a:**  
[http://www.mathworks.com/downloads/web\_downloads/select\_release](http://www.mathworks.com/downloads/web_downloads/select_release)  
Alternativamente, poderá efectuar download do software através do endereço…

• **Seleccione a versão do software** que pretende instalar.

• **Seleccione a plataforma:**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/151)

• Poderá então **descarregar o instalador** da versão e plataforma pretendidas.

b. Quando a transferência estiver concluída, **corra o ficheiro de instalação.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/152)

• **Leia e aceite os termos do contrato de licença:**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/153)

• **Introduza o endereço de *e-mail* e *password* da sua conta MathWorks:**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/154)

• **Escolha a licença activada recentemente** e clique em *“Next”.*

• **Escolha a pasta de instalação.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/155)

• **Seleccione os produtos a instalar.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/156)

• Escolha as opções de atalho adicionais e **clique em *“install”***

c. Quando o processo de instalação terminar, é necessário activar o software.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/157)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/158)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/159)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/160)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/161)

• **Poderá agora utilizar a sua cópia do MATLAB.**

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--59"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>---

</div></div></div>#### Recursos Adicionais

**• TAH Resource Kit for Students**  
[http://www.mathworks.com/academia/tah-support-program/students.html](http://www.mathworks.com/academia/tah-support-program/students.html)

**• Online Documentation:**  
[http://www.mathworks.com/help/](http://www.mathworks.com/help/)

**• Interactive MATLAB and Simulink Tutorials:**  
[http://www.mathworks.com/academia/student\_center/tutorials/](http://www.mathworks.com/academia/student_center/tutorials/)

<div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk--1"></div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk--61">**LINKED TICKETS <span class="badge">1</span>**  
</div><div class="knowledge-base-article-linked-tickets js-answer-linked-tickets" id="bkmrk-linked-tickets%C2%A01-lic"><div class="attachments attachments--list"><div class="tasks tasks--standalone"><div class="task"><div class="task-text">**[Licenças VS/VSCode/Multisim/outros](https://helpdesk.deec.uc.pt/#ticket/zoom/3861)**</div><div class="task-text"><time class="humanTimeFromNow time" datetime="2021-12-02T22:36:59.300Z" title="02/12/2021 22:36">02/12/2021</time></div></div></div></div></div>

# Matlab Docentes & Investigadores

## Instalar e activar uma cópia pessoal

#### 1. Criar uma conta MathWorks (Caso já possua uma conta MathWorks pode saltar este passo)

• Vá a [http://www.mathworks.com](http://www.mathworks.com/) e clique em *“Log in”.*

![](https://helpdesk.deec.uc.pt/api/v1/attachments/126)

• Clique em *“Create Account”.*

![](https://helpdesk.deec.uc.pt/api/v1/attachments/127)

• Deverá utilizar o seu **e-mail institucional (@deec.uc.pt ou @uc.pt)** e seleccionar a opção ***“Academic Use”***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/128)

• Neste ponto, pode **finalizar a criação da sua conta MathWorks.**

<div id="bkmrk--7"><div>  
</div></div>#### 2. Associar a conta MathWorks com a licença

<div id="bkmrk--9"><div><div>  
</div></div></div>• Depois de iniciar sessão na sua conta MathWorks, vá a ***“My Account”*** e clique em ***“View My Licenses”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/129)

• Clique no botão ***“Add License"***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/130)

• Selecione a opção ***“Activation Key”*** e clique em ***“Continue”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/131)

• Introduza a **Chave de Activação: 18583-36985-43947-39097-18102** e clique em ***“Continue”.***

![](https://helpdesk.deec.uc.pt/api/v1/attachments/132)

<div id="bkmrk--17"><div>  
</div></div>#### 3. Descarregar e/ou instalar o Software

Pode descarregar o software do site da Mathworks (método b), no entanto sugerimos e recomendamos que opte por instalar directamente ou descarregue do servidor local (método a), sendo o processo muito mais rápido, uma vez que utiliza apenas a rede local.

##### **MÉTODO A – INSTALAÇÃO ATRAVÉS DA REDE LOCAL (RECOMENDADO)**

- [Windows](https://drive.deec.uc.pt/d/s/pYApj2fV6CTwNvJn9kmwDexPVDmWrQ3P/W7NHLPuSS7VwYoxtK7SYqSIVw4jt1kjb-Q79A1QBGrwk)
- [Linux](https://drive.deec.uc.pt/d/s/pYAhzbbbs2YpZzMN6gicovRS7UoSBS0W/-2QN1fizStZ4Uu1cXnTO4ZAeIYtFlbDa-erig4gpGrwk)
- [macOS](https://drive.deec.uc.pt/d/s/pYAquBDU0soePfNDmo1LiiM1Ka3kkyPs/qJR-uDFohe0c7g1CHL17XJhIcJxfmDJv-IrPgPBdGrwk)

##### **MÉTODO B – TRANSFERÊNCIA ATRAVÉS DO SITE DA MATHWORKS (ALTERNATIVO)**

<div id="bkmrk--22"><div><div>  
</div></div></div>a. Quando a licença estiver activada na sua conta MathWorks, **vá a:**  
[http://www.mathworks.com/downloads/web\_downloads/select\_release](http://www.mathworks.com/downloads/web_downloads/select_release)  
Alternativamente, poderá efectuar download do software através do endereço…

![](https://helpdesk.deec.uc.pt/api/v1/attachments/133)

• **Seleccione a versão do software** que pretende instalar.

• **Seleccione a plataforma:**

• Poderá então **descarregar o instalador** da versão e plataforma pretendidas.

b. Quando a transferência estiver concluída, **corra o ficheiro de instalação.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/134)

• **Leia e aceite os termos do contrato de licença:**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/135)

• **Introduza o endereço de *e-mail* e *password* da sua conta MathWorks:**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/136)

• **Escolha a licença activada recentemente** e clique em *“Next”.*

• **Escolha a pasta de instalação.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/137)

• **Seleccione os produtos a instalar.**

![](https://helpdesk.deec.uc.pt/api/v1/attachments/138)

• Escolha as opções de atalho adicionais e **clique em *“install”***

c. Quando o processo de instalação terminar, é necessário activar o software.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/139)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/140)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/141)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/142)

• **Poderá agora utilizar a sua cópia do MATLAB.**

<div id="bkmrk--41"><div>  
</div></div>#### Recursos Adicionais

**• TAH Resource Kit for Educators**  
[http://www.mathworks.es/academia/tah-support-program/educators.html](http://www.mathworks.es/academia/tah-support-program/educators.html)

**• Online Documentation:**  
[http://www.mathworks.com/help/](http://www.mathworks.com/help/)

**• MATLAB Courseware (curriculum materials):**  
[http://www.mathworks.com/academia/courseware/](http://www.mathworks.com/academia/courseware/)

# Microsoft Imagine

<p class="callout warning">**Para usar este serviço, é necessário possuir uma conta @deec.uc.pt**</p>

#### O que é o Microsoft Imagine?  


O Microsoft Imagine é um protocolo que a Microsoft assina com os Departamentos das Universidades que leccionam disciplinas das áreas STEM (Science, Technology, Engineering e Mathematics) que dá acesso GRATUITO aos seus alunos, docentes e colaboradores do Departamento às ferramentas Microsoft.

O protocolo pode ser utilizado através de uma plataforma Web based. Dessa forma, é possível à comunidade obter uma cópia pessoal de todo o software disponível, existindo uma conta pessoal para cada utilizador. O processo de entrega do software é automatizado, libertando os responsáveis / administradores de, essencialmente, gerir o penoso processo de atribuir as Keys únicas a que cada utilizador tem direito para obter a sua cópia pessoal do software. Da parte dos utilizadores, o acesso ao software torna‐se disponível ininterruptamente, a qualquer hora e em qualquer lugar, bastando para isso que estejam registados no sistema. O facto de cada aluno ter a sua própria conta pessoal confere‐lhes o total acesso ao “seu” software, podendo aceder em qualquer altura às suas Keys dos produtos ou encomendar novos produtos de software.

#### Quem tem acesso?

<div id="bkmrk-estudantes-do-deec%2C-"><div>- Estudantes do DEEC, que frequentem unidades curriculares no ano letivo corrente;
- Docentes;
- Colaboradores;

</div></div>#### Contas Microsoft Imagine

O acesso ao Microsoft Imagine está dependente da criação de contas por parte da gestão da Rede Informática do DEEC (GRI).

Para este efeito, o GRI efectua a criação de contas da seguinte forma:

<div id="bkmrk-para-alunos%2C-no-in%C3%ADc"><div>- Para alunos, no início de cada ano lectivo;
- Para docentes e colaboradores, no acto de criação da conta departamental;

</div></div>Nesse momento, cada utilizador recebe um e-mail, na conta de correio electrónico institucional, automatizado por parte da plataforma, com as instruções de acesso iniciais à plataforma.

As contas na plataforma Dreamspark são independentes das contas departamentais, não tendo ligação aos serviços de autenticação centralizados do DEEC. Por este motivo, podem ter uma password diferente.

#### Acesso à plataforma

O username é o endereço de correio electrónico institucional.

A password é, como já referido, gerada pela Microsoft, sendo automaticamente enviada no e-mail inicial.

Caso tenha perdido ou não saiba qual a sua password, pode recuperá-la na página de autenticação do serviço Microsoft Imagine(“Sign In”), através das seguintes opções:  
“Forgot you password?” – Esta opção, envia ao utilizador uma nova password.Utilização correta

O endereço (URL) para acesso à plataforma é:

[http://web.deec.uc.pt/go/dreamspark](http://web.deec.uc.pt/go/dreamspark)

#### Normas de Utilização

<div id="bkmrk-o-software-disponibi"><div>- O software disponibilizado pode ser utilizado em projetos académicos, aulas, de investigação, trabalhos de grupo ou projetos departamentais da faculdade;
- Os alunos abrangidos pelo protocolo poderão instalar o software nas suas máquinas pessoais, desde que para utilização apenas dos próprios e apenas para fins académicos;
- O uso das ferramentas obtidas pelos alunos ao abrigo do protocolo está autorizado, mesmo após deixarem ou terminarem o curso, apenas para fins académicos ou de investigação;
- A instalação do Microsoft Windows ou outros sistemas operativos disponibilizados, apenas pode ser levada a cabo em PCs sem sistema pré-instalado (OEM) para fins académicos e para utilização do próprio aluno, não podendo o sistema operativo ser transferido no caso de transferência do computador;
- O aluno pode gravar UMA ÚNICA cópia do software disponibilizado, quando este for cedido no formato \*.ISO;

</div></div>#### Utilização incorreta

<div id="bkmrk-a-utiliza%C3%A7%C3%A3o-das-fer">- A utilização das ferramentas disponibilizadas para o desenvolvimento de produtos que não sejam do âmbito académico e/ou de investigação;
- A instalação dos sistemas operativos disponibilizados para a utilização de outro software não abrangido pelo protocolo que corra sobre estes;
- A utilização do software disponibilizado para fins comerciais;
- O software disponibilizado não pode ser alugado, vendido, transferido ou cedido a terceiros, sejam eles (por exemplo) outros departamentos, outros alunos, empresas ou consultores;

</div>

# Microsoft Office 365 Educação

<p class="callout warning">Para usar este serviço, necessita de possuir uma conta de email @deec.uc.pt ou @student.uc.pt</p>

### Apresentação

O Office 365 Education Plus para estudantes está disponível gratuitamente para estudantes e colaboradores inscritos na Universidade de Coimbra.

Instale o Office num máximo de 5 PCs ou Macs e noutros dispositivos móveis, incluindo tablets Android™, iPad® e Windows.

Usufrua de acesso aos serviços do Office 365, como o armazenamento online de 1 TB no OneDrive e o Yammer.

Para efectuar o registo inicial, utilize um dos links abaixo:

<div id="bkmrk-estudantes%C2%A0%28utilize-"><div>- [Estudantes](https://go.microsoft.com/fwlink/p/?LinkId=506946 "https://go.microsoft.com/fwlink/p/?LinkId=506946") (utilize o seu endereço @student.uc.pt para registo)
- [Colaboradores](https://go.microsoft.com/fwlink/p/?LinkId=512196 "https://go.microsoft.com/fwlink/p/?LinkId=512196") (utilize o seu endereço @deec.uc.pt para registo)

</div></div>**ATENÇÃO:** O sistema Office 365 é independente, pelo que utiliza conjunto username+password próprio, que não são os mesmos do DEEC.

### O que está incluído

#### Aplicações completas instaladas

Crie relatórios e apresentações com as versões mais recentes das aplicações que tão bem conhece e nas quais confia. Inclui o Word, o Excel, o PowerPoint, o OneNote, o Outlook, o Publisher e o Access.

#### Colaboração fácil em tempo real

Trabalhe com os seus colegas online e veja as alterações de uns e outros em tempo real com o Office Online e o OneDrive. O tempo da troca de e-mails com versões desatualizadas pertence ao passado.

#### Ferramentas de apontamento de notas otimizadas

Digite ou escreva notas à mão, capture páginas Web, grave áudio/vídeo, incorpore folhas de cálculo e muito mais com o OneNote, disponível em todos os seus dispositivos.

# Rato transparente no QTCreator - Windows 10

**Rato desaparece durante a utilização do QTCreator.**

- Como o fundo do QTCreator é de cor branca e o rato também, o mesmo acaba por não se notar.
- Ao mudar a cor do rato nas definições do Windows para preto, o problema fica resolvido.
- Com os passos seguintes, é possível proceder à alteração da cor do rato.
- Ir às definições do Windows e clicar em “Dispositivos”;



![](https://helpdesk.deec.uc.pt/api/v1/attachments/20458)

- Clicar em “Rato”;



![](https://helpdesk.deec.uc.pt/api/v1/attachments/20459)

- Clicar em “Opções do rato adicionais”;![](https://helpdesk.deec.uc.pt/api/v1/attachments/20460)
- Clicar em “Ponteiros” e nessa aba clicar na aba “Esquema” que deverá estar pré selecionado com a opção “Nenhum”. Escolher a opção “Preta do Windows”;



![](https://helpdesk.deec.uc.pt/api/v1/attachments/20461)

- Clicar em “Aplicar” e de seguida em “OK”. O rato muda assim para a cor preta.

# Software ADS

#### Para ativação do software, utilizar o servidor de licenças:

<div id="bkmrk-server-license.deec."><table border="1" style="border-collapse: collapse; width: 100%; height: 59.5938px;"><tbody><tr style="height: 29.7969px;"><td class="align-center" style="width: 49.9383%; height: 29.7969px;">**Server**</td><td class="align-center" style="width: 49.9383%; height: 29.7969px;">license.deec.uc.pt</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 49.9383%; height: 29.7969px;">**Port**</td><td class="align-center" style="width: 49.9383%; height: 29.7969px;">28001</td></tr></tbody></table>

</div>

# Software Cedrat Flux

<div id="bkmrk-configura%C3%A7%C3%A3o-do-clie">**Configuração do Cliente**</div><div id="bkmrk-">![](https://helpdesk.deec.uc.pt/api/v1/attachments/11545)  
</div><div id="bkmrk--0">  
</div><div id="bkmrk--1">![](https://helpdesk.deec.uc.pt/api/v1/attachments/11546)  
</div><div id="bkmrk--2">  
</div><div id="bkmrk--3">![](https://helpdesk.deec.uc.pt/api/v1/attachments/11547)  
</div><div id="bkmrk--4">  
</div><div id="bkmrk--5">![](https://helpdesk.deec.uc.pt/api/v1/attachments/11548)  
</div><div id="bkmrk--6">  
</div><div id="bkmrk--7">![](https://helpdesk.deec.uc.pt/api/v1/attachments/11549)  
</div><div id="bkmrk--8">  
</div><div id="bkmrk--9"></div>

# Software JMP

![](https://helpdesk.deec.uc.pt/api/v1/attachments/165)

Está disponível a toda a comunidade académica o **Software JMP**, um programa destinado a apoiar atividades em estatística e *data science*, desde o planeamento de experiências à visualização e análise de grandes volumes de informação, *predictive analytics*, engenharia da Qualidade, fiabilidade e manutenção.  
Fruto de um acordo entre Serviços de Ação Social e Universidade de Coimbra, o software é disponibilizado pelos técnicos responsáveis pelo serviço de informática das várias Unidades Orgânicas / Faculdades.

**Por favor selecione o sistema operativo a instalar:**

**[Windows](https://box.deec.uc.pt/sharing/4nYsjgmK4 "https://box.deec.uc.pt/sharing/4nYsjgmK4")**

**[Macintosh](https://box.deec.uc.pt/sharing/5i6sy8n3j "https://box.deec.uc.pt/sharing/5i6sy8n3j")**

# Software nos Laboratórios

Para apoio às actividades lectivas, o DEEC possui um conjunto de laboratórios equipados com estações de trabalho. Nestes computadores, está instalado um conjunto de software denominado Software Base, que se encontra instalado em todos. Adicionalmente, instala-se também outro software, específico às actividades de cada laboratório a cada instante e às disciplinas lá leccionadas.

Nesta página, pode consultar a todo o momento qual o software base instalado em todos os laboratórios e ainda, que software se encontra instalado em cada laboratório.

No caso de ser necessário, os docentes podem requerer a instalação de software adicional nos laboratórios, através do serviço de helpdesk@deec.uc.pt. No início de cada semestre, os pedidos deverão ser feitos com antecedência adicional, uma vez que são momentos com elevadas requisições.

## Software Base

### Windows

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice" style="width: 50.8642%; height: 417.157px;"><tbody><tr style="height: 29.7969px;"><th class="align-center" style="width: 30.1274%; height: 29.7969px;">**Software**</th><th class="align-center" style="width: 50.5005%; height: 29.7969px;">**Função**</th><th class="align-center" style="width: 19.0534%; height: 29.7969px;">**Licença**</th></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">7Zip</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">(Des)Compactação de ficheiros</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Adobe Reader</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Visualição de ficheiros PDF</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">CutePDF</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Geração de ficheiros PDF</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">ESET Nod32</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Antí-vírus</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Comercial</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Google Chrome</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Browser Web</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Java JRE</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Runtime Java</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Mozilla Firefox</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Browser Web</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Microsoft Office</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Produtividade escritório</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Comercial</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Notepad++</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Edição de ficheiros de texto</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">Putty</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Cliente SSH</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">WinSCP</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Browser Ficheiros SFTP/SSH</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 30.1274%; height: 29.7969px;">VLC Media Player</td><td class="align-center" style="width: 50.5005%; height: 29.7969px;">Media Player</td><td class="align-center" style="width: 19.0534%; height: 29.7969px;">Freeware</td></tr></tbody></table>

### Linux

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-0"><tbody><tr><th>**Software**</th><th>**Função**</th><th>**Licença**</th></tr><tr><td>Geany</td><td>Edição de ficheiros de texto</td><td>Freeware</td></tr><tr><td class="align-center">GCC</td><td class="align-center">Compilação de software C/C++</td><td class="align-center">Freeware</td></tr></tbody></table>

## Software Adicional

### LAI 1

O Laboratório de Apoio Informático 1, situado na Torre T, Piso 6, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-1"><tbody><tr><th>**Software**</th><th>**Função**</th><th>**Licença**</th></tr><tr><td>QT Creator</td><td>Ambiente Integrado de Desenvolvimento</td><td>Freeware</td></tr><tr><td>Matlab</td><td>Linguagem de alto nível para engenharia</td><td>Comercial</td></tr><tr><td>MySQL Workbench</td><td>Gestão de bases de dados</td><td>Freeware</td></tr><tr><td>Visual Studio Professional</td><td>Ambiente de desenvolvimento</td><td>Comercial</td></tr></tbody></table>

### LAI 3

O Laboratório de Apoio Informático 3, situado na Torre S, Piso 4, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-2" style="width: 100%;"><tbody><tr><th class="align-center" style="width: 21.0136%;">**Software**</th><th class="align-center" style="width: 41.0383%;">**Função**</th><th class="align-center" style="width: 37.9481%;">**Licença**</th></tr><tr><td class="align-center" style="width: 21.0136%;">Kinect for Windows</td><td class="align-center" style="width: 41.0383%;">API para sistemas Kinect</td><td class="align-center" style="width: 37.9481%;">Comercial (protocolo Matlab TAH)</td></tr><tr><td class="align-center" style="width: 21.0136%;">Labview</td><td class="align-center" style="width: 41.0383%;">Desenvolvimento de sistemas de medição e controlo</td><td class="align-center" style="width: 37.9481%;">Comercial</td></tr><tr><td class="align-center" style="width: 21.0136%;">Matlab</td><td class="align-center" style="width: 41.0383%;">Linguagem de alto nível para engenharia</td><td class="align-center" style="width: 37.9481%;">Comercial (licenciamento Matlab TAH)</td></tr><tr><td class="align-center" style="width: 21.0136%;">MySQL Workbench</td><td class="align-center" style="width: 41.0383%;">Gestão de bases de dados</td><td class="align-center" style="width: 37.9481%;">Freeware</td></tr><tr><td class="align-center" style="width: 21.0136%;">Softkinetic API</td><td class="align-center" style="width: 41.0383%;">API para sistemas SofKinetic</td><td class="align-center" style="width: 37.9481%;">Freeware</td></tr><tr><td class="align-center" style="width: 21.0136%;">Codeblocks</td><td class="align-center" style="width: 41.0383%;">Ambiente de desenvolvimento</td><td class="align-center" style="width: 37.9481%;">Freeware</td></tr><tr><td class="align-center" style="width: 21.0136%;">Visual Studio Professional</td><td class="align-center" style="width: 41.0383%;">Ambiente de desenvolvimento</td><td class="align-center" style="width: 37.9481%;">Comercial (licenciamento Microsoft Dreamspark)</td></tr></tbody></table>

### LSRC

O Laboratório de Sistemas e Redes de Computadores, situado na Torre R, Piso 6, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-3"><tbody><tr><th>**Software**</th><th>**Função**</th><th>**Licença**</th></tr><tr><td>Matlab</td><td>Linguagem de alto nível para engenharia</td><td>Comercial</td></tr><tr><td>Quartus II Web Edition</td><td>Design de FPGA and CPLD</td><td>Freeware</td></tr><tr><td>Riverbed</td><td>Simulação de redes de dados</td><td>Freeware</td></tr></tbody></table>

### LSD

O Laboratório de Sistemas Digitais, situado na Torre R, Piso 6, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-4" style="width: 94.1975%; height: 195.781px;"><tbody><tr style="height: 46.7969px;"><th class="align-center" style="width: 22.9562%; height: 46.7969px;">**Software**</th><th class="align-center" style="width: 35.2904%; height: 46.7969px;">**Função**</th><th class="align-center" style="width: 41.5793%; height: 46.7969px;">**Licença**</th></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.9562%; height: 29.7969px;">Matlab</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Linguagem de alto nível para engenharia</td><td class="align-center" style="width: 41.5793%; height: 29.7969px;">Comercial</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.9562%; height: 29.7969px;">Quartus II Web Edition</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Design de FPGA and CPLD</td><td class="align-center" style="width: 41.5793%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.9562%; height: 29.7969px;">Visual Studio Professional</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Ambiente de desenvolvimento</td><td class="align-center" style="width: 41.5793%; height: 29.7969px;">Comercial (licenciamento Microsoft Dreamspark)</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.9562%; height: 29.7969px;">Codeblocks</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Ambiente de desenvolvimento</td><td class="align-center" style="width: 41.5793%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.9562%; height: 29.7969px;">MySQL Workbench</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Gestão de base de dados</td><td class="align-center" style="width: 41.5793%; height: 29.7969px;">Freeware</td></tr></tbody></table>

### LPDS

O Laboratório de Processamento de Sinal, situado na Torre S, Piso 5, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-5"><tbody><tr><th class="align-center">**Software**</th><th class="align-center">**Função**</th><th class="align-center">**Licença**</th></tr><tr><td class="align-center">Matlab</td><td class="align-center">Linguagem de alto nível para engenharia</td><td class="align-center">Comercial</td></tr><tr><td class="align-center">Blender</td><td class="align-center">Programa de Modelação 3D</td><td class="align-center">Freeware</td></tr><tr><td class="align-center">QT Creator</td><td class="align-center">Ambiente Integrado de Desenvolvimento</td><td class="align-center">Freeware</td></tr><tr><td class="align-center">Eclipse</td><td class="align-center">Plataforma de desenvolvimento</td><td class="align-center">Freeware</td></tr><tr><td class="align-center">Codeblocks</td><td class="align-center">Ambiente de desenvolvimento</td><td class="align-center">Freeware</td></tr><tr><td class="align-center">Labview</td><td class="align-center">Desenvolvimento de sistemas de medição e controlo</td><td class="align-center">Comercial</td></tr><tr><td class="align-center">MySQL Workbench</td><td class="align-center">Gestão de base de dados</td><td class="align-center">Freeware</td></tr><tr><td class="align-center">Visual Studio Profissional</td><td class="align-center"> Ambiente de desenvolvimento</td><td class="align-center">Comercial (licenciamento Microsoft Dreamspark)</td></tr></tbody></table>

### LMI

O Laboratório de Medidas e Instrumentação , situado na Torre S, Piso 5, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-6" style="width: 100%; height: 229.375px;"><tbody><tr style="height: 46.7969px;"><th style="width: 20.5632%; height: 46.7969px;">**Software**</th><th class="align-center" style="width: 41.3965%; height: 46.7969px;">**Função**</th><th class="align-center" style="width: 37.9167%; height: 46.7969px;">**Licença**</th></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 20.5632%; height: 29.7969px;">Matlab</td><td class="align-center" style="width: 41.3965%; height: 29.7969px;">Linguagem de alto nível para engenharia</td><td class="align-center" style="width: 37.9167%; height: 29.7969px;">Comercial</td></tr><tr style="height: 46.5938px;"><td class="align-center" style="width: 20.5632%; height: 46.5938px;">Visual Studio Profissional</td><td class="align-center" style="width: 41.3965%; height: 46.5938px;"> Ambiente de desenvolvimento</td><td class="align-center" style="width: 37.9167%; height: 46.5938px;">Comercial (licenciamento Microsoft Dreamspark)</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 20.5632%; height: 29.7969px;">MySQL Workbench</td><td class="align-center" style="width: 41.3965%; height: 29.7969px;">Gestão de base de dados</td><td class="align-center" style="width: 37.9167%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 20.5632%; height: 29.7969px;">Codeblocks</td><td class="align-center" style="width: 41.3965%; height: 29.7969px;">Ambiente de desenvolvimento</td><td class="align-center" style="width: 37.9167%; height: 29.7969px;">Freeware</td></tr><tr style="height: 46.5938px;"><td class="align-center" style="width: 20.5632%; height: 46.5938px;"> Labview</td><td class="align-center" style="width: 41.3965%; height: 46.5938px;"> Desenvolvimento de sistemas de medição e controlo</td><td class="align-center" style="width: 37.9167%; height: 46.5938px;"> Comercial</td></tr></tbody></table>

### LT

O Laboratório de Telecomunicações , situado na Torre S, Piso 6, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-7"><tbody><tr><th>**Software**</th><th>**Função**</th><th>**Licença**</th></tr><tr><td>Matlab</td><td>Linguagem de alto nível para engenharia</td><td>Comercial</td></tr><tr><td>Wireshark (c/WinPcap)</td><td>Ferramenta de analise protocolar</td><td>Freeware</td></tr><tr><td>Riverbed</td><td>Simulação de redes de dados</td><td>Freeware</td></tr></tbody></table>

### LC

O Laboratório de Controlo , situado na Torre S, Piso 3, possui o seguinte software específico instalado:

<table class=" align-center" id="bkmrk-software-fun%C3%A7%C3%A3o-lice-8" style="width: 94.1975%; height: 110.188px;"><tbody><tr style="height: 20.7969px;"><th class="align-center" style="width: 22.4402%; height: 20.7969px;">**Software**</th><th class="align-center" style="width: 35.2904%; height: 20.7969px;">**Função**</th><th class="align-center" style="width: 42.081%; height: 20.7969px;">**Licença**</th></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.4402%; height: 29.7969px;">Matlab</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Linguagem de alto nível para engenharia</td><td class="align-center" style="width: 42.081%; height: 29.7969px;">Comercial</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.4402%; height: 29.7969px;">MySQL Workbench</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Gestão de base de dados</td><td class="align-center" style="width: 42.081%; height: 29.7969px;">Freeware</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="width: 22.4402%; height: 29.7969px;">Visual Studio Profissional</td><td class="align-center" style="width: 35.2904%; height: 29.7969px;">Ambiente de desenvolvimento</td><td class="align-center" style="width: 42.081%; height: 29.7969px;"> Comercial (licenciamento Microsoft Dreamspark)</td></tr></tbody></table>

### LH

O Laboratório de Hiperfrequências , situado na Torre S, Piso 6, possui o seguinte software específico instalado:

<table id="bkmrk-software-fun%C3%A7%C3%A3o-lice-9"><tbody><tr><th class="align-center">**Software**</th><th class="align-center">**Função**</th><th class="align-center">**Licença**</th></tr><tr><td class="align-center">Matlab</td><td class="align-center">Linguagem de alto nível para engenharia</td><td class="align-center">Comercial</td></tr><tr><td class="align-center">Labview</td><td class="align-center">Desenvolvimento de sistemas de medição e controlo</td><td class="align-center">Comercial</td></tr><tr><td class="align-center">MySQL Workbench</td><td class="align-center">Gestão de bases de dados</td><td class="align-center">Freeware</td></tr><tr><td class="align-center">Visual Studio Profissional</td><td class="align-center">Ambiente de desenvolvimento</td><td class="align-center">Comercial (licenciamento Microsoft Dreamspark)</td></tr><tr><td class="align-center">Codeblocks</td><td class="align-center">Ambiente de desenvolvimento</td><td class="align-center">Freeware</td></tr></tbody></table>

# Synology Drive Client

### Download

Faça o download do software Synology Drive Client:

- [Windows](https://global.synologydownload.com/download/Utility/SynologyDriveClient/3.3.0-15082/Windows/Installer/Synology%20Drive%20Client-3.3.0-15082.msi)
- [Linux](https://global.synologydownload.com/download/Utility/SynologyDriveClient/3.3.0-15082/Ubuntu/Installer/x86_64/synology-drive-client-15082.x86_64.deb)
- [MacOS](https://global.synologydownload.com/download/Utility/SynologyDriveClient/3.3.0-15082/Mac/Installer/synology-drive-client-15082.dmg)

### Instalação

[![image-1683649321363.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/scaled-1680-/image-1683649321363.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/image-1683649321363.png)

[![image-1683649327873.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/scaled-1680-/image-1683649327873.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/image-1683649327873.png)

[![image-1683649354944.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/scaled-1680-/image-1683649354944.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/image-1683649354944.png)

[![image-1683649359215.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/scaled-1680-/image-1683649359215.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/image-1683649359215.png)

[![image-1683649365489.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/scaled-1680-/image-1683649365489.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-05/image-1683649365489.png)

### Configuração

Inicie a aplicação

Clique em “começar”

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19391)

Introduza a suas credenciais

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19392)

Selecione a opção conforme a imagem e clique “seguinte”

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19393)

Altere o caminho das pastas, criando uma pasta chamada “documentos” dentro da pasta “os meus ficheiros” no driv

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19394)

E crie também uma pasta chamada “Documentos”, ou selecione uma já existente, no seu computador, dentro da pasta do seu nome de utilizador (C:\\Users\\”SeuUtilizador”).

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19395)

Certifique-se que obtém este resultado e selecione "concluído"

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19396)

Avance nas próximas etapas clicando “seguinte” e “Abrir pasta”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19397)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19398)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19399)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19400)

Em seguida, no menu apresentado, selecione “Editar ligação”, em seguida clique em “Partilhado Comigo” e selecione “Alterar”. Crie uma pasta dentro da pasta do seu nome de utilizador (C:\\Users\\”SeuUtilizador”), chamada “ShareDEEC”

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19401)

Obtendo este resultado:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19402)

Para finalizar, de modo a obter um acesso mais rápido à pasta “ShareDEEC”, pode fixá-la em acesso rápidos.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19403)

Obtendo este resultado:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/19404)

# VPN



# Cliente VPN DEEC - Windows

O OpenVPN disponibiliza uma solução de VPN flexível para garantir a segurança dos dados das comunicações, seja para garantir a privacidade na Internet ou o acesso remoto por parte de colaboradores aos recursos internos das organizações.

<p class="callout info">O serviço de VPN destina-se a docentes e alunos do DEEC, pelo que deverá usar uma conta @deec.uc.pt ou @student.uc.pt, respectivamente</p>

<p class="callout warning">Os alunos dos outros departamentos devem solicitar o acesso ao serviço de VPN do DEEC no Gabinete de Gestão de Rede Informática do DEEC</p>

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-"></div>### Perfis do OpenVPN

Descarregue o perfil do OpenVPN de acordo com a sua utilização:

- [Docente](https://kb.deec.uc.pt/attachments/58)
- [Aluno](https://kb.deec.uc.pt/attachments/59)

### Instalação

Descarregue o cliente do OpenVPN através do seguinte endereço: [https://openvpn.net/community-downloads/](https://openvpn.net/community-downloads/)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/224)

Em seguida, fazer a respectiva instalação.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-em-seguida%2C-fazer-a-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/225)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/226)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/227)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/228)</div><div>  
</div><div><span style="color: #222222; font-size: 2.333em; font-weight: 400;">Configuração</span>  
</div></div></div>Coloque o perfil da VPN que descarregou incialmente e coloque na pasta "C:\\ProgramFiles\\OpenVPN\\config"

![](https://helpdesk.deec.uc.pt/api/v1/attachments/239)

### Ligação

Para finalizar, terá que iniciar o programa “OpenVPN GUI” que, com a sua execução, irá aparecer um ícone de um monitor com um cadeado na sua barra de tarefas

![](https://helpdesk.deec.uc.pt/api/v1/attachments/240)

Com o lado direito do rato em cima do ícone, clicar em *Connect* e introduzir as credencias

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--7"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/241)  
</div><div>  
</div><div>  
</div></div>

# Cliente VPN DEEC - macOS

O OpenVPN disponibiliza uma solução de VPN flexível para garantir a segurança dos dados das comunicações, seja para garantir a privacidade na Internet ou o acesso remoto por parte de colaboradores aos recursos internos das organizações.

<p class="callout info">O serviço de VPN destina-se a docentes e alunos do DEEC, pelo que deverá usar uma conta @deec.uc.pt ou @student.uc.pt, respectivamente</p>

### Perfis do OpenVPN

Descarregue o perfil do OpenVPN de acordo com a sua utilização na seção de downloads desta página (à esquerda).

### Instalação

Descarregue o cliente do OpenVPN Passepartout através do seguinte endereço:

[https://apps.apple.com/us/app/passepartout-vpn-client/id1433648537?mt=8](https://apps.apple.com/us/app/passepartout-vpn-client/id1433648537?mt=8)

[![image-1774290049019.png](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/scaled-1680-/image-1774290049019.png)](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/image-1774290049019.png)

### Configuração

Através do Launchpad, abra a app Passepartout e importe o perfil do OpenVPN que transferiu inicialmente:

[![image-1774290127225.png](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/scaled-1680-/image-1774290127225.png)](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/image-1774290127225.png)

### Ligação

Ative a ligação sempre que necessário através do switch:

[![image-1774290179568.png](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/scaled-1680-/image-1774290179568.png)](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/image-1774290179568.png)

Introduza as suas credenciais na primeira execução:

[![image-1774290394458.png](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/scaled-1680-/image-1774290394458.png)](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/image-1774290394458.png)

Se a ligação for estabelecida com sucesso, deverá obter o seguinte resultado

[![image-1774290210201.png](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/scaled-1680-/image-1774290210201.png)](https://kb.deec.uc.pt/uploads/images/gallery/2026-03/image-1774290210201.png)

<div class="knowledge-base-article-linked-tickets js-answer-linked-tickets" id="bkmrk-linked-tickets%C2%A01-ace"><div class="attachments attachments--list"><div class="tasks tasks--standalone"><div class="task"><div class="task-text">  
</div></div></div></div></div>

# Cliente VPN DEEC - Ubuntu

O OpenVPN disponibiliza uma solução de VPN flexível para garantir a segurança dos dados das comunicações, seja para garantir a privacidade na Internet ou o acesso remoto por parte de colaboradores aos recursos internos das organizações.

<p class="callout info">O serviço de VPN destina-se a docentes e alunos do DEEC, pelo que deverá usar uma conta @deec.uc.pt ou @student.uc.pt, respectivamente</p>

### Perfis do OpenVPN

Descarregue o perfil do OpenVPN de acordo com a sua utilização:

- [Docente](https://kb.deec.uc.pt/attachments/62)
- [Aluno](https://kb.deec.uc.pt/attachments/63)

### Opção 1 - Network Manager

#### Instalação

Abrir o Terminal e instalar o plugin do Network Manager

```shell
sudo apt-get install network-manager-openvpn-gnome
```

Após instalar o plugin, reiniciar o Network Manager

```shell
systemctl restart NetworkManager
```

#### Configuração

Abrir o Network Manager e, em VPN, clicar no "+"

[![image-1667580294318.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/scaled-1680-/image-1667580294318.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/image-1667580294318.png)

Clicar em "Import from file..." e selecionar o ficheiro do perfil da VPN descarregado anteriormente

[![image-1667580385408.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/scaled-1680-/image-1667580385408.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/image-1667580385408.png)

Introduza as suas credenciais e clicar em "Add"

[![image-1667580409944.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/scaled-1680-/image-1667580409944.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/image-1667580409944.png)

#### Ligação

Clicar no icon do Network Manager, ir a às ligações VPN e activar a VPN

[![image-1667580487266.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/scaled-1680-/image-1667580487266.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/image-1667580487266.png)

### Opção 2 - CLI

#### Instalação

Abrir o Terminal e instalar o cliente do OpenVPN

```bash
sudo apt -y install openvpn
```

#### Ligação

```shell
openvpn --config DEEC.ovpn
```

[![image-1667580066806.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/scaled-1680-/image-1667580066806.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-11/image-1667580066806.png)

<div class="knowledge-base-article-linked-tickets js-answer-linked-tickets" id="bkmrk-linked-tickets%C2%A01-ace"><div class="attachments attachments--list"><div class="tasks tasks--standalone"><div class="task"><div class="task-text">  
</div></div></div></div></div>

# Cliente VPN para Alunos com credenciais UC (InforEstudante) - Windows

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt ou @student.uc.pt</p>

### **Instalação:**

Pode obter a aplicação OpenVPN seguindo a ligação abaixo.

 [https://openvpn.net/community-downloads/](https://openvpn.net/community-downloads/)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2812)

<div class="knowledge-base-article-body" id="bkmrk-em-seguida%2C-fazer-a-"><div class="knowledge-base-article-body"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div><div><center></center>Em seguida, fazer a respetiva instalação.</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2813)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2814)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2815)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2816)  
</div><div>  
</div></div></div></div>### **Configuração**

Para a sua configuração, deverá descarregar o ficheiro "[DEEC-Alunos.ovpn](https://kb.deec.uc.pt/attachments/48)" (nos anexos) e movê-lo para “**C:\\ProgramFiles\\OpenVPN\\config**”

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2817)

(ou, em alternativa, para a pasta "%USERPROFILE%\\OpenVPN\\config").

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2822)

### **Execução**

Para finalizar, terá que iniciar o programa “***OpenVPN GUI***” que, com a sua execução, irá aparecer um ícone de um monitor com um cadeado na sua barra de tarefas.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2818)

Com o lado direito do rato em cima do ícone, clicar em *Connect* e introduzir as credenciais da sua conta de aluno da Universidade de Coimbra (InforEstudante) com o formato uc20XXYYYYYY@student.uc.pt.

<div class="knowledge-base-article-body" id="bkmrk-com-o-lado-direito-d"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2819)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2820)  
</div></div></div><div id="bkmrk--3"></div><div id="bkmrk--4"></div>

# Cliente VPN para Alunos com credenciais UC (InforEstudante) - macOS

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt ou @student.uc.pt</p>

### **Instalação**

A ligação VPN permite-lhe criar um túnel seguro sobre a Internet entre o seu computador e a rede da sua Instituição. Para tal deverá instalar o cliente VPN no seu computador conforme instruções abaixo, para ligação ao servidor VPN disponibilizado pela instituição.

Descarregar o instalador aqui: [https://openvpn.net/client-connect-vpn-for-mac-os/](https://openvpn.net/client-connect-vpn-for-mac-os/)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-em-seguida-abrir-o-f"><div><div>Em seguida abrir o ficheiro transferido para o Desktop(1). Mover o ficheiro "OpenVPN_Connect_Installer_signed.pkg" (2) para a Secretária (3).</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2996)  
</div><div>  
</div><div>Em seguida, clicar no ficheiro e fazer a respectiva instalação:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2997)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2998)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2999)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3000)  
</div><div>  
</div><div>Após clicar no botão "Instalar" introduzir as credenciais do computador e continuar com a instalação.</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3001)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3002)  
</div></div><div>  
</div><div>**Configuração e Execução:**  
</div><div><div>Para a sua configuração, deverá transferir o ficheiro [DEEC-Alunos.ovpn](https://kb.deec.uc.pt/attachments/55)  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3003)  
</div><div>  
</div><div>Em seguida, terá que iniciar o programa “OpenVPN Connect”.</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3004)  
</div><div>  
</div><div>Com rato em cima do ícone, clicar em "Import" e de seguida em "From local file".</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3005)  
</div><div>  
</div><div>Escolher o ficheiro "DEEC-Alunos.ovpn" e clicar em "open":</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3006)  
</div><div>  
</div><div>Em seguida, iniciar a conexão:</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3046)  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3047)  
</div><div>  
</div><div>Introduzir as credenciais da sua conta de aluno da Universidade de Coimbra (InforEstudante) com o formato uc20XXYYYYYY@student.uc.pt</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3048)  
</div></div></div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-1-attached-files-dee"><div class="attachments attachments--list"><svg class="icon icon-paperclip "></svg>  
</div></div><div class="knowledge-base-article-linked-tickets js-answer-linked-tickets" id="bkmrk-linked-tickets%C2%A01-ace"><div class="attachments attachments--list"><div class="tasks tasks--standalone"><div class="task"><div class="task-text">  
</div></div></div></div></div>

# Cliente VPN para Alunos com credenciais UC (InforEstudante) - Ubuntu

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt ou @student.uc.pt</p>

### **Instalação Ubuntu 16.04**

```
sudo su
curl -s https://swupdate.openvpn.net/repos/repo-public.gpg | apt-key add -

echo "deb http://build.openvpn.net/debian/openvpn/stable xenial main" > /etc/apt/sources.list.d/openvpn-aptrepo.list
apt update
apt -y install openvpn
```

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-%24-sudo-su-%23-curl--s%C2%A0"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>  
</div></div></div></div>### **Instalação Ubuntu 18.04**

```
sudo apt -y install openvpn
```

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-%24-sudo-apt--y-instal"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>**Execução**</div></div><div>  
</div></div>```
sudo openvpn --config DEEC.ovpn
```

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-%24-sudo-openvpn---con"><div>  
</div><div style="text-align: justify;">Deve introduzir as credenciais da sua conta de aluno da Universidade de Coimbra (InforEstudante) com o formato <uc20XXYYYYYY@student.uc.pt>.  
</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/17583)</div><div>  
</div></div>

# Cliente VPN para Colaboradores e Investigadores - Windows

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt</p>

O OpenVPN disponibiliza uma solução de VPN flexível para garantir a segurança dos dados das comunicações, seja para garantir a privacidade na Internet ou o acesso remoto por parte de colaboradores aos recursos internos das organizações.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div><div>**Instalação**  
</div></div></div></div></div>Pode obter a aplicação OpenVPN seguindo a ligação abaixo.

 [https://openvpn.net/community-downloads/](https://openvpn.net/community-downloads/)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/224)

Em seguida, fazer a respectiva instalação.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-em-seguida%2C-fazer-a-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/225)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/226)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/227)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/228)  
</div><div>  
</div></div></div>### **Configuração**

Para a sua configuração, deverá descarregar o ficheiro "[DEEC.ovpn](https://kb.deec.uc.pt/attachments/12)" (nos anexos) e movê-lo para “**C:\\ProgramFiles\\OpenVPN\\config**”

![](https://helpdesk.deec.uc.pt/api/v1/attachments/239)

### **Execução**

Para finalizar, terá que iniciar o programa “***OpenVPN GUI***” que, com a sua execução, irá aparecer um ícone de um monitor com um cadeado na sua barra de tarefas.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/240)

Com o lado direito do rato em cima do ícone, clicar em *Connect* e introduzir as credencias obtidas pelo gabinete de Gestão da Rede Informática.

<p class="callout warning">Na janela de autenticação, deve colocar o **username** e não o e-mail no campo Username.</p>

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--7"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/241)  
</div><div>  
</div><div>  
</div></div>

# Cliente VPN para Colaboradores e Investigadores - macOS

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt</p>

### **Instalação:**

A ligação VPN permite-lhe criar um túnel seguro sobre a Internet entre o seu computador e a rede da sua Instituição. Para tal deverá instalar o cliente VPN no seu computador conforme instruções abaixo, para ligação ao servidor VPN disponibilizado pela instituição.

 [https://openvpn.net/vpn-server-resources/connecting-to-access-server-with-macos/#Download\_the\_OpenVPN\_Connect\_Client](https://openvpn.net/vpn-server-resources/connecting-to-access-server-with-macos/#Download_the_OpenVPN_Connect_Client)

<div id="bkmrk-">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2980)</div>Em seguida abrir o ficheiro transferido para a Secretária(1). Mover o ficheiro "OpenVPN\_Connect\_Installer\_signed.pkg" (2) para a Secretária (3).

<div id="bkmrk--1"><div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2981)</div></div></div><div id="bkmrk-em-seguida%2C-clicar-n"><center></center>Em seguida, clicar no ficheiro e fazer a respectiva instalação:</div><div id="bkmrk--2">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2982)  
</div><div id="bkmrk--3">  
</div><div id="bkmrk--4">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2983)  
</div><div id="bkmrk--5">  
</div><div id="bkmrk--6">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2984)  
</div><div id="bkmrk--7">  
</div><div id="bkmrk--8">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2985)  
</div><div id="bkmrk--9">  
</div><div id="bkmrk-ap%C3%B3s-clicar-no-bot%C3%A3o">Após clicar no botão "Instalar" introduzir as credenciais do computador e continuar com a instalação.</div><div id="bkmrk--10">  
</div><div id="bkmrk--11">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2986)  
</div><div id="bkmrk--12">  
</div><div id="bkmrk--13">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2987)  
</div><div id="bkmrk--14">  
</div>### **Configuração e Execução:**

Para a sua configuração, deverá transferir o ficheiro "[DEEC.ovpn](https://kb.deec.uc.pt/attachments/51)", localizado no fundo desta página, na secção dos Anexos.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2988)

Em seguida, terá que iniciar o programa “***OpenVPN Connect***”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/2989)

<div id="bkmrk-com-rato-em-cima-do-"><center></center>Com rato em cima do ícone, clicar em *"Import" e de seguida em "From local file".* </div><div id="bkmrk--17">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2990)  
</div><div id="bkmrk--18">  
</div><div id="bkmrk-escolher-o-ficheiro-">Escolher o ficheiro "DEEC.ovpn" e clicar em "open":</div><div id="bkmrk--19">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2991)  
</div><div id="bkmrk--20">  
</div><div id="bkmrk-em-seguida%2C-iniciar-">Em seguida, iniciar a conexão:</div><div id="bkmrk--21"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/2992)</div>  
</div><div id="bkmrk--22">![](https://helpdesk.deec.uc.pt/api/v1/attachments/2993)  
</div><div id="bkmrk--23">  
</div><div id="bkmrk-introduzir-as-suas-c">Introduzir as suas credenciais da instituição - endereço de e-mail e password respectiva</div>

# Cliente VPN para Colaboradores e Investigadores - Ubuntu

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt</p>

### **Instalação:**

Para utilizar o *OpenVPN* basta executar o seguinte comando “**$ sudo apt-get install network-manager-openvpn-gnome**”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/243)

Quando a instalação terminar, reinicie o serviço **network-manager.**

###  ![](https://helpdesk.deec.uc.pt/api/v1/attachments/244)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--1"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div></div></div>### **Configuração:**

Para a sua configuração, deverá baixar o ficheiro [DEEC.ovpn](https://kb.deec.uc.pt/attachments/52). Com o rato ir ao ícone do *network manager* ir a “***Edit Connections …***”, depois “***Add a new connection***” e criar uma conexão com “***Import a saved VPN configuration…***”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/245)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/246)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/247)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/248)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/249)

Seguidamente, selecione o ficheiro *DEEC.ovpn* e digite as credencias do DEEC. Se quiser, poderá alterar o ***Connection name*** para um nome mais fácil de identificar a VPN do DEEC.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-%C2%A0-1"><div class="knowledge-base-article-content richtext-content js-answer-body"><center></center> ![](https://helpdesk.deec.uc.pt/api/v1/attachments/250)<div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/251)</div><div>  
</div></div></div>### **Execução:**

Por fim selecione o ícone do ***network manager***, ir a ***VPN Connections*** e selecionar a *VPN* criada.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/252)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/253)

# Cliente VPN para Colaboradores e Investigadores - Ubuntu (CLI)

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt</p>

### **Instalação Ubuntu 16.04**

<div id="bkmrk-%24-sudo-su-%23-curl--s%C2%A0"><div><div>$ sudo su</div><div>\# curl -s [https://swupdate.openvpn.net/repos/repo-public.gpg](https://swupdate.openvpn.net/repos/repo-public.gpg) | apt-key add -  
</div><div><div>\# echo "deb [http://build.openvpn.net/debian/openvpn/stable](http://build.openvpn.net/debian/openvpn/stable) xenial main" &gt; /etc/apt/sources.list.d/openvpn-aptrepo.list</div><div>\# apt update</div></div><div>\# apt -y install openvpn</div></div></div>### **Instalação Ubuntu 18.04**

<div id="bkmrk-%24-sudo-apt--y-instal">$ sudo apt -y install openvpn</div>### **Execução**

<div id="bkmrk-%24-sudo-openvpn---con">$ sudo openvpn --config DEEC.ovpn</div><div id="bkmrk-">  
</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/3066)

# Cliente VPN para Colaboradores e Investigadores - Android

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt</p>

### **Instalação:**

Para obter o *OpenVPN* basta ir ao *Google Store* e instalar a seguinte aplicação “[OpenVPN Connect – Fast &amp; Saf SSL VPN Client](https://play.google.com/store/apps/details?id=net.openvpn.openvpn&hl=pt_PT "https://play.google.com/store/apps/details?id=net.openvpn.openvpn&hl=pt_PT")”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/254)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/255)

### **Configuração e Execução:**

Para a sua configuração, deverá descarregar o ficheiro [DEEC.ovpn](https://kb.deec.uc.pt/attachments/49) De seguida ir a “***OVPN Profile***”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/256)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-ir-ao-diret%C3%B3rio-do-f"><div class="knowledge-base-article-content richtext-content js-answer-body"><center></center>Ir ao diretório do ficheiro, seleciona-lo e fazer “***Import***”. <div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/257)</div></div></div><div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-para-finalizar%2C-ter%C3%A1"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><center></center>Para finalizar, terá que inserir as credencias obtidas pelo gabinete de Gestão da Rede Informática e fazer “***ADD***”.</div></div></div><div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--3"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/258)  
</div></div></div><div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-1-attached-files-dee"><div>  
</div></div>

# Cliente VPN para Colaboradores e Investigadores - iOS

<p class="callout warning">Para utilizar esta VPN, deverá possuir uma conta @deec.uc.pt</p>

**Instalação:**

Para baixar o *OpenVPN* basta ir a *AppStore* e sacar a seguinte aplicação “*[OpenVPN Connect](https://itunes.apple.com/pt/app/openvpn-connect/id590379981?mt=8 "https://itunes.apple.com/pt/app/openvpn-connect/id590379981?mt=8")*”.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-configura%C3%A7%C3%A3o%3A"><div class="knowledge-base-article-content richtext-content js-answer-body"><center></center><div>  
</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/262)<div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/263)</div><div>  
</div><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/264)  
</div><div>  
<center></center>  
<center></center>**Configuração:**</div></div></div>Para a sua configuração, deverá baixar o ficheiro [DEEC.ovpn](https://kb.deec.uc.pt/attachments/50). De seguida, abrir a aplicação, selecionar a opção “***OVPN Profile***” e aceitar as políticas.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/265)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/266)

Para adicionar o ficheiro ovpn, basta abrir a aplicação ***Files***, ir ao diretório do ficheiro transferido e abri-lo com o ***OpenVPN***.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/267)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/268)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/269)

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-execu%C3%A7%C3%A3o%3A"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><center></center><center></center><center></center>**Execução:**</div></div></div>Para finalizar, selecione *“**ADD**”* e digite as credencias e selecione novamente ***“ADD”*** . Se quiser, poderá alterar o *Title* para um nome mais fácil de identificar à VPN do DEEC.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/270)

# Wi-Fi



# Apresentação da rede Wi-Fi DEEC

<div id="bkmrk-para-al%C3%A9m-da-rede-ed">Para além da rede EDUROAM, o DEEC possui uma rede sem fios própria, que cobre os gabinetes dos Docentes, a maioria das salas de aula e laboratórios didácticos, disponibilizando endereçamento e recursos locais.</div><div id="bkmrk-">  
</div>A lista completa de espaços que passou a estar equipada com Pontos de Acesso, é a seguinte:

<div id="bkmrk-gabinetes-de-docente"><div>1. Gabinetes de Docente no Piso 1 (4 unidades)
2. Gabinetes de Docente no Piso 3 (4 unidades)
3. Gabinetes de Docente no Piso 3A (4 unidades)
4. Gabinete de Gestão da Rede Informática
5. Laboratório de Apoio Informático 1
6. Laboratório de Apoio Informático 3
7. Laboratório de Automação
8. Laboratório de Circuitos
9. Laboratório de Controlo
10. Laboratório de Electrónica
11. Laboratório de Electrónica de Potência
12. Laboratório de Hiperfrequências
13. Laboratório de Instrumentação e Medidas
14. Laboratório de Máquinas
15. Laboratório de Processamento Digital de Sinal
16. Laboratório de Redes e Sistemas de Computadores
17. Laboratório de Sistemas Digitais
18. Laboratório de Telecomunicações
19. Laboratório de Sistemas Electromecânicos
20. Sala de Estudo
21. Sala T4.2
22. Sala T4.3
23. Sala T5.2
24. Sala T5.3
25. Sala T6.3
26. Sala de Exames

</div></div>Esta rede sem fios (DEEC) encontra-se enquadrada na infra-estrutura informática do DEEC, permitindo desta forma o acesso transparente e rápido aos recursos da rede local do DEEC. A rede sem fios EDUROAM (ver abaixo) continua a estar disponível nas zonas públicas do departamento.

Relativamente a configurações técnicas, as definições a utilizar para acesso à rede, são as seguintes:

<div id="bkmrk-defini%C3%A7%C3%A3o-descri%C3%A7%C3%A3o-"><div><table align="center" border="0" cellpadding="5" cellspacing="1"><tbody><tr><th align="left" class="align-center">**Definição**</th><th align="left" class="align-center">**Descrição**</th><th align="center" class="align-center">**Valor a configurar**</th></tr><tr><td class="align-center">Wireless Type</td><td class="align-center">Tipos de tecnologia de rede sem fios que suporta a rede sem fios</td><td class="align-center">802.11 a/b/g/n  
Largura de banda até 900Mbps por espaço  
Suporte para as frequências de 2.4GHz e 5GHz</td></tr><tr><td class="align-center">SSID</td><td class="align-center">Nome da rede sem fios</td><td class="align-center">DEEC</td></tr><tr><td class="align-center">Wireless Protection</td><td class="align-center">Tipo de sistema de encriptação das comunicações sem fios</td><td class="align-center">WPA 2 (AES/CCMP, Dynamic)</td></tr><tr><td class="align-center">Authentication  
(802.1X)</td><td class="align-center">Método de autenticação de um dispositivo / utilizador perante uma rede protegida</td><td class="align-center">EAP-PEAP + MSCHAPv2</td></tr><tr><td class="align-center">Certificate Validation</td><td class="align-center">Sistema de verificação e validação de certificados digitais</td><td class="align-center">Não verificar / Desactivado</td></tr><tr><td class="align-center">Login</td><td class="align-center">Login do utilizador que se pretende ligar à rede</td><td class="align-center">Endereço de e-mail do domínio DEEC.UC.PT  
(por exemplo, user@deec.uc.pt, ou a212345678@alunos.deec.uc.pt)</td></tr><tr><td class="align-center">Password</td><td class="align-center">Password do utilizador que se pretende ligar à rede</td><td class="align-center">Password da conta respectiva</td></tr></tbody></table>

</div></div>Manuais de Instalação da rede DEEC

<div id="bkmrk-windows-7-windows-8.">1. [Windows 7](https://helpdesk.deec.uc.pt/help/pt-pt/9-manuais-de-instalacao/11-windows-7 "https://informatica.deec.uc.pt/redes/redes-sem-fios/instalacao-deec-win7/")
2. [Windows 8.1](https://helpdesk.deec.uc.pt/help/pt-pt/9-manuais-de-instalacao/12-windows-8-1 "https://informatica.deec.uc.pt/redes/redes-sem-fios/instalacao-deec-win8/")
3. [Windows 10](https://helpdesk.deec.uc.pt/help/pt-pt/9-manuais-de-instalacao/13-windows-10 "https://informatica.deec.uc.pt/redes/redes-sem-fios/instalacao-deec-win10")
4. [Android](https://helpdesk.deec.uc.pt/help/pt-pt/9-manuais-de-instalacao/14-android "https://informatica.deec.uc.pt/redes/redes-sem-fios/instalacao-deec-android")
5. [IPhone](https://helpdesk.deec.uc.pt/help/pt-pt/9-manuais-de-instalacao/15-iphone "https://informatica.deec.uc.pt/redes/redes-sem-fios/instalacao-deec-iphone")
6. [Apple Mac OS X](https://helpdesk.deec.uc.pt/help/pt-pt/9-manuais-de-instalacao/16-apple-mac-os-x "https://informatica.deec.uc.pt/redes/redes-sem-fios/instalacao-deec-macos")

</div>

# Apresentação da rede Wi-Fi Eduroam

A rede sem fios da UC integra a rede Eduroam e pode ser utilizada por todos os docentes, estudantes e funcionários que possuam uma conta de correio electrónico num organismo da UC ou em qualquer outra instituição que tenha aderido à rede Eduroam. Do mesmo modo os utilizadores da UC, quando em visita a instituições Eduroam, em Portugal ou no estrangeiro, poderão ter acesso às respectivas redes sem fios sem qualquer alteração na configuração dos seus equipamentos.

A rede EDUROAM está disponível nas principais zonas públicas do DEEC.

Relativamente a configurações técnicos, as definições a utilizar para acesso à rede, são as seguintes:

<table align="center" border="0" cellpadding="5" cellspacing="1" id="bkmrk-defini%C3%A7%C3%A3o-descri%C3%A7%C3%A3o-"><tbody><tr><th align="left">Definição</th><th align="left">Descrição</th><th align="center">Valor a configurar</th></tr><tr><td>Wireless Type</td><td>Tipos de tecnologia de rede sem fios que suporta a rede sem fios</td><td>802.11 a/b/g/n  
Largura de banda até 900Mbps por espaço  
Suporte para as frequências de 2.4GHz e 5GHz</td></tr><tr><td>SSID</td><td>Nome da rede sem fios</td><td>eduroam</td></tr><tr><td>Wireless Protection</td><td>Tipo de sistema de encriptação das comunicações sem fios</td><td>WPA 2 (AES/CCMP, Dynamic)</td></tr><tr><td>Authentication  
(802.1X)</td><td>Método de autenticação de um dispositivo / utilizador perante uma rede protegida</td><td>EAP-PEAP + MSCHAPv2</td></tr><tr><td>Certificate Validation</td><td>Sistema de verificação e validação de certificados digitais</td><td>Não verificar / Desactivado</td></tr><tr><td>Login</td><td>Login do utilizador que se pretende ligar à rede</td><td>Endereço de e-mail  
(por exemplo, user@deec.uc.pt, a2014237500@alunos.deec.uc.pt, ou uc2014237500@student.uc.pt)</td></tr><tr><td>Password</td><td>Password do utilizador que se pretende ligar à rede</td><td>Password da conta respectiva</td></tr></tbody></table>

  
Em sistemas operativos Apple Mac OS X, basta seleccionar a rede “eduroam”, quando esta se encontrar disponível. O sistema operativo pede o login (e-mail) e a password respectiva e a ligação é feita automaticamente, através da combinação WPA2 + AES + PEAP + MSCHAP\_v2.

Em caso de dificuldade, poderão contactar o serviço de Helpdesk, através dos helpdesk@deec.uc.pt

A utilização da rede sem fios da UC é regulamentada pelas regras de utilização da rede da UC, da RCTS e pela legislação aplicável.

NOTA TÉCNICA IMPORTANTE: Caso utilize uma conta de autenticação dos domínios @deec.uc.pt deve desactivar a opção de verificação dos certificados de encriptação.

Manuais de Instalação da rede DEEC

1. [Windows 7](https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/30-windows-7 "https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/30-windows-7")
2. [Windows 8.1](https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/31-windows-8-1 "https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/31-windows-8-1")
3. [Windows 10](https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/32-windows-10 "https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/32-windows-10")
4. [Android](https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/33-android "https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/33-android")
5. [IPhone](https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/34-iphone "https://helpdesk.deec.uc.pt/help/pt-pt/17-manuais-de-instalacao/34-iphone")

# Configuração rede Wi-Fi DEEC no Apple Mac OSX

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios DEEC.

MacOS

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-instale-o-perfil-de-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>Instale o perfil de utilizador, localizado em [https://zammad.deec.uc.pt/api/v1/attachments/89](https://zammad.deec.uc.pt/api/v1/attachments/89 "https://zammad.deec.uc.pt/api/v1/attachments/89").  
</div></div></div></div>Escolha “Abrir com” **Preferências do Sistema**.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/97)

Selecione “Continuar”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/98)

Selecione “Continuar”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/99)

Introduza o seu e-mail (exemplo: a2012123456@deec.uc.pt) e Palavra-Passe.

Selecione “Instalar”.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/100)

Introduza as credenciais de administrador do MacOS.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/101)

Após a instalação deverá surgir informação semelhante à da imagem seguinte:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/102)

Ative a rede Wi-Fi e selecione a rede DEEC.

 ![](https://helpdesk.deec.uc.pt/api/v1/attachments/103)

<div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-1-attached-files-wif"><div class="attachments attachments--list"><svg class="icon icon-paperclip "></svg><div class="attachments-title">1 ATTACHED FILES</div><div class="attachment-icon"><svg class="icon icon-file-unknown "></svg>  
</div>[<span class="attachment-name u-highlight">wifi\_deec\_mschap.mobileconfig</span>](https://helpdesk.deec.uc.pt/api/v1/attachments/89)<div class="attachment-size">2 KB</div></div></div>

# Configuração rede Wi-Fi eduroam no Android

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios eduroam.

### Android

Vá a “Definições”, “Wi-Fi”, selecione a rede “eduroam”, como na imagem seguinte:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/212)

De seguida deverá escolher a opção “PEAP” no campo “método EAP”, como na imagem seguinte:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/213)

Depois disto irão aparecer novos campos para preencher.

No campo “Autenticação da fase 2” deveré escolher a opção “MSCHAPV2”, como na imagem seguinte:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/214)

Por fim, é necessário apenas introduzir as suas credenciais de utilizador(campos: “Identidade” e “Palavra-passe”) no domínio DEEC.UC.PT, como no seguinte exemplo:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/215)

# Configuração rede Wi-Fi Eduroam no Apple Mac OSX

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios Eduroam.

#### MacOS

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk-instale-o-perfil-de-"><div class="knowledge-base-article-content richtext-content js-answer-body"><div><div>Instale o perfil de utilizador, localizado em [https://helpdesk.deec.uc.pt/api/v1/attachments/20219](https://helpdesk.deec.uc.pt/api/v1/attachments/20219 "https://helpdesk.deec.uc.pt/api/v1/attachments/20219").</div></div></div></div>Escolha “Abrir com” **Preferências do Sistema**.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/20297)

Selecione “Continuar”.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--1"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/20298)</div></div></div>Selecione “Continuar”.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--2"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/20299)</div></div></div>Introduza o seu e-mail (exemplo: a2012123456@deec.uc.pt) e Palavra-Passe.

Selecione “Instalar”.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--3"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/20300)</div></div></div>Introduza as credenciais de administrador do MacOS.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--4"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/20301)</div></div></div>Após a instalação deverá surgir informação semelhante à da imagem seguinte:

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--5"><div class="knowledge-base-article-content richtext-content js-answer-body"><div>  
</div>![](https://helpdesk.deec.uc.pt/api/v1/attachments/20302)<div>  
</div><div>  
</div></div></div>  
Ative a rede Wi-Fi e selecione a rede Eduroam.

<div class="knowledge-base-article-content richtext-content js-answer-body" id="bkmrk--6">![](https://helpdesk.deec.uc.pt/api/v1/attachments/20303)</div><div class="knowledge-base-article-attachments js-answer-attachments" id="bkmrk-1-attached-files-wif"><div class="attachments attachments--list"><svg class="icon icon-paperclip "></svg><div class="attachments-title">1 ATTACHED FILES</div><div class="attachment-icon"><svg class="icon icon-file-unknown "></svg>  
</div>[<span class="attachment-name u-highlight">wifi\_eduroam\_mschap.mobileconfig</span>](https://helpdesk.deec.uc.pt/api/v1/attachments/20219)<div class="attachment-size">2 KB</div></div></div>

# Configuração rede Wi-Fi eduroam no iPhone

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios eduroam.

### iPhone

Vá a “Definições”, “Wi-Fi”, selecione a rede “eduroam”, como na imagem seguinte:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/216)

De seguida, é necessário apenas introduzir as suas credenciais de utilizador(campos: “Nome de ulizador” e “Palavra-passe”) , como no seguinte exemplo:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/217)

Depois é necessário pressionar “Aceitar”, como na imagem seguinte.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/218)

Terminando estes passos o aparelho acede à rede:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/219)

# Configuração rede Wi-Fi eduroam no Windows 10

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios edroam.

### Windows 10

Vá a “Menu Iniciar”, “Painel de Controlo”, “Rede e Internet”, “Centro de Rede e Partilha”:

De seguida deverá clicar em “Configurar uma nova ligação ou rede”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/203)

De seguida deverá clicar em “Ligar manualmente a uma rede sem fios”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/204)

Os campos deverão estar preenchidos, de acordo com a imagem seguinte:

Atenção, o “Nome de rede” é case sensitive.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/205)

Na página seguinte, entre em “Alterar definições de Ligação”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/206)

A configuração a fazer no separador “Ligação” e “Segurança” está explicita nas duas imagens abaixo:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/207)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/208)

No separador “Segurança”, “Propriedades de Rede Sem Fios eduroam”, “Definições”, deverá retirar o check de “Validar certificado do servidor”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/209)

Por sua vez entrar em “Configurar” e retirar o check de “Utilizar automaticamente o nome de início de sessão (…)”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/210)

Por fim, é necessário apenas introduzir as suas credenciais de utilizador no domínio eduroam:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/211)

# Configuração rede Wi-Fi eduroam no Windows 7

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios edroam.

### Windows 7

Vá a “Menu Iniciar”, “Painel de Controlo”, “Rede e Internet”, “Centro de Rede e Partilha”:

De seguida deverá clicar em “Configurar uma nova ligação ou rede”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/174)

De seguida deverá clicar em “Ligar manualmente a uma rede sem fios”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/175)

Os campos deverão estar preenchidos, de acordo com a imagem seguinte:

Atenção, o “Nome de rede” é case sensitive.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/176)

Na página seguinte, entre em “Alterar definições de Ligação”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/177)

A configuração a fazer no separador “Ligação” e “Segurança” está explicita nas duas imagens abaixo:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/178)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/179)

No separador “Segurança”, “Propriedades de Rede Sem Fios eduroam”, “Definições”, deverá retirar o check de “Validar certificado do servidor”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/180)

Por sua vez entrar em “Configurar” e retirar o check de “Utilizar automaticamente o nome de início de sessão (…)”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/181)

Por fim, é necessário apenas introduzir as suas credenciais de utilizador no domínio eduroam:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/182)

# Configuração rede Wi-Fi eduroam no Windows 8.1

### Introdução

Neste documento vai ser apresentado passo a passo a instalação da Rede sem fios edroam.

### Windows 8.1

Vá a “Menu Iniciar”, “Painel de Controlo”, “Rede e Internet”, “Centro de Rede e Partilha”:

De seguida deverá clicar em “Configurar uma nova ligação ou rede”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/185)

De seguida deverá clicar em “Ligar manualmente a uma rede sem fios”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/186)

Os campos deverão estar preenchidos, de acordo com a imagem seguinte:

Atenção, o “Nome de rede” é case sensitive.

![](https://helpdesk.deec.uc.pt/api/v1/attachments/187)

Na página seguinte, entre em “Alterar definições de Ligação”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/188)

A configuração a fazer no separador “Ligação” e “Segurança” está explicita nas duas imagens abaixo:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/189)

![](https://helpdesk.deec.uc.pt/api/v1/attachments/190)

No separador “Segurança”, “Propriedades de Rede Sem Fios eduroam”, “Definições”, deverá retirar o check de “Validar certificado do servidor”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/191)

Por sua vez entrar em “Configurar” e retirar o check de “Utilizar automaticamente o nome de início de sessão (…)”:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/192)

Por fim, é necessário apenas introduzir as suas credenciais de utilizador no domínio eduroam:

![](https://helpdesk.deec.uc.pt/api/v1/attachments/193)

# Kit Eletrónica

O Kit de Eletrónica que te foi oferecido pelo DEEC não é para colocares a enfeitar uma mesa ou estante. Queremos que o uses e que o explores ativamente para te tornares um criador. Aqui abaixo damos-te as primeiras dicas para poderes iniciar essa exploração. Claro que tens muito material na Net, mas queremos aqui dar-te os primeiros ponteiros para começares a exploração. E, se tiveres questões, dúvidas, ou sugestões podes sempre contactar-nos.

# Kit Eletrónica [ESP32/Xtensa] (edições 2022/23, 2023/24)

[Clicar no link para continuar](https://kb.deec.uc.pt/books/deec/chapter/kit-eletronica-esp32xtensa "Kit Eletrónica [ESP32/Xtensa]")

# Kit Eletrónica [RISC-V] (edição 2024/25)

[Clicar no link para continuar](https://kb.deec.uc.pt/books/deec/chapter/kit-eletronica-risc-v "Kit Eletrónica [RISC-V]")

# Apoio às aulas



# CHAD

<p class="callout warning">O estudante deve previamente configurar a ligação VPN DEEC Inforestudante - [https://kb.deec.uc.pt/books/deec/page/cliente-vpn-para-alunos-com-credenciais-uc-inforestudante-windows](https://kb.deec.uc.pt/books/deec/page/cliente-vpn-para-alunos-com-credenciais-uc-inforestudante-windows)</p>

Descarregar e instalar o software MobaXterm Home Edition - [https://mobaxterm.mobatek.net/download-home-edition.html](https://mobaxterm.mobatek.net/download-home-edition.html)

[![image-1664806664643.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/scaled-1680-/image-1664806664643.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/image-1664806664643.png)

<p class="callout danger">O ficheiro ZIP descarregado tem OBRIGATORIAMENTE que ser descompactado antes de executar o instalador, caso contrário todo o processo falha!</p>

Executar o software MobaXterm:

[![image-1664806829909.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/scaled-1680-/image-1664806829909.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/image-1664806829909.png)

Executar o comando

```bash
ssh -X 'aluno.testes@student.uc.pt'@10.206.106.X
```

Em que X é a máquina atribuida pelo Docente da cadeira a cada estudante.

<p class="callout danger">Não utilizar um endereço IP de forma aleatória sem consultar o Docente da cadeira.</p>

[![image-1664811845605.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/scaled-1680-/image-1664811845605.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/image-1664811845605.png)

Na primeira tentativa a autenticação, irá falhar. Nesta caso é normal, o sistema está ainda a criar a conta local no sistema.

[![image-1664812336006.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/scaled-1680-/image-1664812336006.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/image-1664812336006.png)

Voltar a executar o comando

```shell
ssh -X 'aluno.testes@student.uc.pt'@10.206.106.X
```

em que X é o número da máquina que lhe foi atribuído pelo Docente da cadeira.

[![image-1664807362520.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/scaled-1680-/image-1664807362520.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/image-1664807362520.png)

Para usar o Nvidia Visual Profiler em ambiente gráfico, executar o comando nvvp

[![image-1664812135071.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/scaled-1680-/image-1664812135071.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-10/image-1664812135071.png)

<p class="callout info">Por vezes, a janela de configuração fica por baixo da janela de Splash (informação). Neste caso, deve arrastar a mesma para outra zona do ecrã.</p>

# Ligação sem fios entre portátil e Projetor

##### **Requisitos**

<p class="callout info">**De momento, está disponível a ligação sem fios entre portátil e Projetores da marca Epson nas salas T4.4, T6.4, A3, A4 em alternativa há tradição ligação por cabo HDMI**</p>

Para se ligar ao projetor através da rede sem fios, deve garantir que o computador está na mesma rede que o projetor.

<p class="callout warning">**Neste caso, deve estar ligado à rede sem fios <span style="text-decoration: underline;">DEEC</span>.**</p>

<p class="callout danger">**A rede EDUROAM não serve para estas ligações.**</p>

[![epson rede 0.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/epson-rede-0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/epson-rede-0.png)

#####   


##### **Instalação de software**

Antes de efetuar a ligação, deve garantir que tem o software Epson iProjection instalado no seu computador.

Poderá obter o software através do endereço:

[https://epson.com/support/wireless-projector-support](https://epson.com/support/wireless-projector-support)

Neste link, pode obter o software para ambiente Windows e ambiente Mac.

Durante a instalação, deve escolher a opção indicada:

[![image-1700235688260.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/image-1700235688260.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/image-1700235688260.png)

<p class="callout info">Não está disponível este software para ambientes Linux.</p>

#####   


##### **Ligação ao projetor**

A partir do software iProjection deve, na secção *Automatic search* escolher o projetor a qual se ligar e clicar no botão *Join.*

[![image-1700235747314.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/image-1700235747314.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/image-1700235747314.png)

[![image-1700235815749.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/image-1700235815749.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/image-1700235815749.png)

[![image-1700235838168.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/image-1700235838168.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/image-1700235838168.png)

[![manual epson 1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/manual-epson-1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/manual-epson-1.png)

De seguida, deve introduzir o *Projector Keyword.* O *Projetor Keyword* ou Palavra-chave pode ser visto na pagina inicial mostrada pelo projetor (ou apertar o botão LAN do comando do projetor).

[![epson palavra 3.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/epson-palavra-3.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/epson-palavra-3.png)

[![epson 4.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/scaled-1680-/epson-4.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-11/epson-4.png)

Após este passo, o computador irá detetar o Projetor como um ecrã adicional, podendo utilizar o mesmo como Mirror ou Extended Display, tal como qualquer monitor.

# Kit Arduino Uno



# Instalação

#### Objetivo:

Familiarização com placa Arduino compatível UNO (Fig.1) e exemlo de utilização usando o IDE Arduino.

#### Lista de material:

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%; height: 310.05px;"><tbody><tr><td style="width: 50.0494%;">[![usb_cable.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/usb-cable.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/usb-cable.jpg)</td><td style="width: 50.0494%;">[![arduino_board.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/arduino-board.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/arduino-board.jpg)</td></tr><tr><td class="align-center" style="width: 50.0494%;">(a)

</td><td class="align-center" style="width: 50.0494%;">(b)</td></tr><tr><td class="align-left" colspan="2" style="width: 100.099%;">Fig.1 - Conjunto de desenvolvimento composto por cabo USB (a) e placa Arduino compatível UNO (b).</td></tr></tbody></table>

##### Software

<table border="1" id="bkmrk-fig.2---software-ard" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![b7Xe2cV.png](https://i.imgur.com/b7Xe2cV.png)](https://i.imgur.com/b7Xe2cV.png)</td><td style="width: 50.0494%;">[![board-ide0.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-ide0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-ide0.png)</td></tr><tr><td colspan="2" style="width: 100.124%;">Fig.2 - [Software IDE Arduino](https://www.arduino.cc/en/software).</td></tr></tbody></table>

O software IDE (Integrated Development Environment) Arduino é uma aplicação multiplataforma que permite desenvolver programas e carregue-los para a placa de desenvolvimento, cuja instalação se recomenda [\[8\]](https://www.arduino.cc/en/software), e se assume por diante (Fig.2).

#### Contextualização:

##### Placa Arduino compatível UNO 

A placa Arduino compatível UNO contém um microcontrolador e um chip USB para série CH340 (Fig.3).

Um microcontrolador é um componente que contém um ou mais processadores, uma memória e interface compatível com entrada e saída de periféricos que permite processar dados e executar tarefas de informática básica.

A placa Arduino compatível UNO dispõe de duas formas de ser alimentada. A primeira é por meio da conexão com cabo USB tipo A ([Fig.1 (a)](#bkmrk-%28a%29)), que pode ser conectado a um computador, sendo por essa conexão, também possível enviar software para a placa.

<table border="1" id="bkmrk-a-b-c-d-e-f-fig.3" style="border-collapse: collapse; width: 100%;"><tbody><tr><td colspan="5" style="width: 50.0494%;">[![board_subtitled2.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-subtitled2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-subtitled2.png)</td><td colspan="5" style="width: 50.0494%;">[![board_drawing.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-drawing.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-drawing.png)</td></tr><tr><td class="align-right" style="width: 10.0124%;">a</td><td colspan="9" style="width: 109.907%;">botão de reset</td></tr><tr><td class="align-right" style="width: 10.0124%;">b</td><td colspan="9" style="width: 109.907%;">conector USB</td></tr><tr><td class="align-right" style="width: 10.0124%;">c</td><td colspan="9" style="width: 109.907%;">fonte de alimentação</td></tr><tr><td class="align-right" style="width: 10.0124%;">d</td><td colspan="9" style="width: 109.907%;">conectores de alimentação elétrica</td></tr><tr><td class="align-right" style="width: 10.0124%;">e</td><td colspan="9" style="width: 109.907%;">entradas analógicas  
</td></tr><tr><td class="align-right" style="width: 10.0124%;">f</td><td colspan="9" style="width: 109.907%;">conexões digitais  
</td></tr><tr><td class="align-right" style="width: 10.0124%;">g</td><td colspan="9">indicador LED de energia  
</td></tr><tr><td class="align-right" style="width: 10.0124%;">h</td><td colspan="9">indicadores LED de estado de comunicação série RX/TX </td></tr><tr><td class="align-right" style="width: 10.0124%;">i</td><td colspan="9">indicador LED programável</td></tr><tr><td class="align-left" colspan="10" style="width: 119.92%;">Fig.3 - Elementos principais selecionados de placa Arduino compatível UNO.  
</td></tr></tbody></table>


##### Gestor de placas

O pacote **Arduino AVR Boards**, deve estar instalado no IDE Arduino de forma a que se possa compilar e transferir programas para a placa Arduino compatível UNO. Tal como ilustrado na Fig.4, o IDE Arduino dispõe de um gestor de placas, que permite gerir e instalar pacotes para várias placas de desenvlvimento.

<table border="1" id="bkmrk--1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![board_ide1.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-ide1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-ide1.png)</td><td style="width: 50.0494%;">[![board_ide2.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-ide2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-ide2.png)</td></tr><tr><td class="align-left" colspan="2" style="width: 100.099%;">Fig.4 - Exemplo de utilização de gestor de placas do IDE Arduino para instalação de pacote **Arduino AVR Boards**.</td></tr></tbody></table>

##### Configuração da placa

Tal como ilustrado na Fig.5, o IDE Arduino permite a seleção da placa e da porta lógica onde está conectada a placa.

<table border="1" id="bkmrk--2" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![mdLUtEA.png](https://i.imgur.com/mdLUtEA.png)](https://i.imgur.com/mdLUtEA.png)</td><td style="width: 50.0494%;">[![cOL8uZU.png](https://i.imgur.com/cOL8uZU.png)](https://i.imgur.com/cOL8uZU.png)</td></tr><tr><td class="align-center" style="width: 50.0494%;">(a)</td><td class="align-center" style="width: 50.0494%;">(b)</td></tr><tr><td style="width: 50.0494%;">[![gR2ft4p.png](https://i.imgur.com/gR2ft4p.png)](https://i.imgur.com/gR2ft4p.png)</td><td style="width: 50.0494%;">[![9bJYHY2.png](https://i.imgur.com/9bJYHY2.png)](https://i.imgur.com/9bJYHY2.png)</td></tr><tr><td class="align-center" style="width: 50.0494%;">(c)</td><td class="align-center" style="width: 50.0494%;">(d)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.5 - Exemplo de utilização do IDE Arduino para configuração da placa de desenvolvimento Arduino compatível UNO.</td></tr></tbody></table>

Por vezes, dependendo das características particulares do sistema usado, a placa de desenvolvimento Arduino compatível UNO pode não ser automaticamente reconhecida. Na eventualidade da placa ligada ao computador através de cabo USB não aparecer na lista de portas lógicas listadas no IDE Arduino (Fig.5 (b)), sugere-se a instalação dos drivers do CH340, tal como em [\[7\]](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all).

#### Exemplo de utilização (Pisca LED):

Um exemplo clássico para iniciar a programação de placa Arduino e placas compatíveis é o Pisca LED, que consiste em ligar e desligar um LED em intervalos de 1 segundo (Fig.7).

Um programa é composto de uma sequência de comandos, normalmente escritos em um arquivo de texto.

Considerando o IDE Arduino previamente configurado para a placa de desenvolvimento ligada ao computador e o seguinte programa de exemplo (Código.1), sugere-se a consulta da Fig.6 para reprodução do exemplo de programação do Arduino compatível UNO.

<table border="1" id="bkmrk-void-setup%28%29-%7B-pinmo" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9177%;">```C
void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   
  delay(1000);                       
  digitalWrite(LED_BUILTIN, LOW);    
  delay(1000);                       
}
```

</td></tr><tr><td style="width: 99.9177%;">Código.1 - Programa Pisca LED.</td></tr></tbody></table>

<table border="1" id="bkmrk--3" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![q3yo3F3.png](https://i.imgur.com/q3yo3F3.png)](https://i.imgur.com/q3yo3F3.png)</td><td style="width: 50.0494%;">[![Q8s2IVM.png](https://i.imgur.com/Q8s2IVM.png)](https://i.imgur.com/Q8s2IVM.png)</td></tr><tr><td style="width: 50.0494%;">[![board_ide5.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-ide5.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-ide5.png)</td><td style="width: 50.0494%;">[![board_ide6.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-ide6.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-ide6.png)</td></tr><tr><td colspan="2">Fig.6 - Ilustração da programação da placa Arduino compatível UNO com o IDE Arduino.</td></tr></tbody></table>

<table border="1" id="bkmrk-fig.7---exemplo-de-a" style="border-collapse: collapse; width: 100%;"><tbody><tr><td colspan="2" style="width: 100.099%;">[![uno.gif](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/uno.gif)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/uno.gif)</td></tr><tr><td colspan="2">Fig.7 - Exemplo de Arduino compatível UNO a executar o programa que controla o LED da placa de desenvolvimento.</td></tr></tbody></table>

#### Outros exemplos

<table border="1" id="bkmrk-%5Ba%5D-%5Bb%5D-%5Bc%5D" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-center" style="width: 33.3051%;">*[![w4QdtAr.png](https://i.imgur.com/w4QdtAr.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)*</td><td style="width: 33.3051%;">*[![h8eDfvF.png](https://i.imgur.com/h8eDfvF.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)*</td><td style="width: 33.3051%;">*[![orKSYyb.png](https://i.imgur.com/orKSYyb.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec)*</td></tr><tr><td class="align-center" style="width: 33.3051%;">[\[a\]](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)</td><td class="align-center" style="width: 33.3051%;">[\[b\]](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)</td><td class="align-center" style="width: 33.3077%;">[\[c\]](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec)</td></tr></tbody></table>

\[a\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] módulo GPS. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps) (acedido em 10/04/2024).

\[b\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] I2C OLED. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled) (acedido em 10/04/2024).

\[c\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] rumo ao DEEC. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec) (acedido em 10/04/2024).

#### Referências

\[1\] Arduino. Documentação de Referência da Linguagem Arduino. url: [https://docs.arduino.cc/learn/programming/reference/](https://docs.arduino.cc/learn/programming/reference/) (acedido em 03/04/2024).

\[2\] Arduino. Introdução ao IDE (Integrated Development Environment) Arduino. url: [https://docs.arduino.cc/software/ide-v2/tutorials/getting-started-ide-v2/ ](https://docs.arduino.cc/software/ide-v2/tutorials/getting-started-ide-v2/)(acedido em 03/04/2024).

\[3\] Arduino. Introdução a Programação para Arduino. url: [https://docs.arduino.cc/learn/programming/sketches/](https://docs.arduino.cc/learn/programming/sketches/) (acedido em 03/04/2024).

\[4\] Arduino. Instalação do IDE Arduino. url: [https://docs.arduino.cc/software/ide-v2/tutorials/getting-started/ide-v2-downloading-and-installing](https://docs.arduino.cc/software/ide-v2/tutorials/getting-started/ide-v2-downloading-and-installing) (acedido em 03/04/2024).

\[5\] Arduino. Instalação de Suporte para Placa no IDE. url: [https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-board-manager](https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-board-manager) (acedido em 03/04/2024).

\[6\] Arduino. Transferência de Sketches (Programas) para Placa Arduino. url: [https://docs.arduino.cc/software/ide-v2/tutorials/getting-started/ide-v2-uploading-a-sketch](https://docs.arduino.cc/software/ide-v2/tutorials/getting-started/ide-v2-uploading-a-sketch) (acedido em 03/04/2024).

\[7\] SparkFun. How to Install CH340 Drivers. url: [https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all) (acedido em 03/04/2024).

\[8\] Arduino. Downloads. url: [https://www.arduino.cc/en/software](https://www.arduino.cc/en/software) (acedido em 10/04/2024).

# [exemplo] módulo GPS

#### Objetivo:

Demonstrar o uso de módulo GPS (Global Positioning System) com Arduino para obter dados GPS.

#### Lista de material:

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![board_overview.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-overview.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-overview.png)</td><td style="width: 50.0494%;">[![board_drawing.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-drawing.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-drawing.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.1 - Placa Arduino compatível UNO.</td></tr></tbody></table>

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.2" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![gps_mod.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/gps-mod.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/gps-mod.jpg)</td><td style="width: 50.0494%;">[![R53TQnH.png](https://i.imgur.com/R53TQnH.png)](https://i.imgur.com/R53TQnH.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.2 - Módulo GPS com interface UART/TTL.</td></tr></tbody></table>

#### Contextualização:

##### Sistema de posicionamento global

O sistema de posicionamento global, mais conhecido pela sigla GPS (em inglês Global Positioning System), é um sistema de navegação por satélite que fornece a um aparelho receptor móvel a sua posição, assim como o horário.

<table border="1" id="bkmrk-fig.3---apontamentos" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 36.0%;">[![GPS24goldenSMALL.gif](https://upload.wikimedia.org/wikipedia/commons/e/e5/GPS24goldenSMALL.gif)](https://upload.wikimedia.org/wikipedia/commons/e/e5/GPS24goldenSMALL.gif)</td><td style="width: 36.0%;">[![Hyperbolic_Navigation.svg](https://upload.wikimedia.org/wikipedia/commons/9/91/Hyperbolic_Navigation.svg)](https://upload.wikimedia.org/wikipedia/commons/9/91/Hyperbolic_Navigation.svg)</td><td style="width: 26.5%;">[![Comparison_satellite_navigation_orbits.svg](https://upload.wikimedia.org/wikipedia/commons/b/b4/Comparison_satellite_navigation_orbits.svg)](https://upload.wikimedia.org/wikipedia/commons/b/b4/Comparison_satellite_navigation_orbits.svg)</td></tr><tr><td colspan="3" style="width: 100.082%;">Fig.3 - Apontamentos sobre GPS retirados de \[2\].</td></tr></tbody></table>

##### Set-up

<table border="1" id="bkmrk-placa-arduino-compat" style="border-collapse: collapse; width: 100%;"><tbody><tr><td colspan="3" style="width: 100.082%;">[![70uITOr.png](https://i.imgur.com/70uITOr.png)](https://i.imgur.com/70uITOr.png)</td></tr><tr><td class="align-center" style="width: 33.3608%;">placa Arduino compatível UNO</td><td style="width: 33.3608%;"><span style="color: #e03e2d;">  
</span></td><td class="align-center" style="width: 33.3608%; height: 29.4583px;">módulo GPS com interface UART/TTL</td></tr><tr><td class="align-right" style="width: 33.3608%; height: 29.4583px;">3.3V</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #e03e2d;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">V</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 33.3608%; height: 29.4583px;">GND</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #000000;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">G</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 33.3608%; height: 29.4583px;">2</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #f1c40f;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">R</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 33.3608%; height: 29.4583px;">3</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #843fa1;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">T</td></tr><tr style="height: 29.4583px;"><td colspan="3" style="width: 100.082%; height: 29.4583px;">Fig.3 - Montagem ilustrativa das ligações a estabelecer entre placa de desenvolvimento e módulo GPS com interface UART/TTL.</td></tr></tbody></table>

##### Bibliotecas

Bibliotecas são coleções de código que perimitem ampliar a capacidade da placa de desenvolvimento facilitando a sua utilização. O IDE Arduino integra um gestor de Bibliotecas cujo uso se exemplifica na Fig.4.

A placa Arduino compatível UNO possui suporte integrado para comunicação série nos pinos 0 e 1. A Biblioteca *SoftwareSerial* permite estabelecer comunicação série nos restantes pinos digitais da placa. Neste exemplo sugere-se a utilização desta abordagem para proporcionar que o módulo GPS e a placa possam comunicar.

No exemplo abaixo, os pinos digitais 2 e 3 da placa Arduino compatível UNO são usados como linhas série RX e TX virtuais.

Desta forma estabelece-se a ligação que permite que a placa escute a porta série do GPS e, quando os dados são recebidos do módulo, eles são enviados para placa. Sendo os dados comunicados pelo módulo GPS tipicamente numa linguagem padrão do GPS é comum o uso de Bibliotecas como a *TinyGPSPlus* para facilitar o uso da informação disponibilizada pelo módulo GPS num formato legível e útil.

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.4" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![oHv2Eft.png](https://i.imgur.com/oHv2Eft.png)](https://i.imgur.com/oHv2Eft.png)</td><td style="width: 50.0494%;">[![X2LQZxM.png](https://i.imgur.com/X2LQZxM.png)](https://i.imgur.com/X2LQZxM.png)</td></tr><tr><td class="align-center" style="width: 50.0618%;">(a)</td><td class="align-center" style="width: 50.0618%;">(b)</td></tr><tr><td colspan="2" style="width: 100.124%;">Fig.4 - Exemplo de utilização do gestor de bibliotecas do IDE Arduino para instalação da Biblioteca *TinyGPSPlus*.</td></tr></tbody></table>

##### Programa

<table border="1" id="bkmrk-%23include-%3Csoftwarese" style="border-collapse: collapse; width: 100%; height: 1069.46px;"><tbody><tr style="height: 1040px;"><td style="width: 99.9588%; height: 1040px;">```C
#include <SoftwareSerial.h>
#include <TinyGPSPlus.h>

SoftwareSerial gpsSerial(2, 3);  // RX, TX
TinyGPSPlus gps;

void setup() {
  gpsSerial.begin(9600);
  Serial.begin(115200);
}

void loop() {

  while (gpsSerial.available() > 0){
    if (gps.encode(gpsSerial.read()))
      displayInfo();
  }

  if (millis() > 5000 && gps.charsProcessed() < 10)
  {
    Serial.println(F("No GPS detected: check wiring."));
    while(true);
  }
}

void displayInfo() {
  Serial.print(F("Location: "));

  if (gps.location.isValid()) {
    Serial.print(gps.location.lat(), 12);
    Serial.print(F(","));
    Serial.print(gps.location.lng(), 12);

  } else {
    Serial.print(F("INVALID"));
  }

  Serial.print(F("  Date/Time: "));
  
  if (gps.date.isValid()) {
    Serial.print(gps.date.month());
    Serial.print(F("/"));
    Serial.print(gps.date.day());
    Serial.print(F("/"));
    Serial.print(gps.date.year());
  } else {
    Serial.print(F("INVALID"));
  }

  Serial.print(F(" "));
  
  if (gps.time.isValid()) {
    if (gps.time.hour() < 10) Serial.print(F("0"));
    Serial.print(gps.time.hour());
    Serial.print(F(":"));
    if (gps.time.minute() < 10) Serial.print(F("0"));
    Serial.print(gps.time.minute());
    Serial.print(F(":"));
    if (gps.time.second() < 10) Serial.print(F("0"));
    Serial.print(gps.time.second());
    Serial.print(F("."));
    if (gps.time.centisecond() < 10) Serial.print(F("0"));
    Serial.print(gps.time.centisecond());
  } else {
    Serial.print(F("INVALID"));
  }

  Serial.println();
}
```

</td></tr><tr style="height: 29.4583px;"><td style="width: 99.9588%;">Código.1 - Programa exemplo de utilização de módulo GPS e biblioteca *TinyGPSPlus* com placa Arduino compatível UNO.</td></tr></tbody></table>

<span style="color: #222222; font-size: 1.4em; font-weight: 400;">\[exemplo\] módulo GPS</span>

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.5" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![9JSllQV.png](https://i.imgur.com/9JSllQV.png)](https://i.imgur.com/9JSllQV.png)</td><td style="width: 50.0494%;">[![45GQYAe.png](https://i.imgur.com/45GQYAe.png)](https://i.imgur.com/45GQYAe.png)</td></tr><tr><td colspan="2" style="width: 100.124%;">Fig.5 - Exemplo de utilização de módulo GPS com placa Arduino compatível UNO programada para processar os dados disponibilizados pelo módulo GPS e exibi-los através de comunicação série.</td></tr></tbody></table>

#### Outros exemplos

<table border="1" id="bkmrk-%5Ba%5D-%5Bb%5D-%5Bc%5D" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-center" style="width: 33.3051%;">*[![MMnvvKD.png](https://i.imgur.com/MMnvvKD.png)](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)*</td><td style="width: 33.3051%;">*[![h8eDfvF.png](https://i.imgur.com/h8eDfvF.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)*</td><td style="width: 33.3051%;">*[![orKSYyb.png](https://i.imgur.com/orKSYyb.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec)*</td></tr><tr><td class="align-center" style="width: 33.3051%;">[\[a\]](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)</td><td class="align-center" style="width: 33.3051%;">[\[b\]](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)</td><td class="align-center" style="width: 33.3077%;">[\[c\]](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec)</td></tr></tbody></table>

\[a\] DEEC - FCTUC. Kit Arduino Uno &gt; Instalação. url: [https://kb.deec.uc.pt/books/deec/page/instalacao-irK](https://kb.deec.uc.pt/books/deec/page/instalacao-irK) (acedido em 10/04/2024).

\[b\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] I2C OLED. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled) (acedido em 10/04/2024).

\[c\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] rumo ao DEEC. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec) (acedido em 10/04/2024).

#### Referências

\[1\] Arduino. Software Serial Example. url: [https://wiki-content.arduino.cc/en/Tutorial/LibraryExamples/SoftwareSerialExample](https://wiki-content.arduino.cc/en/Tutorial/LibraryExamples/SoftwareSerialExample) (acedido em 11/04/2024).

\[2\] Wikipedia. Sistema de posicionamento global. url: [https://pt.wikipedia.org/wiki/Sistema\_de\_posicionamento\_global](https://pt.wikipedia.org/wiki/Sistema_de_posicionamento_global) (acedido em 11/04/2024).

# [exemplo] I2C OLED

#### Objetivo:

Demonstrar o uso de ecrã OLED com placa Arduino compatível UNO para exibir texto.

#### Lista de material:

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![board_overview.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-overview.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-overview.png)</td><td style="width: 50.0494%;">[![board_drawing.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-drawing.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-drawing.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.1 - Placa Arduino compatível UNO.</td></tr></tbody></table>

<table border="1" id="bkmrk-%28a%29-%28b%29-fig2." style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![oled.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/oled.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/oled.jpg)</td><td style="width: 50.0494%;">[![olde_i2c.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/olde-i2c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/olde-i2c.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.2 - Ecrã OLED (organic light-emitting diode) SSD1306 de 0,96 polegadas com resolução de 128×64.</td></tr></tbody></table>

##### Set-up

<table border="1" id="bkmrk-placa-arduino-compat" style="border-collapse: collapse; width: 100%;"><tbody><tr><td colspan="3" style="width: 100.082%;">[![olde_i2c_ex.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/olde-i2c-ex.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/olde-i2c-ex.png)</td></tr><tr><td class="align-center" style="width: 33.3608%;">placa Arduino compatível UNO</td><td style="width: 33.3608%;">  
</td><td class="align-center" style="width: 33.3608%;">ecrã OLED</td></tr><tr><td class="align-right" style="width: 33.3608%;">3.3V</td><td class="align-center" style="width: 33.3608%;"><span style="color: #e03e2d;">----------------------</span></td><td style="width: 33.3608%;">VCC</td></tr><tr><td class="align-right" style="width: 33.3608%;">GND</td><td class="align-center" style="width: 33.3608%;">----------------------</td><td style="width: 33.3608%;">GND</td></tr><tr><td class="align-right" style="width: 33.3608%;">A4</td><td class="align-center" style="width: 33.3608%;"><span style="color: #2dc26b;">----------------------</span></td><td style="width: 33.3608%;">SCA</td></tr><tr><td class="align-right" style="width: 33.3608%;">A5</td><td class="align-center" style="width: 33.3608%;"><span style="color: #236fa1;">-----------------------</span></td><td style="width: 33.3608%;">SDL</td></tr><tr><td colspan="3" style="width: 100.082%;">Fig.3 - Montagem ilustrativa das ligações a estabelecer entre placa de desenvolvimento e o ecrã OLED.</td></tr></tbody></table>

##### Biblioteca 

<table border="1" id="bkmrk-%28a%29-%28b%29-%28c%29-%28d%29-fig." style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![CZevjQJ.png](https://i.imgur.com/CZevjQJ.png)](https://i.imgur.com/CZevjQJ.png)</td><td style="width: 50.0494%;">[![lYBzNfV.png](https://i.imgur.com/lYBzNfV.png)](https://i.imgur.com/lYBzNfV.png)</td></tr><tr><td style="width: 50.0494%;">[![9cxx0A2.png](https://i.imgur.com/9cxx0A2.png)](https://i.imgur.com/9cxx0A2.png)</td><td style="width: 50.0494%;">[![MClmUQY.png](https://i.imgur.com/MClmUQY.png)](https://i.imgur.com/MClmUQY.png)</td></tr><tr><td colspan="2" style="width: 100.124%;">Fig.4 - Exemplo de utilização do gestor de bibliotecas do IDE Arduino para instalação da Biblioteca *Adafruit SSD1306*.</td></tr></tbody></table>

##### Programa

<table border="1" id="bkmrk-%23include-%3Cwire.h%3E-%23i" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9177%;">```C
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// OLED display TWI address
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET     -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

int dummyVal = 0;

void setup() {
  // inicializa ecrã
  if(!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
    Serial.println(F("SSD1306 allocation failed"));
    for(;;); // Don't proceed, loop forever
  }
  display.clearDisplay();
  display.display();

  // imprime linha de texto
  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(55, 30);
  display.print(F("..."));

  // actualiza ecrã
  display.display();
}

void loop() {
  display.clearDisplay();
  display.display();

  display.setTextSize(3);
  display.setTextColor(WHITE);
  display.setCursor(60, 25);

  if (dummyVal == 0) {
    display.print(F("\\"));
  }
  else if (dummyVal == 1) {
    display.print(F("|"));
  }
  else if (dummyVal == 2) {
    display.print(F("/"));
  }
  else if (dummyVal == 3) {
    display.print(F("-"));
  }

  if (dummyVal >= 3) {
    dummyVal = 0;
  }
  else {
    dummyVal = dummyVal + 1;
  }

  display.display();
}
```

</td></tr><tr><td style="width: 99.9177%;">Código.1 - Programa exemplo de utilização de ecrã OLED com placa Arduino compatível UNO para exibir texto</td></tr></tbody></table>

##### \[exemplo\] I2C OLED

<table border="1" id="bkmrk-fig.5" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 24.9691%;">[![dElvfCc.png](https://i.imgur.com/dElvfCc.png)](https://i.imgur.com/dElvfCc.png)</td><td style="width: 24.9691%;">[![2oEmtMR.png](https://i.imgur.com/2oEmtMR.png)](https://i.imgur.com/2oEmtMR.png)</td><td style="width: 24.9691%;">[![Ui1VooD.png](https://i.imgur.com/Ui1VooD.png)](https://i.imgur.com/Ui1VooD.png)</td><td style="width: 24.9691%;">[![LDCkZXB.png](https://i.imgur.com/LDCkZXB.png)](https://i.imgur.com/LDCkZXB.png)</td></tr><tr><td colspan="4" style="width: 99.8764%;">Fig.5 - Ilustração da sequência de símbolos a surgir no ecrã.</td></tr></tbody></table>

#### Outros exemplos

<table border="1" id="bkmrk-%5Ba%5D-%5Bb%5D-%5Bc%5D" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 33.3051%;">*[![MMnvvKD.png](https://i.imgur.com/MMnvvKD.png)](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)*</td><td style="width: 33.3051%;">*[![w4QdtAr.png](https://i.imgur.com/w4QdtAr.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)*</td><td style="width: 33.3051%;">*[![orKSYyb.png](https://i.imgur.com/orKSYyb.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec)*</td></tr><tr><td class="align-center" style="width: 33.3051%;">[\[a\]](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)</td><td class="align-center" style="width: 33.3051%;">[\[b\]](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)</td><td class="align-center" style="width: 33.3077%;">[\[c\]](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec)</td></tr></tbody></table>

\[a\] DEEC - FCTUC. Kit Arduino Uno &gt; Instalação. url: [https://kb.deec.uc.pt/books/deec/page/instalacao-irK](https://kb.deec.uc.pt/books/deec/page/instalacao-irK) (acedido em 10/04/2024).

\[b\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] módulo GPS. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps) (acedido em 10/04/2024).

\[c\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] rumo ao DEEC. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec](https://kb.deec.uc.pt/books/deec/page/exemplo-rumo-ao-deec) (acedido em 10/04/2024).

# [exemplo] rumo ao DEEC

#### Objetivo:

<div class="pointer-container" id="bkmrk-%C2%A0"><div class="pointer anim is-page-editable"><svg class="svg-icon" data-icon="link" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg><div class="input-group inline block"> <button class="button outline icon" data-clipboard-target="#pointer-url" title="Copy Link" type="button"><svg class="svg-icon" data-icon="copy" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></button></div><svg class="svg-icon" data-icon="edit" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></div></div>Chegar ao DEEC - FCTUC via sistema de posicionamento global com Arduino.

##### Requisitos

<table border="1" id="bkmrk-%5Ba%5D-%5Bb%5D-%5Bc%5D" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 33.3051%;">*[![MMnvvKD.png](https://i.imgur.com/MMnvvKD.png)](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)*</td><td style="width: 33.3051%;">*[![w4QdtAr.png](https://i.imgur.com/w4QdtAr.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)*</td><td style="width: 33.3051%;">*[![h8eDfvF.png](https://i.imgur.com/h8eDfvF.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)*</td></tr><tr><td class="align-center" style="width: 33.3051%;">[\[a\]](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)</td><td class="align-center" style="width: 33.3051%;">[\[b\]](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)</td><td class="align-center" style="width: 33.3077%;">[\[c\]](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)</td></tr></tbody></table>

##### \[exemplo\] rumo ao DEEC

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9589%;">*[![tracker1.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/tracker1.jpg)](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)*</td><td style="width: 49.9589%;">[![tracker2.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/tracker2.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/tracker2.jpg)</td></tr></tbody></table>

##### Set-up

<table border="1" id="bkmrk--0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 33.3051%;">*[![gxq9zCf.png](https://i.imgur.com/gxq9zCf.png)](https://i.imgur.com/gxq9zCf.png)*</td><td style="width: 33.3051%;">*[![ZcZapjK.png](https://i.imgur.com/ZcZapjK.png)](https://i.imgur.com/ZcZapjK.png)*</td><td style="width: 33.3077%;">*[![f9H7Yyg.png](https://i.imgur.com/f9H7Yyg.png)](https://i.imgur.com/f9H7Yyg.png)*</td></tr></tbody></table>

<table border="1" id="bkmrk-arduino-compat%C3%ADvel-u" style="border-collapse: collapse; width: 100%; height: 836.562px;"><tbody><tr><td colspan="4" style="width: 100.082%;">*[![luAWx2A.png](https://i.imgur.com/luAWx2A.png)](https://i.imgur.com/luAWx2A.png)*</td></tr><tr><td class="align-center" style="width: 25.0824%; height: 46.25px;">Arduino compatível UNO</td><td style="width: 25.0824%; height: 46.25px;">  
</td><td class="align-center" style="width: 24.9588%; height: 46.25px;">módulo GPS</td><td class="align-center" style="width: 24.9588%; height: 46.25px;">ecrã OLED</td></tr><tr><td class="align-right" rowspan="2" style="height: 58.9166px; width: 25.0824%;">3.3V  
</td><td class="align-center" style="width: 25.0824%;"><span style="color: #e03e2d;">------------</span></td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">  
</td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">VCC</td></tr><tr><td class="align-center" style="width: 25.0824%; height: 29.4583px;"><span style="color: #e03e2d;">------------</span></td><td class="align-center" style="width: 24.9588%; height: 29.4583px;"><span style="color: #000000;">V</span></td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">  
</td></tr><tr><td class="align-right" rowspan="2" style="width: 25.0824%; height: 58.9166px;">GND  
</td><td class="align-center" style="width: 25.0824%; height: 29.4583px;"><span style="color: #000000;">------------</span></td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">  
</td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">GND</td></tr><tr><td class="align-center" style="width: 25.0824%; height: 29.4583px;"><span style="color: #000000;">------------</span></td><td class="align-center" style="width: 24.9588%; height: 29.4583px;"><span style="color: #000000;">G</span></td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">  
</td></tr><tr><td class="align-right" style="width: 25.0824%;">2</td><td class="align-center" style="width: 25.0824%;"><span style="color: #f1c40f;">------------</span></td><td class="align-center" style="width: 24.9588%;">R</td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">  
</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 25.0824%;">3</td><td class="align-center" style="width: 25.0824%;"><span style="color: #843fa1;">------------</span></td><td class="align-center" style="width: 24.9588%;">T</td><td class="align-center" style="width: 24.9588%; height: 29.4583px;">  
</td></tr><tr><td class="align-right" style="width: 25.0824%;">A4</td><td class="align-center" style="width: 25.0824%;"><span style="color: #2dc26b;">------------</span></td><td class="align-center" style="width: 24.9588%;">  
</td><td class="align-center" style="width: 24.9588%;">SDA</td></tr><tr><td class="align-right" style="width: 25.0824%;">A5</td><td class="align-center" style="width: 25.0824%;"><span style="color: #3598db;">------------</span></td><td class="align-center" style="width: 24.9588%;">  
</td><td class="align-center" style="width: 24.9588%;">SDL</td></tr></tbody></table>

##### Programa

```C
#include <SoftwareSerial.h>
#include <TinyGPSPlus.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// OLED display TWI address

#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET     -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

SoftwareSerial gpsSerial(2, 3);  // RX, TX
TinyGPSPlus gps;
bool selector = false;

void setup() {
  // inicializa ecrã
  if(!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
    Serial.println(F("SSD1306 allocation failed"));
    for(;;); // Don't proceed, loop forever
  }
  display.clearDisplay();
  display.display();

  // imprime linha de texto
  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(27, 30);
  display.print(F("..."));

  // actualiza ecrã
  display.display();

  gpsSerial.begin(9600);
  Serial.begin(115200);
}

void loop() {

  while (gpsSerial.available() > 0){
    if (gps.encode(gpsSerial.read()))
      displayInfo();
  }

  if (millis() > 5000 && gps.charsProcessed() < 10)
  {
    Serial.println(F("No GPS detected: check wiring."));
    while(true);
  }
}

void displayInfo() {
  bool chalk_a = true;
  bool chalk_b = true;
  selector = false;
  Serial.print(F("Location: "));

  if (gps.location.isValid()) {
    Serial.print(gps.location.lat(), 12);
    Serial.print(F(","));
    Serial.print(gps.location.lng(), 12);

    if (chalk_a) {
      chalk_a = false;
    } 

  } else {
    Serial.print(F("INVALID"));
  }

  Serial.print(F("  Date/Time: "));
  if (gps.date.isValid()) {
    Serial.print(gps.date.month());
    Serial.print(F("/"));
    Serial.print(gps.date.day());
    Serial.print(F("/"));
    Serial.print(gps.date.year());
  } else {
    Serial.print(F("INVALID"));
  }

  Serial.print(F(" "));
  if (gps.time.isValid()) {
    if (gps.time.hour() < 10) Serial.print(F("0"));
    Serial.print(gps.time.hour());
    Serial.print(F(":"));
    if (gps.time.minute() < 10) Serial.print(F("0"));
    Serial.print(gps.time.minute());
    Serial.print(F(":"));
    if (gps.time.second() < 10) Serial.print(F("0"));
    Serial.print(gps.time.second());
    Serial.print(F("."));
    if (gps.time.centisecond() < 10) Serial.print(F("0"));
    Serial.print(gps.time.centisecond());

    if (chalk_b) {
      chalk_b = false;
    }
  } else {
    Serial.print(F("INVALID"));
  }

  display.clearDisplay();
  display.setTextSize(1);
  display.setTextColor(WHITE);

  if (!chalk_a) {
    static const double DEECFCTUC_LAT = 40.18639388156963, DEECFCTUC_LON = -8.416520235329802;
    unsigned long distanceKmToDEEC =
    (unsigned long)TinyGPSPlus::distanceBetween(
      gps.location.lat(),
      gps.location.lng(),
      DEECFCTUC_LAT, 
      DEECFCTUC_LON);

    if (distanceKmToDEEC > 1000) {
      distanceKmToDEEC = distanceKmToDEEC / 1000;
      selector = true;
    } 

    Serial.println(distanceKmToDEEC);

    display.setTextSize(2);
    display.setTextColor(WHITE);
    display.setCursor(30, 35);
    display.print(distanceKmToDEEC);
    display.setCursor(90, 35);
    if (selector) {
      display.print(F("km"));
    } else {
      display.print(F("m"));
    }

    display.setTextSize(1);
    display.setTextColor(WHITE);
  } else {
    display.setTextSize(2);
    display.setTextColor(WHITE);
    display.setCursor(40, 35);
    display.print(F("..."));
    display.setCursor(90, 35);
    if (selector) {
      display.print(F("km"));
    } else {
      display.print(F("m"));
    }

    display.setTextSize(1);
    display.setTextColor(WHITE);
  }

  display.setCursor(5, 5);
  display.print(F("agora"));
  display.setCursor(5, 20);
  display.print(F("faltam"));
  display.setCursor(5, 55);
  display.print(F("para chegar ao DEEC"));

  if (!chalk_b) {

    display.setCursor(50, 5);
    display.print(gps.time.hour());
    display.setCursor(63, 5);
    display.print(":");
    display.setCursor(70, 5);
    display.print(gps.time.minute());
    display.setCursor(83, 5);

  }
  else {
    display.setCursor(50, 5);
    display.print(F("00"));
    display.setCursor(63, 5);
    display.print(":");
    display.setCursor(70, 5);
    display.print(F("00"));
    display.setCursor(83, 5);

  }
  display.display();
  Serial.println();
}
```

#### Outros exemplos

<table border="1" id="bkmrk-%5Ba%5D-%5Bb%5D-%5Bc%5D-0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 33.3051%;">*[![MMnvvKD.png](https://i.imgur.com/MMnvvKD.png)](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)*</td><td style="width: 33.3051%;">*[![w4QdtAr.png](https://i.imgur.com/w4QdtAr.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)*</td><td style="width: 33.3051%;">*[![h8eDfvF.png](https://i.imgur.com/h8eDfvF.png)](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)*</td></tr><tr><td class="align-center" style="width: 33.3051%;">[\[a\]](https://kb.deec.uc.pt/books/deec/page/instalacao-irK)</td><td class="align-center" style="width: 33.3051%;">[\[b\]](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps)</td><td class="align-center" style="width: 33.3077%;">[\[c\]](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled)</td></tr></tbody></table>

\[a\] DEEC - FCTUC. Kit Arduino Uno &gt; Instalação. url: [https://kb.deec.uc.pt/books/deec/page/instalacao-irK](https://kb.deec.uc.pt/books/deec/page/instalacao-irK) (acedido em 10/04/2024).

\[b\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] módulo GPS. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps](https://kb.deec.uc.pt/books/deec/page/exemplo-modulo-gps) (acedido em 10/04/2024).

\[c\] DEEC - FCTUC. Kit Arduino Uno &gt; \[exemplo\] I2C OLED. url: [https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled](https://kb.deec.uc.pt/books/deec/page/exemplo-i2c-oled) (acedido em 10/04/2024).

# [exemplo] acelerómetro e giroscópio MPU-6050

#### Objetivo:

Demonstrar o uso de sensor com acelerómetro e giroscópio para obter dados de sensores inerciais.

#### Lista de material:

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![board_overview.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-overview.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-overview.png)</td><td style="width: 50.0494%;">[![board_drawing.png](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/scaled-1680-/board-drawing.png)](https://kb.deec.uc.pt/uploads/images/gallery/2024-04/board-drawing.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.1 - Placa Arduino compatível UNO.</td></tr></tbody></table>

<table border="1" id="bkmrk-%28a%29-%28b%29-fig.2" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![mxrQ0wq.png](https://i.imgur.com/mxrQ0wq.png)](https://i.imgur.com/mxrQ0wq.png)</td><td style="width: 50.0494%;">[![oR8cmlO.png](https://i.imgur.com/oR8cmlO.png)](https://i.imgur.com/oR8cmlO.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">Fig.2 - Sensor MPU-6050.</td></tr></tbody></table>

#### Contextualização:

Uma unidade de medição inercial (IMU do inglês ***i**nertial **m**easurement **u**nit*) é um dispositivo eletrónico que permite quantificar a força específica de um corpo, a taxa angular e, por vezes, a orientação do corpo, usando uma combinação de acelerómetros, giroscópios e, às vezes, magnetómetros \[1\].

<table border="1" id="bkmrk-fig.3---ilustra%C3%A7%C3%B5es-" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 33.3745%;">[![Apollo_Command_Module_primary_guidance_system_locations.png](https://upload.wikimedia.org/wikipedia/commons/8/8e/Apollo_Command_Module_primary_guidance_system_locations.png)](https://upload.wikimedia.org/wikipedia/commons/8/8e/Apollo_Command_Module_primary_guidance_system_locations.png)</td><td style="width: 33.3745%;">[![Apollo_Inertial_Measurement_Unit.png](https://upload.wikimedia.org/wikipedia/commons/1/1e/Apollo_Inertial_Measurement_Unit.png)](https://upload.wikimedia.org/wikipedia/commons/1/1e/Apollo_Inertial_Measurement_Unit.png)</td><td style="width: 33.3745%;">[![Apollo_IMU_at_Draper_Hack_the_Moon_exhibit.agr.jpg](https://upload.wikimedia.org/wikipedia/commons/3/35/Apollo_IMU_at_Draper_Hack_the_Moon_exhibit.agr.jpg)](https://upload.wikimedia.org/wikipedia/commons/3/35/Apollo_IMU_at_Draper_Hack_the_Moon_exhibit.agr.jpg)</td></tr><tr><td colspan="3" style="width: 100.124%;">Fig.3 - Ilustrações dos principais componentes do sistema de orientação do módulo de comando e serviço Apollo, um dos componentes usado para o programa Apollo, que pousou astronautas na Lua entre 1969 e 1972.</td></tr></tbody></table>

##### Set-up

<table border="1" id="bkmrk-placa-arduino-compat" style="border-collapse: collapse; width: 100%;"><tbody><tr><td colspan="3" style="width: 100.082%;">[![AtHzynb.png](https://i.imgur.com/AtHzynb.png)](https://i.imgur.com/AtHzynb.png)</td></tr><tr><td class="align-center" style="width: 33.3608%;">placa Arduino compatível UNO</td><td style="width: 33.3608%;"><span style="color: #e03e2d;">  
</span></td><td class="align-center" style="width: 33.3608%; height: 29.4583px;">sensor MPU-6050</td></tr><tr><td class="align-right" style="width: 33.3608%; height: 29.4583px;">3.3V</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #e03e2d;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">VCC</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 33.3608%; height: 29.4583px;">GND</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #000000;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">GND</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 33.3608%; height: 29.4583px;">A5</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #236fa1;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">SCL</td></tr><tr style="height: 29.4583px;"><td class="align-right" style="width: 33.3608%; height: 29.4583px;">A4</td><td class="align-center" style="width: 33.3608%; height: 29.4583px;"><span style="color: #169179;">----------------------</span></td><td style="width: 33.3608%; height: 29.4583px;">SDA</td></tr><tr style="height: 29.4583px;"><td colspan="3" style="width: 100.082%; height: 29.4583px;">Fig.4 - Montagem ilustrativa das ligações a estabelecer entre placa de desenvolvimento e sensor MPU-6050.</td></tr></tbody></table>

##### Bibliotecas

<table border="1" id="bkmrk-%5Ba%5D-%5Bb%5D-%5Bc%5D" style="width: 100%; height: 143.235px;"><tbody><tr style="height: 113.438px;"><td class="align-center" style="width: 33.2909%;">*[![LFBQpBy.png](https://i.imgur.com/LFBQpBy.png)](https://i.imgur.com/LFBQpBy.png)*</td><td style="width: 33.2909%;">*[![QrHgT1y.png](https://i.imgur.com/QrHgT1y.png)](https://i.imgur.com/QrHgT1y.png)*</td><td style="width: 33.2948%;">*[![qoDdwQl.png](https://i.imgur.com/qoDdwQl.png)](https://i.imgur.com/qoDdwQl.png)*</td></tr><tr style="height: 29.7969px;"><td colspan="3" style="width: 99.8765%; height: 29.7969px;">Fig.5 - Exemplo de utilização do gestor de bibliotecas do IDE Arduino para instalação da biblioteca *Adafruit MPU6050*.</td></tr></tbody></table>

<div class="pointer-container" id="bkmrk-%C2%A0"><div class="pointer anim is-page-editable"><svg class="svg-icon" data-icon="link" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg><div class="input-group inline block"> <button class="button outline icon" data-clipboard-target="#pointer-url" title="Copy Link" type="button"><svg class="svg-icon" data-icon="copy" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></button></div><svg class="svg-icon" data-icon="edit" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></div></div>##### Programa

<div class="pointer-container" id="bkmrk-%C2%A0-0"><div class="pointer anim is-page-editable"><svg class="svg-icon" data-icon="link" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg><div class="input-group inline block"> <button class="button outline icon" data-clipboard-target="#pointer-url" title="Copy Link" type="button"><svg class="svg-icon" data-icon="copy" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></button></div><svg class="svg-icon" data-icon="edit" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></div></div><table border="1" id="bkmrk-%2F%2F-demonstra%C3%A7%C3%A3o-de-u" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.8765%;">```C
// Demonstração de utilização de sensor Adafruit MPU6050
 
#include "Adafruit_MPU6050.h"
#include "Adafruit_Sensor.h"
#include "Wire.h"
 
Adafruit_MPU6050 mpu;
 
void setup(void) {
  Serial.begin(115200);
  while (!Serial)
    delay(10); 
 
  Serial.println("a testar sensor MPU6050!");
 
  // Try to initialize!
  if (!mpu.begin()) {
    Serial.println("Falhou inicialização de MPU6050");
    while (1) {
      delay(10);
    }
  }
  Serial.println("MPU6050 inicializado!");
 
  mpu.setAccelerometerRange(MPU6050_RANGE_8_G);
  Serial.print("Gamara de valores selecionada para acelerómetro: ");
  switch (mpu.getAccelerometerRange()) {
  case MPU6050_RANGE_2_G:
    Serial.println("+-2G");
    break;
  case MPU6050_RANGE_4_G:
    Serial.println("+-4G");
    break;
  case MPU6050_RANGE_8_G:
    Serial.println("+-8G");
    break;
  case MPU6050_RANGE_16_G:
    Serial.println("+-16G");
    break;
  }
  mpu.setGyroRange(MPU6050_RANGE_2000_DEG);
  Serial.print("Gamara de valores selecionada para giroscópio: ");
  switch (mpu.getGyroRange()) {
  case MPU6050_RANGE_250_DEG:
    Serial.println("+- 250 deg/s");
    break;
  case MPU6050_RANGE_500_DEG:
    Serial.println("+- 500 deg/s");
    break;
  case MPU6050_RANGE_1000_DEG:
    Serial.println("+- 1000 deg/s");
    break;
  case MPU6050_RANGE_2000_DEG:
    Serial.println("+- 2000 deg/s");
    break;
  }
 
  mpu.setFilterBandwidth(MPU6050_BAND_21_HZ);
  Serial.print("Filtro a considerar: ");
  switch (mpu.getFilterBandwidth()) {
  case MPU6050_BAND_260_HZ:
    Serial.println("260 Hz");
    break;
  case MPU6050_BAND_184_HZ:
    Serial.println("184 Hz");
    break;
  case MPU6050_BAND_94_HZ:
    Serial.println("94 Hz");
    break;
  case MPU6050_BAND_44_HZ:
    Serial.println("44 Hz");
    break;
  case MPU6050_BAND_21_HZ:
    Serial.println("21 Hz");
    break;
  case MPU6050_BAND_10_HZ:
    Serial.println("10 Hz");
    break;
  case MPU6050_BAND_5_HZ:
    Serial.println("5 Hz");
    break;
  }
 
  Serial.println("");
  delay(100);
}
 
void loop() {
 
  /* leitura dos valores reportados */
  sensors_event_t a, g, temp;
  mpu.getEvent(&a, &g, &temp);
 
  /* impressão das leituras */
  Serial.print("Aceleração X: ");
  Serial.print(a.acceleration.x);
  Serial.print(", Y: ");
  Serial.print(a.acceleration.y);
  Serial.print(", Z: ");
  Serial.print(a.acceleration.z);
  Serial.println(" m/s^2");
 
  Serial.print("Rotação X: ");
  Serial.print(g.gyro.x);
  Serial.print(", Y: ");
  Serial.print(g.gyro.y);
  Serial.print(", Z: ");
  Serial.print(g.gyro.z);
  Serial.println(" rad/s");
 
  Serial.print("Temperatura: ");
  Serial.print(temp.temperature);
  Serial.println(" ºC");
 
  Serial.println("");
  delay(500);
}
```

</td></tr><tr><td style="width: 99.8765%;">Código.1 - Programa exemplo de utilização de sensor MPU-6050 e biblioteca *Adafruit MPU6050* com placa Arduino compatível UNO.</td></tr></tbody></table>

#### Referências

\[1\] Wikipedia. Unidade de medição inercial. url: [https://en.wikipedia.org/wiki/Inertial\_measurement\_unit](https://en.wikipedia.org/wiki/Inertial_measurement_unit) (acedido em 26/04/2024).

# Kit Eletrónica [RISC-V]

Este é um guia para a placa de desenvolvimento ESP32-C6-DevKitM-1! Neste capítulo introdutório pelo mundo da eletrónica, exploraram-se as poderosas capacidades deste pequeno, mas versátil dispositivo. Quer sejas aprendiz no mundo dos microcontroladores ou já tenhas alguma experiência, este guia fornecer-te-á instruções passo a passo e exemplos práticos para te ajudar a tirar o máximo proveito do teu kit de eletrónica. Começaremos com conceitos básicos e progrediremos para projetos mais complexos. Vamos avançar e começar a criar!

# Instalação

Esta página constiui um guia para a instalação do [Arduino Integrated Development Environment (IDE)](https://www.arduino.cc/en/software), uma ferramenta de *software* utilizada no Departamento de Engenharia Eletrotécnica e de Computadores da Universidade de Coimbra. O **Arduino IDE** é essencial para estudantes e investigadores envolvidos em vários projetos de engenharia, particularmente aqueles relacionados com disciplinas de Engenharia Eletrotécnica e de Computadores. O guia abrange o processo passo a passo de *download*, instalação e configuração do *software* em diferentes plataformas, garantindo que os utilizadores tenham os recursos e as instruções necessários para configurar corretamente o **Arduino IDE**. Este recurso foi concebido para ajudar os utilizadores a superar possíveis desafios durante o processo de instalação, assegurando que possam utilizar o **Arduino IDE** de forma eficiente para os seus propósitos académicos e de investigação.

#### Contextualização:

O **ESP32-C6-DevKitM-1** é uma placa de desenvolvimento que integra o microcontrolador **ESP32-C6**, parte da linha avançada de soluções **IoT** da *Espressif*. Este microcontrolador integra um CPU RISC-V de 32 bits, oferecendo conectividade sem fios com *Wi-Fi* 6 e *Bluetooth* 5 (LE). Projetado para criadores, o **ESP32-C6-DevKitM-1** proporciona uma plataforma compacta e versátil para a criação e teste de aplicações **IoT**, com amplo suporte para operações seguras, de alto desempenho e baixo consumo de energia. A placa é especialmente indicada para prototipagem e implementação de dispositivos inteligentes.

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9382%;">[![esp32c6 000](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-v1-annotated-photo.png)](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/user_guide.html)</td><td style="width: 50.0618%;">[![esp32c6 00](https://i.imgur.com/qFG6mI8.png)](https://docs.espressif.com/projects/esp-idf/en/latest/esp32c6/get-started/index.html)</td></tr><tr><td colspan="2" style="width: 100%;">Principais componentes do microcontrolador **ESP32-C6-DevKitM-1** e elementos principais utilizados para a configuração e simulação de projetos de engenharia.</td></tr></tbody></table>

#### Procedimento:

<table border="1" id="bkmrk--0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 20.0247%;">  
</td><td style="width: 20.0247%;">  
</td><td style="width: 20.0247%;">[![esp32c6 01](https://www.arduino.cc/wiki/370832ed4114dd35d498f2f449b4781e/arduino.svg)](https://support.arduino.cc/hc/en-us/articles/360019833020-Download-and-install-Arduino-IDE)</td><td style="width: 20.0247%;">  
</td><td style="width: 20.0247%;">  
</td></tr><tr><td colspan="5" style="width: 100.124%;">Primeira etapa do processo de instalação do **Arduino IDE**: Acesso ao portal [oficial](https://support.arduino.cc/hc/en-us/articles/360019833020-Download-and-install-Arduino-IDE) para *download* do *software*.</td></tr></tbody></table>

Apresentam-se de seguida as etapas fundamentais para a configuração do Arduino IDE

- instalar o pacote de placas ESP32, abrindo o menu Preferências navegando até File &gt; Preferences. Procurar na parte inferior do menu Preferências "Additional boards manager URLS" e copiar o link JSON seguinte nesse campo:

```C
https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json
```

<table border="1" id="bkmrk--1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![esp32c6 002](https://i.imgur.com/J3ELem4.png)](https://i.imgur.com/J3ELem4.png)</td><td style="width: 49.9506%;">[![esp32c6 003](https://i.imgur.com/z2T6jbP.png)](https://i.imgur.com/z2T6jbP.png)</td></tr></tbody></table>

- Abrir a ferramenta Boards Manager, pesquisar por

```C
espressif ESP32
```

e instalar a versão mais recente. Este processo de instalação pode demorar algum tempo.

<table border="1" id="bkmrk--2" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![esp32c6 004](https://i.imgur.com/V7hIjpb.png)](https://i.imgur.com/V7hIjpb.png)</td><td style="width: 49.9506%;">[![esp32c6 005](https://i.imgur.com/PAkdgke.png)](https://i.imgur.com/PAkdgke.png)</td></tr></tbody></table>

- Selecionar o dispositivo ESP32 adequado

```
ESP32C6 Dev Module
```

<table border="1" id="bkmrk--3" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 33.2994%;">[![esp32c6 006](https://i.imgur.com/L8BsSal.png)](https://i.imgur.com/L8BsSal.png)</td><td style="width: 33.2994%;">[![esp32c6 007](https://i.imgur.com/YaUljWg.png)](https://i.imgur.com/YaUljWg.png)</td><td style="width: 33.3025%;">[![esp32c6 008](https://i.imgur.com/6SZaddd.png)](https://i.imgur.com/6SZaddd.png)</td></tr></tbody></table>

#### Primeiro Programa:  


[Clicar no link para continuar para primeiro programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa-fGK)

#### Referências

\[1\] Espressif Systems, "ESP32-C6-DevKitM-1 User Guide," Espressif Systems, Aug. 2023. \[Online\]. Available: [https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/user\_guide.html](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/user_guide.html). \[Accessed: 27-Aug-2024\].

\[2\] Arduino, "Download and install Arduino IDE," Arduino, Sep. 2021. \[Online\]. Available: [https://support.arduino.cc/hc/en-us/articles/360019833020-Download-and-install-Arduino-IDE](https://support.arduino.cc/hc/en-us/articles/360019833020-Download-and-install-Arduino-IDE). \[Accessed: 27-Aug-2024\].

# Primeiro Programa

Boas-vindas ao guia introdutório para o seu primeiro programa Arduino! A programação com IDE Arduino é uma excelente maneira de mergulhar no mundo dos sistemas embebidos, permitindo controlar e interagir com o mundo físico através de código. Envolve a escrita de código no Ambiente de Desenvolvimento Integrado (IDE) do Arduino, onde um programa é chamado de *sketch*. Neste guia, vai aprender sobre as estruturas fundamentais de um *sketch* Arduino: as funções **setup()** e **loop()**.

A função **setup()** é onde se inicializam as definições e configurações, sendo **executada apenas uma vez** quando a placa Arduino é ligada ou reiniciada. É aqui que se definem os modos dos pinos, se inicia a comunicação serial e se realizam outras tarefas de configuração necessárias para um dado projeto.

Por outro lado, a função **loop()** contém a lógica principal do programa e é **executada continuamente**, permitindo que a plca de desenvolvimento a programar realize tarefas repetitivas, como ler sensores, controlar saídas e responder a eventos.

Ao dominar estes conceitos, estará apto a criar projetos dinâmicos e interativos que respondem ao mundo ao seu redor. Vamos começar!

O código seguinte faz com que o *Light-emitting diode* (LED) da placa de desenvolvimento *ESP32-C6-DevKitM-1* pisque, alternando entre ligado e desligado em intervalos regulares. Além disso, apresenta-se de seguida uma representação ilustrativo para referência.

```C
/*
  BlinkRGB

  Demonstrates usage of onboard RGB LED on some ESP dev boards.

  Calling digitalWrite(RGB_BUILTIN, HIGH) will use hidden RGB driver.

  RGBLedWrite demonstrates control of each channel:
  void neopixelWrite(uint8_t pin, uint8_t red_val, uint8_t green_val, uint8_t blue_val)

  WARNING: After using digitalWrite to drive RGB LED it will be impossible to drive the same pin
    with normal HIGH/LOW level
*/
//#define RGB_BRIGHTNESS 64 // Change white brightness (max 255)

// the setup function runs once when you press reset or power the board
void setup() {
  // No need to initialize the RGB LED
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(RGB_BUILTIN, HIGH);  // Turn the RGB LED white
  delay(1000);
  digitalWrite(RGB_BUILTIN, LOW);  // Turn the RGB LED off
  delay(1000);
}
```

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 100%;">[![tft.gif](https://s10.gifyu.com/images/SogiM.gif)](https://s10.gifyu.com/images/SogiM.gif)</td></tr><tr><td style="width: 100%;">Montagem exemplificativa</td></tr></tbody></table>

#### Utilização do Monitor Serial no Arduino IDE

O Monitor Serial é uma ferramenta crucial dentro do Arduino IDE que permite enviar e receber dados entre a placa de desenvolvimento e o computador. Esta funcionalidade é extremamente útil para depuração, monitorização de leituras de sensores e interação com o programa do Arduino em tempo real.

##### Como Funciona o Monitor Serial

O Monitor Serial comunica com a placa de desenvolvimento através de uma conexão serial, que normalmente é estabelecida através do cabo USB que liga a placa ao computador. Esta conexão permite a transmissão de dados em texto entre o seu computador e a placa de desenvolvimento. Podem enviar-se comandos do Monitor Serial para a placa de desenvolvimento, e, por sua vez, a placa de desenvolvimento pode enviar de volta dados, que são exibidos na janela do Monitor Serial.

Para utilizar o Monitor Serial, siga estes passos:

1\. **Inicializar a Comunicação Serial:** No *sketch*, deve inicializar-se a comunicação serial utilizando a função *`Serial.begin()`*. Esta função recebe um único argumento, a taxa de transmissão, que define a velocidade da comunicação em bits por segundo (bps). Uma taxa de transmissão comum é 9600.

```C
void setup() {
	Serial.begin(9600); // Inicia a comunicação serial a uma taxa de 9600 bps
} 
```

2\. **Enviar Dados para o Monitor Serial:** Pode enviar-se dados da placa de desenvolvimento para o Monitor Serial utilizando as funções *`Serial.print()`* ou *`Serial.println()`*. A função *`Serial.print()`* envia dados sem adicionar uma nova linha no final, enquanto que *`Serial.println()`* envia os dados seguidos de um caractere de nova linha.

```C
void loop() {
	Serial.println("Olá, Mundo!"); // Envia "Olá, Mundo!" para o Monitor serial
	delay(1000); // Aguarda 1 segundo
}
```

3\. **Receber Dados do Monitor Serial:** O Monitor Serial também pode enviar dados para a placa de desenvoldimento. Podem ler-se estes dados utilizando no *sketch* as funções *`Serial.read()`*, *`Serial.available()`*, e outras funções relacionadas. No exemplo seguinte ilustra-se a leitura de um caractereusando o Monitor Serial:

```C
void loop() {
	if (Serial.available() > 0) { // Verifica se há dados disponíveis para leitura
    	char receivedChar = Serial.read(); // Lê o próximo caractere disponível
    	Serial.print("Recebido: ");
    	Serial.println(receivedChar); // Imprime o caractere recebido
	}
}
```

#### Segundo Programa

O *sketch* seguinte ilustra como monificar o *sketch* do primeiro programa anteriormente sugerido para começar a aproveitar as possibilidades do Monitor Serial:

```C
/*
  BlinkRGB

  Demonstrates usage of onboard RGB LED on some ESP dev boards.

  Calling digitalWrite(RGB_BUILTIN, HIGH) will use hidden RGB driver.

  RGBLedWrite demonstrates control of each channel:
  void neopixelWrite(uint8_t pin, uint8_t red_val, uint8_t green_val, uint8_t blue_val)

  WARNING: After using digitalWrite to drive RGB LED it will be impossible to drive the same pin
    with normal HIGH/LOW level
*/
//#define RGB_BRIGHTNESS 64 // Change white brightness (max 255)

// the setup function runs once when you press reset or power the board
void setup() {
  // No need to initialize the RGB LED
  Serial.begin(9600);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(RGB_BUILTIN, HIGH);  // Turn the RGB LED white
  Serial.println("LED ligado"); // Imprime o caractere recebido
  delay(1000);
  digitalWrite(RGB_BUILTIN, LOW);  // Turn the RGB LED off
  Serial.println("LED desligado"); // Imprime o caractere recebido
  delay(1000);
}
```

Depois garantir a selecionação do dispositivo ESP32 adequado ( *ESP32C6 Dev Module* ), copiar o código anterior, compilar e carregar o código para a placa ESP32, deverá ser possível verificar o resultado.

<table border="1" id="bkmrk-%C2%A0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![tft.gif](https://i.imgur.com/YJnmXyk.png)](https://i.imgur.com/YJnmXyk.png)</td><td style="width: 49.9506%;">[![tft.gif](https://i.imgur.com/OHiT1Gy.png)](https://i.imgur.com/OHiT1Gy.png)</td></tr></tbody></table>

# [Programa] LED com efeito dinâmico de mudança de cor

O seguinte código demonstra como controlar o LED RGB numa placa de desenvolvimento ESP32-C6. Especificamente, o código de exemplo mostra como criar um efeito dinâmico de mudança de cor, fazendo um ciclo através de diferentes cores no LED RGB da placa. Este exemplo serve como uma ilustração prática de como aproveitar as capacidades do ESP32-C6 para produzir padrões de luz visualmente atraentes. Ao executar este código, os utilizadores podem observar como o LED RGB transita suavemente por um espectro de cores, tornando-o uma referência útil para desenvolver efeitos semelhantes baseados em luz em outros projetos.

<table border="1" id="bkmrk-adafruit-neopixel-us" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0494%;">[![esp32c6 01](https://i.imgur.com/s70NHu1.png)](https://i.imgur.com/s70NHu1.png)</td><td style="width: 50.0494%;">[![esp32c6 01](https://i.imgur.com/cAcDQsO.png)](https://i.imgur.com/cAcDQsO.png)</td></tr><tr><td colspan="2" style="width: 100.099%;">```C
Adafruit NeoPixel
```

</td></tr><tr><td colspan="2">Usando a ferramenta de gestão de bibliotecas do IDE Arduino procurar e instalar a biblioteca: Adafruit\_NeoPixel.</td></tr></tbody></table>

```C
#include <Adafruit_NeoPixel.h>
#include <cmath>

// Pin and LED configuration
constexpr uint8_t LED_PIN = 8;
constexpr uint8_t NUM_LEDS = 1;

// NeoPixel object
Adafruit_NeoPixel rgbLed(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

// Color structure
struct RGB {
    uint8_t r, g, b;
};

void setup() {
    rgbLed.begin();  // Initialize the RGB LED
    rgbLed.show();   // Turn off the LED (as it's initialized to all 0s)
}

void setColor(const RGB& color) {
    rgbLed.setPixelColor(0, rgbLed.Color(color.r, color.g, color.b));
    rgbLed.show();
}

// Convert HSV to RGB
RGB hsvToRgb(float h, float s, float v) {
    float c = v * s;
    float x = c * (1 - std::abs(std::fmod(h / 60.0, 2) - 1));
    float m = v - c;
    float r, g, b;

    if (h >= 0 && h < 60) {
        r = c, g = x, b = 0;
    } else if (h >= 60 && h < 120) {
        r = x, g = c, b = 0;
    } else if (h >= 120 && h < 180) {
        r = 0, g = c, b = x;
    } else if (h >= 180 && h < 240) {
        r = 0, g = x, b = c;
    } else if (h >= 240 && h < 300) {
        r = x, g = 0, b = c;
    } else {
        r = c, g = 0, b = x;
    }

    return {
        static_cast<uint8_t>((r + m) * 255),
        static_cast<uint8_t>((g + m) * 255),
        static_cast<uint8_t>((b + m) * 255)
    };
}

void loop() {
    constexpr unsigned long CYCLE_DURATION = 10000;  // 10 seconds for a full color cycle
    constexpr unsigned long STEPS = 1000;            // Number of steps in the cycle

    unsigned long startTime = millis();
    unsigned long currentTime;

    while (true) {
        currentTime = millis();
        float progress = static_cast<float>((currentTime - startTime) % CYCLE_DURATION) / CYCLE_DURATION;
        
        float hue = progress * 360.0f;  // Hue ranges from 0 to 360
        RGB color = hsvToRgb(hue, 1.0f, 1.0f);  // Full saturation and value
        
        setColor(color);
        
        delay(CYCLE_DURATION / STEPS);  // Small delay for smooth transition
    }
}
```

<table border="1" id="bkmrk-%C2%A0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50.0618%;">[![tft.gif](https://i.imgur.com/texYX5u.png)](https://i.imgur.com/texYX5u.png)</td><td style="width: 50.0618%;">[![tft.gif](https://i.imgur.com/nXkjMyF.png)](https://i.imgur.com/nXkjMyF.png)</td></tr><tr><td colspan="2" style="width: 100.124%;">Compilar e carregar o código para a placa ESP32-C6.</td></tr></tbody></table>

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 100%;">[![tft.gif](https://s10.gifyu.com/images/Sogvt.gif)](https://s10.gifyu.com/images/Sogvt.gif)</td></tr><tr><td style="width: 100%;">Montagem exemplificativa</td></tr></tbody></table>

#### Referências

\[1\] H4Fide, "ESP32-C6-RGB-LED-Control," GitHub, repository, 2024. \[Online\]. Available: https://github.com/h4fide/ESP32-C6-RGB-LED-Control. \[Accessed: 27-Aug-2024\].

# [Programa] LED a piscar

#### Objetivo:

Utilizar o *ESP32-C6-DevKitM-1* para alimentar um LED e obter um piscar controlado de forma programática.

#### Lista de material:

- *ESP32-C6-DevKitM-1*
- Breadboard
- Resistência de 330 ohm (Ω)
- Díodo emissor de luz (LED) vermelho
- Cabo USB C
- Fios de ligação

[![aaa.png](https://i.imgur.com/X2wHncm.jpeg)](https://i.imgur.com/X2wHncm.jpeg)

#### Contextualização:

Em eletrónica, um circuito LED é um circuito usado para alimentar um díodo emissor de luz (LED). O circuito deve fornecer corrente suficiente para acender o LED e evitar danos ao mesmo. O circuito mais simples para acionar um LED é através de uma resistência em série \[3\].

##### ESP32-C6-DevKitM-1

Apesar de se aconselhar a consulta da página do fabricante sobre o kit *ESP32-C6-DevKitM-1* para mais detalhe, disponibilizam-se de seguida duas figuras com os componentes principais do kit bem como o esquema de terminais para referência.

##### [![esp32-devkitc-functional-overview.jpg](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-v1-annotated-photo.png)](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-v1-annotated-photo.png)

##### [![esp32-devkitC-v4-pinout.png](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.png)](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.png)

##### Breadboard

Uma breadboard ou placa de ensaio ou matriz de contactos é uma placa com furos e conexões condutoras tipicamente utilizada para a montagem de protótipos e projetos em estado inicial \[1\].   
Deve ser tido em consideração que internamente a breadboard também é composta por contactos metálicos, tipicamente organizados como se ilustra na figura em baixo. As linhas a azul e verde simbolizam ligações metálicas internas, ou seja, e por exemplo, tal como esquematizado, deve considerar-se que o orifício a1 está ligado internamente aos orifícios b1, c1, d1 e e1.

[![breadboard.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/breadboard.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/breadboard.png)

##### Resistência

Uma resistência é um componente elétrico passivo de dois terminais que implementa resistência elétrica como um elemento de circuito \[4\]. Ainda que não seja do âmbito do presente documento detalhar este conceito, disponibiliza-se de seguida o esquema de quatro bandas e tabela de referência \[2\], tipicamente usados para indicar os valores associados, neste caso, as resistências.

[![resistor_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/resistor-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/resistor-b.png)

##### Díodo emissor de luz (LED)

Um díodo emissor de luz (LED) é um dispositivo semicondutor que emite luz quando uma corrente flui através deste \[3\]. Destacar da figura seguinte a distinção entre ânodo e cátodo, tipicamente materializada por um comprimento diferente dos terminais de ligação (terminal do ânodo mais longo que o do cátodo), e um chanfro (ou superfície plana) no lado do cátodo.

[![led_cat_an.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/led-cat-an.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/led-cat-an.png)

#### Procedimento:

As saídas digitais do *ESP32-C6-DevKitM-1* podem ser programas para assumir determinados valores de tensão como 0V (GND) ou 3.3V (VCC). Fazendo uso desta possibilidade, e ligando o LED ao ESP32, deverá então ser possível obter um piscar do LED controlado de forma programática.

Escolhendo os terminais 5 e GND do ESP32 como referência deve considerar-se a seguinte montagem:

<table border="1" id="bkmrk--5" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![pisca1.png](https://i.imgur.com/yTAKcas.jpeg)](https://i.imgur.com/yTAKcas.jpeg)</td><td style="width: 49.9506%;">[![pisca2aa.png](https://i.imgur.com/14Xnzpm.png)](https://i.imgur.com/14Xnzpm.png)</td></tr></tbody></table>

##### Instruções:

- Montar o circuito representado anteriormente
- Ligar a placa ESP32 ao computador por via de cabo USB C
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado ( *ESP32C6 Dev Module* )
- Copiar o seguinte código

```C
/*
Pisca-pisca

Liga o LED por um segundo, desliga por um segundo e assim sucessivamente.
*/


// a função setup é executada pontualmente quando o botão reset é premido ou a placa é alimentada
void setup() {
  // inicializa o pino digital 5 como saída.
  pinMode(5, OUTPUT);
}

// a função loop é executada sucessivamente, uma e outra vez, e por aí em diante
void loop() {
  digitalWrite(5, HIGH);   // liga o LED 
  delay(1000);              // espera por um segundo
  digitalWrite(5, LOW);    // desliga o LED
  delay(1000);              // espera por um segundo
}
```

- Compilar e carregar o código para a placa ESP32
- Verificar o resultado

<table border="1" id="bkmrk--6" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9012%;">[![blink](https://s11.gifyu.com/images/SoCie.gif)](https://s11.gifyu.com/images/SoCie.gif)</td></tr></tbody></table>

#### Referências

\[1\] Wikipedia. Breadboard. url: [https://en.wikipedia.org/wiki/Breadboard](https://en.wikipedia.org/wiki/Breadboard) (acedido em 18/08/2023).

\[2\] Wikipedia. Electronic color code. url: [https://en.wikipedia.org/wiki/Electronic\_color\_code](https://en.wikipedia.org/wiki/Electronic_color_code) (acedido em 18/08/2023).

\[3\] Wikipedia. LED circuit. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 18/08/2023).

\[4\] Wikipedia. Resistor. url: [https://en.wikipedia.org/wiki/Resistor](https://en.wikipedia.org/wiki/Resistor) (acedido em 18/08/2023).

# [Programa] Interruptor

#### Objetivo:

Utilizar o *ESP32-C6-DevKitM-1* em conjugação com um interruptor e monitorizar estados.

#### Lista de material:

- *ESP32-C6-DevKitM-1*
- Breadboard
- Cabo USB C
- Interruptor (tipo botão)
- Fios de ligação

[![material_list.png](https://i.imgur.com/VnP0UfE.jpeg)](https://i.imgur.com/VnP0UfE.jpeg)

#### Contextualização:

Um interruptor é um componente elétrico que pode desconectar ou conectar o caminho condutor de um circuito elétrico, interrompendo a corrente elétrica ou conduzindo-a de um terminal para outro \[1\].

##### Interruptor

Um interruptor tipo botão tem tipicamente quatro terminais que estão conectados internamente aos pares. Por isso, numa utilização típica, apenas dois terminais, que não ligados internamente, são usados, como se ilustra na imagem seguinte:

<table border="0" id="bkmrk--0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 24.9691%;">[![switch_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-a.png)</td><td style="width: 24.9691%;">[![switch_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-b.png)</td><td style="width: 24.9691%;">[![switch_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-c.png)</td><td style="width: 24.9691%;">[![switch_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-d.png)</td></tr></tbody></table>

Ao ser pressionado o interruptor alterna entre os estados conetado e não conetado:

<table border="0" id="bkmrk-%28pressionado%29-%28n%C3%A3o-p" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">[![switch_e.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-e.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-e.png)</td><td style="width: 49.9383%;">[![switch_e.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-e.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-e.png)</td></tr><tr><td class="align-center" style="width: 49.9383%;">(pressionado)</td><td class="align-center" style="width: 49.9383%;">(não pressionado)</td></tr><tr><td style="width: 49.9383%;">[![switch_f.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-f.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-f.png)</td><td style="width: 49.9383%;">[![switch_g.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-g.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-g.png)</td></tr><tr><td class="align-center" style="width: 49.9383%;">(fechado)</td><td class="align-center" style="width: 49.9383%;">(aberto)</td></tr></tbody></table>

#### Procedimento:

Escolhendo o terminal 23 e o GND do ESP32 como referência deve considerar-se o seguinte circuito:

[![interruptor_esq.png](https://i.imgur.com/c3fP4pb.png)](https://i.imgur.com/c3fP4pb.png)

##### Instruções:

- Montar o circuito esquematizado anteriormente
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado ( *ESP32C6 Dev Module* )
- Copiar o seguinte código

```C
/*
interruptor	tipo botão
*/	

#define BUTTON_PIN 23  // definição de terminal GPIO23 ligado ao interruptor

// Variáveis
int lastState = LOW;  // o estado anterior do terminal de entrada
int currentState;     // o estado atual do terminal de entrada

void setup() {
  // inicializa a comunicação serial a 115200 bits por segundo:
  Serial.begin(115200);
  // inicializa o terminal do interruptor tipo botão:
  // (o terminal de entrada toma o valor de HIGH quando o interruptor estiver aberto, 
  // e LOW quando estiver fechado)
  pinMode(BUTTON_PIN, INPUT_PULLUP);
}

void loop() {
  // leitura do estado do interruptor tipo botão:
  currentState = digitalRead(BUTTON_PIN);

  if (lastState == HIGH && currentState == LOW) {
    Serial.println("o interruptor foi pressionado");
    digitalWrite(RGB_BUILTIN, HIGH);
  }
  else if (lastState == LOW && currentState == HIGH) {
    Serial.println("o interruptor foi solto");
    digitalWrite(RGB_BUILTIN, LOW);
  }

  // guarda o último estado
  lastState = currentState;
}
```

- Compilar e carregar o código para a placa ESP32
- Verificar o resultado no monitor de comunicação serial do IDE Arduino

<table border="1" id="bkmrk--3" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9012%;">[![switch_f.png](https://s11.gifyu.com/images/So881.gif)](https://s11.gifyu.com/images/So881.gif)</td></tr></tbody></table>

#### Referências

\[1\] Wikipedia. Switch. url: [https://en.wikipedia.org/wiki/Switch](https://en.wikipedia.org/wiki/Switch) (acedido em 22/08/2023).

# [Programa] Potenciómetro

#### Objectivo:

Utilizar o *ESP32-C6-DevKitM-1* para ler valor de tensão de saída de um potenciómetro.

#### Lista de material:

- *ESP32-C6-DevKitM-1*
- Breadboard
- Potenciómetro de 10kΩ
- Fios de ligação
- Cabo USB C

[![](https://i.imgur.com/Fuw7bnV.jpeg)](https://i.imgur.com/Fuw7bnV.jpeg)

#### Contextualização:

Um potenciómetro é um componente eletrónico que incorpora uma resistência elétrica ajustável \[1\].

##### Potenciómetro

Um potenciómetro possui tipicamente três terminais incluindo um contacto ajustável, deslizante ou rotativo, que forma um divisor de tensão ajustável \[1\].

<table border="0" id="bkmrk--0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 24.9691%;">[![eg_out_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-out-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-out-2.png)</td><td style="width: 24.9691%;">[![eg_0_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-0-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-0-2.png)</td><td style="width: 24.9691%;">[![eg_120_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-120-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-120-2.png)</td><td style="width: 24.9691%;">[![eg_240_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-240-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-240-2.png)</td></tr></tbody></table>

##### ESP32-C6-DevKitM-1

Apesar de se aconselhar a consulta da página do fabricante sobre o kit *ESP32-C6-DevKitM-1* é possível considerar que em determinadas situações os terminais de entrada do microcontrolador ESP32 podem converter tensão (algo como uma quantidade analógica entre 0V e 3.3V) em um valor digital inteiro entre 0 e 4095 (num total de 2<sup>12</sup>=4096 representações possíveis).

[![esp32.png](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.png)](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.png)

#### Procedimento:

Atentando ao objetivo enunciado, e escolhendo os terminais 2 (para o terminal de saída do potenciómetro), 3.3V e o GND do ESP32 como referência deve considerar-se a seguinte montagem:

[![interruptor_montagem_2.png](https://i.imgur.com/hf4oo6L.png)](https://i.imgur.com/hf4oo6L.png)

##### Instruções:

- Montar o circuito esquematizado anteriormente
- Ligar a placa ESP32 ao computador por via de cabo USB C
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado ( *ESP32C6 Dev Module* )
- Copiar o seguinte código

```C
#include <Adafruit_NeoPixel.h>
#include <cmath>


// Pin and LED configuration
constexpr uint8_t LED_PIN = 8;
constexpr uint8_t NUM_LEDS = 1;

// NeoPixel object
Adafruit_NeoPixel rgbLed(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

// Color structure
struct RGB {
    uint8_t r, g, b;
};

void setup() {
    rgbLed.begin();  // Initialize the RGB LED
    rgbLed.show();   // Turn off the LED (as it's initialized to all 0s)
    Serial.begin(115200);
}

void setColor(const RGB& color) {
    rgbLed.setPixelColor(0, rgbLed.Color(color.r, color.g, color.b));
    rgbLed.show();
}

// Convert HSV to RGB
RGB hsvToRgb(float h, float s, float v) {
    float c = v * s;
    float x = c * (1 - std::abs(std::fmod(h / 60.0, 2) - 1));
    float m = v - c;
    float r, g, b;

    if (h >= 0 && h < 60) {
        r = c, g = x, b = 0;
    } else if (h >= 60 && h < 120) {
        r = x, g = c, b = 0;
    } else if (h >= 120 && h < 180) {
        r = 0, g = c, b = x;
    } else if (h >= 180 && h < 240) {
        r = 0, g = x, b = c;
    } else if (h >= 240 && h < 300) {
        r = x, g = 0, b = c;
    } else {
        r = c, g = 0, b = x;
    }

    return {
        static_cast<uint8_t>((r + m) * 255),
        static_cast<uint8_t>((g + m) * 255),
        static_cast<uint8_t>((b + m) * 255)
    };
}

float floatMap(float x, float in_min, float in_max, float out_min, float out_max) {
	return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}

void loop() {
    constexpr unsigned long CYCLE_DURATION = 10000;  // 10 seconds for a full color cycle
    constexpr unsigned long STEPS = 1000;            // Number of steps in the cycle

    unsigned long startTime = millis();
    unsigned long currentTime;

    while (true) {
        // leitura do valor de entrada no terminal analógico GPIO33:
	      int analogValue = analogRead(2);
        Serial.println(analogValue);
	      // Normalização dos valores lidos para a tensão do potenciómetro
	      float voltage = floatMap(analogValue, 0, 4095, 0, 1.0);
        Serial.println(voltage);

        currentTime = millis();
        //float progress = static_cast<float>((currentTime - startTime) % CYCLE_DURATION) / CYCLE_DURATION;
        
        //float hue = progress * 360.0f;  // Hue ranges from 0 to 360
        float hue = voltage * 360.0f;  // Hue ranges from 0 to 360
        RGB color = hsvToRgb(hue, 1.0f, 1.0f);  // Full saturation and value
        //RGB color = hsvToRgb(255.0f, voltage, 1.0f);
        
        setColor(color);
        
        delay(CYCLE_DURATION / STEPS);  // Small delay for smooth transition
    }
}
```

- Compilar e carregar o código para a placa ESP32
- Verificar o resultado

<table border="1" id="bkmrk--3" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9012%;">[![out_hand_2.png](https://s11.gifyu.com/images/SoC4V.gif)](https://s11.gifyu.com/images/SoC4V.gif)</td></tr></tbody></table>

#### Referências:

\[1\] Wikipedia. Potentiometer. url: [https://en.wikipedia.org/wiki/Potentiometer](https://en.wikipedia.org/wiki/Potentiometer) (acedido em 23/08/2023).

# [Programa] SHT40 (exemplo I²C)

#### Objetivo:

Utilizar o *ESP32-C6-DevKitM-1* para ler valores de temperatura de um sensor SHT40.

#### Lista de material:

- *ESP32-C6-DevKitM-1*
- Breadboard
- Sensor SHT40
- Fios de ligação
- Cabo USB C

[![8_material_list.png](https://i.imgur.com/GVfy1mK.jpeg)](https://i.imgur.com/GVfy1mK.jpeg)

#### Contextualização:

##### Grove - Temperature &amp; Humidity Sensor (SHT40)

O sensor de temperatura e humidade da Seeed SHT40 é um sensor digital com interface I²C padrão \[2\].

##### *Inter-Integrated Circuit* (I²C) \[3\] 

O *Inter-Integrated Circuit* (I²C)\[3\] é um barramento serial que permite a co-existência de múltiplos controladores e periféricos (historicamente designados por *master*/*slave*) e considera essencialmente duas ligações:

<table border="1" id="bkmrk-sda-serial-data-line" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 49.9506%;">SDA</td><td style="width: 49.9506%;">Serial Data Line</td></tr><tr><td class="align-right" style="width: 49.9506%;">SDL</td><td style="width: 49.9506%;">Serial Clock Line</td></tr></tbody></table>

Ambas são bidirecionais e recorrem a resistências *pull-up*. As tensões típicas utilizadas são de +5 V ou +3,3 V, embora sejam permitidos sistemas com outras tensões.

O design de referência I²C possui um espaço de endereço de 7 *bits*, com uma extensão de 10 *bits* raramente utilizada. As velocidades de barramento I²C comuns são o modo padrão de 100 *kbit/s* existindo outras possibilidades para casos específicos.

A comunicação I²C segue uma estrutura organizada em pacotes de dados. Cada transação no barramento I²C inicia com uma condição de S*tart*, seguida pelo envio de um *byte* de endereço, que identifica o dispositivo preriférico com o qual o controlador deseja comunicar. Após o endereço, o controlador pode enviar ou receber dados, dependendo da natureza da transação (escrita ou leitura).

Os principais elementos dos protocolos de mensagem do I²C incluem:

1. **Condição de Início ( S*tart* ):** O controlador gera uma transição do sinal SDA de alto para baixo enquanto SCL está alto, indicando o início de uma comunicação.
2. ***Byte* de Endereço:** Após a condição de S*tart*, o controlador envia um *byte* de endereço que contém o endereço do periférico alvo e um *bit* de leitura/escrita. O periférico com o endereço correspondente responde com um *bit* de reconhecimento ( *ACK* ).
3. **Dados:** Os dados são transmitidos em *bytes*, seguidos por um *bit* de reconhecimento ( *ACK* ) enviado pelo receptor após cada *byte*. Se o receptor não reconhecer o *byte*, ele envia um *bit* de não reconhecimento ( *NACK* ).
4. **Condição de Paragem ( *Stop* ):** A comunicação termina com uma condição de *Stop*, onde o controlador gera uma transição do sinal SDA de baixo para alto enquanto SCL está alto. Isso sinaliza o fim da transação no barramento I²C.

Essa estrutura simples e eficiente permite que o I²C suporte a comunicação entre múltiplos dispositivos de forma organizada, minimizando a necessidade de fios e facilitando a integração em sistemas eletrónicos complexos.

Desenvolvido pela Philips Semiconductor em 1982, o I²C é ideal para aplicações que exigem comunicação eficiente e de curto alcance entre componentes eletrónicos. Este protocolo suporta a comunicação entre múltiplos dispositivos, onde o dispositivo contolador comanda o barramento I²C e os peféricos respondem aos comandos recebidos. A simplicidade do I²C, combinada com a sua flexibilidade, torna-o uma escolha popular para interligar sensores, displays, memória e outros periféricos a microcontroladores em diversos projetos.

De seguida apresenta-se uma aplicação prática do I²C usando a placa de desenvolvimento *ESP32-C6-DevKitM-1*, que possui suporte integrado para I²C, em conjunto com o sensor de temperatura e humidade SHT40.

#### Procedimento:

Atentando nos terminais 3, 4, GND e 5V do ESP32 como referência deve considerar-se o seguinte ilustração de montagem:

[![8_i2c_setup.png](https://i.imgur.com/tRfH6LV.png)](https://i.imgur.com/tRfH6LV.png)

##### Instruções:

- Montar o circuito esquematizado anteriormente
- Ligar a placa ESP32 ao computador por via de cabo USB C
- Abrir o IDE Arduino
- Usando a ferramenta de gestão de bibliotecas do IDE Arduino procurar e instalar a biblioteca **Adafruit SHT4X** (\[1\])
- Selecionar o dispositivo ESP32 adequado ( *ESP32C6 Dev Module* )
- Copiar o seguinte


```C
#include <Wire.h>
#include <Adafruit_SHT4x.h>

// Definição de uma nova instância da classe TwoWire
TwoWire myWire = TwoWire(0x44); // Usa o barramento I2C no ID 0 (podes alterar conforme necessário)
Adafruit_SHT4x sht40 = Adafruit_SHT4x();

void setup() {
  digitalWrite(RGB_BUILTIN, LOW);  // Turn the RGB LED off
  Serial.begin(115200);

  // Inicia a instância myWire no barramento I2C utilizando pinos SDA e SCL personalizados
  myWire.begin(4, 3); // Pinos SDA=4 e SCL=3 (substitua pelos pinos que preferires)

  // Inicializa o sensor SHT40 usando a instância personalizada de TwoWire
  if (!sht40.begin(&myWire)) {
    Serial.println("Falha ao inicializar o SHT40. Verifique a conexão I2C.");
    while (1) {
      delay(10);
    }
  }
  sht40.setPrecision(SHT4X_HIGH_PRECISION);
  sht40.setHeater(SHT4X_NO_HEATER);  
  Serial.println("Sensor SHT40 inicializado com sucesso!");
}

void loop() {
  digitalWrite(RGB_BUILTIN, LOW);  // Turn the RGB LED off

  sensors_event_t humidity, temp;
  sht40.getEvent(&humidity, &temp);

  Serial.print("Temperatura: ");
  Serial.print(temp.temperature);
  Serial.println(" °C");
  
  Serial.print("Humidade: ");
  Serial.print(humidity.relative_humidity);
  Serial.println(" %");

  delay(2000);  // Espera 2 segundos antes de nova leitura
  
  digitalWrite(RGB_BUILTIN, HIGH);  // Turn the RGB LED white
}
```

- Compilar e carregar o código para a placa ESP32
- Verificar o resultado

<table border="1" id="bkmrk--4" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![](https://s11.gifyu.com/images/SotAp.gif)](https://s11.gifyu.com/images/SotAp.gif)</td><td style="width: 49.9506%;">[![8_img_out_b.png](https://i.imgur.com/kZ7zwO6.png)](https://i.imgur.com/kZ7zwO6.png)</td></tr></tbody></table>

#### Referências:

\[1\] Adafruit. Adafruit Sensirion SHT40, SHT41 &amp; SHT45 Temperature &amp; Humidity Sensors. url: [https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor](https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor) (acedido em 29/08/2023).  
\[2\] Seeed Studio. Grove - Temperature &amp; Humidity Sensor. url: [https://wiki.seeedstudio.com/Grove-SHT4x/](https://wiki.seeedstudio.com/Grove-SHT4x/) (acedido em 29/08/2023).  
\[3\] Wikipedia. I2C. url: [https://en.wikipedia.org/wiki/I%C2%B2C](https://en.wikipedia.org/wiki/I%C2%B2C) (acedido em 29/08/2023).

# [Programa] Lâmpada Zigbee

##### (provisório) \[1\]

<table border="1" id="bkmrk--1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9012%;">[<span style="color: #444444;">![8_material_list.png](https://s11.gifyu.com/images/SoD3I.gif)</span>](https://s11.gifyu.com/images/SoD3I.gif)</td></tr></tbody></table>

#### Lista de Material

<table border="1" id="bkmrk-%C2%A0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9012%;">[![8_material_list.png](https://i.imgur.com/CpKebra.jpeg)](https://i.imgur.com/CpKebra.jpeg)</td></tr></tbody></table>

#### Notas (part I/II)

Este exemplo mostra como configurar o **dispositivo final Zigbee** e utilizá-lo como lâmpada de domótica de ligar/desligar.

##### Requisitos

Uma placa de desenvolvimento (ESP32-C6) como **dispositivo final Zigbee** (carregada com o exemplo **Lâmpada Zigbee**)


##### Arduino IDE

- Antes de Compilar/Verificar, seleccionar a placa correcta: `Ferramentas -&gt; Placa`.
- Selecionar o modo Zigbee do dispositivo final: `Ferramentas -&gt; Modo Zigbee: Zigbee ED (dispositivo final)`
- Selecionar Esquema de Partição para Zigbee: `Ferramentas -&gt; Esquema de Partição: Zigbee 4MB com spiffs`
- Seleccione a porta COM: `Ferramentas -&gt; Porta: xxx` em que `xxx` é a porta COM detectada.

##### Lâmpada Zigbee


```C
// Copyright 2023 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at

//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
 * @brief This example demonstrates simple Zigbee light bulb.
 *
 * The example demonstrates how to use ESP Zigbee stack to create a end device light bulb.
 * The light bulb is a Zigbee end device, which is controlled by a Zigbee coordinator.
 *
 * Proper Zigbee mode must be selected in Tools->Zigbee mode
 * and also the correct partition scheme must be selected in Tools->Partition Scheme.
 *
 * Please check the README.md for instructions and more detailed description.
 */

#ifndef ZIGBEE_MODE_ED
#error "Zigbee end device mode is not selected in Tools->Zigbee mode"
#endif

#include "esp_zigbee_core.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "ha/esp_zigbee_ha_standard.h"

#define LED_PIN RGB_BUILTIN

/* Default End Device config */
#define ESP_ZB_ZED_CONFIG()                                                                 \
  {                                                                                         \
    .esp_zb_role = ESP_ZB_DEVICE_TYPE_ED, .install_code_policy = INSTALLCODE_POLICY_ENABLE, \
    .nwk_cfg = {                                                                            \
      .zed_cfg =                                                                            \
        {                                                                                   \
          .ed_timeout = ED_AGING_TIMEOUT,                                                   \
          .keep_alive = ED_KEEP_ALIVE,                                                      \
        },                                                                                  \
    },                                                                                      \
  }

#define ESP_ZB_DEFAULT_RADIO_CONFIG() \
  { .radio_mode = ZB_RADIO_MODE_NATIVE, }

#define ESP_ZB_DEFAULT_HOST_CONFIG() \
  { .host_connection_mode = ZB_HOST_CONNECTION_MODE_NONE, }

/* Zigbee configuration */
#define INSTALLCODE_POLICY_ENABLE   false /* enable the install code policy for security */
#define ED_AGING_TIMEOUT            ESP_ZB_ED_AGING_TIMEOUT_64MIN
#define ED_KEEP_ALIVE               3000                                 /* 3000 millisecond */
#define HA_ESP_LIGHT_ENDPOINT       10                                   /* esp light bulb device endpoint, used to process light controlling commands */
#define ESP_ZB_PRIMARY_CHANNEL_MASK ESP_ZB_TRANSCEIVER_ALL_CHANNELS_MASK /* Zigbee primary channel mask use in the example */

/********************* Zigbee functions **************************/
static void bdb_start_top_level_commissioning_cb(uint8_t mode_mask) {
  ESP_ERROR_CHECK(esp_zb_bdb_start_top_level_commissioning(mode_mask));
}

void esp_zb_app_signal_handler(esp_zb_app_signal_t *signal_struct) {
  uint32_t *p_sg_p = signal_struct->p_app_signal;
  esp_err_t err_status = signal_struct->esp_err_status;
  esp_zb_app_signal_type_t sig_type = (esp_zb_app_signal_type_t)*p_sg_p;
  switch (sig_type) {
    case ESP_ZB_ZDO_SIGNAL_SKIP_STARTUP:
      log_i("Zigbee stack initialized");
      esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_INITIALIZATION);
      break;
    case ESP_ZB_BDB_SIGNAL_DEVICE_FIRST_START:
    case ESP_ZB_BDB_SIGNAL_DEVICE_REBOOT:
      if (err_status == ESP_OK) {
        log_i("Device started up in %s factory-reset mode", esp_zb_bdb_is_factory_new() ? "" : "non");
        if (esp_zb_bdb_is_factory_new()) {
          log_i("Start network formation");
          esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_STEERING);
        } else {
          log_i("Device rebooted");
        }
      } else {
        /* commissioning failed */
        log_w("Failed to initialize Zigbee stack (status: %s)", esp_err_to_name(err_status));
      }
      break;
    case ESP_ZB_BDB_SIGNAL_STEERING:
      if (err_status == ESP_OK) {
        esp_zb_ieee_addr_t extended_pan_id;
        esp_zb_get_extended_pan_id(extended_pan_id);
        log_i(
          "Joined network successfully (Extended PAN ID: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x, PAN ID: 0x%04hx, Channel:%d, Short Address: 0x%04hx)",
          extended_pan_id[7], extended_pan_id[6], extended_pan_id[5], extended_pan_id[4], extended_pan_id[3], extended_pan_id[2], extended_pan_id[1],
          extended_pan_id[0], esp_zb_get_pan_id(), esp_zb_get_current_channel(), esp_zb_get_short_address()
        );
      } else {
        log_i("Network steering was not successful (status: %s)", esp_err_to_name(err_status));
        esp_zb_scheduler_alarm((esp_zb_callback_t)bdb_start_top_level_commissioning_cb, ESP_ZB_BDB_MODE_NETWORK_STEERING, 1000);
      }
      break;
    default: log_i("ZDO signal: %s (0x%x), status: %s", esp_zb_zdo_signal_to_string(sig_type), sig_type, esp_err_to_name(err_status)); break;
  }
}

static esp_err_t zb_action_handler(esp_zb_core_action_callback_id_t callback_id, const void *message) {
  esp_err_t ret = ESP_OK;
  switch (callback_id) {
    case ESP_ZB_CORE_SET_ATTR_VALUE_CB_ID: ret = zb_attribute_handler((esp_zb_zcl_set_attr_value_message_t *)message); break;
    default:                               log_w("Receive Zigbee action(0x%x) callback", callback_id); break;
  }
  return ret;
}

static void esp_zb_task(void *pvParameters) {
  esp_zb_cfg_t zb_nwk_cfg = ESP_ZB_ZED_CONFIG();
  esp_zb_init(&zb_nwk_cfg);
  esp_zb_on_off_light_cfg_t light_cfg = ESP_ZB_DEFAULT_ON_OFF_LIGHT_CONFIG();
  esp_zb_ep_list_t *esp_zb_on_off_light_ep = esp_zb_on_off_light_ep_create(HA_ESP_LIGHT_ENDPOINT, &light_cfg);
  esp_zb_device_register(esp_zb_on_off_light_ep);
  esp_zb_core_action_handler_register(zb_action_handler);
  esp_zb_set_primary_network_channel_set(ESP_ZB_PRIMARY_CHANNEL_MASK);

  //Erase NVRAM before creating connection to new Coordinator
  esp_zb_nvram_erase_at_start(true);  //Comment out this line to erase NVRAM data if you are conneting to new Coordinator

  ESP_ERROR_CHECK(esp_zb_start(false));
  esp_zb_main_loop_iteration();
}

/* Handle the light attribute */

static esp_err_t zb_attribute_handler(const esp_zb_zcl_set_attr_value_message_t *message) {
  esp_err_t ret = ESP_OK;
  bool light_state = 0;

  if (!message) {
    log_e("Empty message");
  }
  if (message->info.status != ESP_ZB_ZCL_STATUS_SUCCESS) {
    log_e("Received message: error status(%d)", message->info.status);
  }

  log_i(
    "Received message: endpoint(%d), cluster(0x%x), attribute(0x%x), data size(%d)", message->info.dst_endpoint, message->info.cluster, message->attribute.id,
    message->attribute.data.size
  );
  if (message->info.dst_endpoint == HA_ESP_LIGHT_ENDPOINT) {
    if (message->info.cluster == ESP_ZB_ZCL_CLUSTER_ID_ON_OFF) {
      if (message->attribute.id == ESP_ZB_ZCL_ATTR_ON_OFF_ON_OFF_ID && message->attribute.data.type == ESP_ZB_ZCL_ATTR_TYPE_BOOL) {
        light_state = message->attribute.data.value ? *(bool *)message->attribute.data.value : light_state;
        log_i("Light sets to %s", light_state ? "On" : "Off");
        neopixelWrite(LED_PIN, 255 * light_state, 255 * light_state, 255 * light_state);  // Toggle light
      }
    }
  }
  return ret;
}

/********************* Arduino functions **************************/
void setup() {
  // Init Zigbee
  esp_zb_platform_config_t config = {
    .radio_config = ESP_ZB_DEFAULT_RADIO_CONFIG(),
    .host_config = ESP_ZB_DEFAULT_HOST_CONFIG(),
  };
  ESP_ERROR_CHECK(esp_zb_platform_config(&config));

  // Init RMT and leave light OFF
  neopixelWrite(LED_PIN, 0, 0, 0);

  // Start Zigbee task
  xTaskCreate(esp_zb_task, "Zigbee_main", 4096, NULL, 5, NULL);
}

void loop() {
  //empty, zigbee running in task
}
```

#### Notas (part II/II)

<div id="bkmrk-this-example-shows-h">Este exemplo mostra como configurar o **coordenador Zigbee** e utilizá-lo como interruptor de luz de ligar/desligar para domótica.</div>##### Requisitos

- Uma placa de desenvolvimento (ESP32-C6) em modo **coordenador Zigbee** (carregada com o exemplo **Interruptor Zigbee**)
- fios de ligação
- interruptor

##### Configurar o projeto

Confirmar a definição do GPIO do interruptor Switch consultando a definição de `GPIO\_INPUT\_IO\_TOGGLE\_SWITCH`.

<table border="1" id="bkmrk--0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.8765%;">![](https://i.imgur.com/2Pp0dOk.png)</td></tr></tbody></table>

##### Arduino IDE

- Antes de Compilar/Verificar, seleccionar a placa correcta: `Ferramentas -&gt; Placa`.
- Selecionar o modo Coordenador Zigbee: `Ferramentas -&gt; Modo Zigbee: Zigbee ZCZR (coordenador)`.
- Selecionar Esquema de Partição para Zigbee: `Ferramentas -&gt; Esquema de Partição: Zigbee 4MB com spiffs`.
- Seleccionar a porta COM: `Ferramentas -&gt; Porta: xxx em que `xxx` é a porta COM detectada.

##### Interruptor Zigbee



```C
// Copyright 2023 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at

//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
 * @brief This example demonstrates simple Zigbee light switch.
 *
 * The example demonstrates how to use ESP Zigbee stack to control a light bulb.
 * The light bulb is a Zigbee end device, which is controlled by a Zigbee coordinator.
 * Button switch and Zigbee runs in separate tasks.
 *
 * Proper Zigbee mode must be selected in Tools->Zigbee mode
 * and also the correct partition scheme must be selected in Tools->Partition Scheme.
 *
 * Please check the README.md for instructions and more detailed description.
 */

#ifndef ZIGBEE_MODE_ZCZR
#error "Zigbee coordinator mode is not selected in Tools->Zigbee mode"
#endif

#include "esp_zigbee_core.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "ha/esp_zigbee_ha_standard.h"

/* Switch configuration */
#define GPIO_INPUT_IO_TOGGLE_SWITCH GPIO_NUM_9
#define PAIR_SIZE(TYPE_STR_PAIR)    (sizeof(TYPE_STR_PAIR) / sizeof(TYPE_STR_PAIR[0]))

typedef enum {
  SWITCH_ON_CONTROL,
  SWITCH_OFF_CONTROL,
  SWITCH_ONOFF_TOGGLE_CONTROL,
  SWITCH_LEVEL_UP_CONTROL,
  SWITCH_LEVEL_DOWN_CONTROL,
  SWITCH_LEVEL_CYCLE_CONTROL,
  SWITCH_COLOR_CONTROL,
} switch_func_t;

typedef struct {
  uint8_t pin;
  switch_func_t func;
} switch_func_pair_t;

typedef enum {
  SWITCH_IDLE,
  SWITCH_PRESS_ARMED,
  SWITCH_PRESS_DETECTED,
  SWITCH_PRESSED,
  SWITCH_RELEASE_DETECTED,
} switch_state_t;

static switch_func_pair_t button_func_pair[] = {{GPIO_INPUT_IO_TOGGLE_SWITCH, SWITCH_ONOFF_TOGGLE_CONTROL}};

/* Default Coordinator config */
#define ESP_ZB_ZC_CONFIG()                                                                                        \
  {                                                                                                               \
    .esp_zb_role = ESP_ZB_DEVICE_TYPE_COORDINATOR, .install_code_policy = INSTALLCODE_POLICY_ENABLE, .nwk_cfg = { \
      .zczr_cfg =                                                                                                 \
        {                                                                                                         \
          .max_children = MAX_CHILDREN,                                                                           \
        },                                                                                                        \
    }                                                                                                             \
  }

#define ESP_ZB_DEFAULT_RADIO_CONFIG() \
  { .radio_mode = ZB_RADIO_MODE_NATIVE, }

#define ESP_ZB_DEFAULT_HOST_CONFIG() \
  { .host_connection_mode = ZB_HOST_CONNECTION_MODE_NONE, }

typedef struct light_bulb_device_params_s {
  esp_zb_ieee_addr_t ieee_addr;
  uint8_t endpoint;
  uint16_t short_addr;
} light_bulb_device_params_t;

/* Zigbee configuration */
#define MAX_CHILDREN                10                                   /* the max amount of connected devices */
#define INSTALLCODE_POLICY_ENABLE   false                                /* enable the install code policy for security */
#define HA_ONOFF_SWITCH_ENDPOINT    1                                    /* esp light switch device endpoint */
#define ESP_ZB_PRIMARY_CHANNEL_MASK ESP_ZB_TRANSCEIVER_ALL_CHANNELS_MASK /* Zigbee primary channel mask use in the example */

/********************* Zigbee functions **************************/
static void esp_zb_buttons_handler(switch_func_pair_t *button_func_pair) {
  if (button_func_pair->func == SWITCH_ONOFF_TOGGLE_CONTROL) {
    /* implemented light switch toggle functionality */
    esp_zb_zcl_on_off_cmd_t cmd_req;
    cmd_req.zcl_basic_cmd.src_endpoint = HA_ONOFF_SWITCH_ENDPOINT;
    cmd_req.address_mode = ESP_ZB_APS_ADDR_MODE_DST_ADDR_ENDP_NOT_PRESENT;
    cmd_req.on_off_cmd_id = ESP_ZB_ZCL_CMD_ON_OFF_TOGGLE_ID;
    log_i("Send 'on_off toggle' command");
    esp_zb_zcl_on_off_cmd_req(&cmd_req);
  }
}

static void bdb_start_top_level_commissioning_cb(uint8_t mode_mask) {
  ESP_ERROR_CHECK(esp_zb_bdb_start_top_level_commissioning(mode_mask));
}

static void bind_cb(esp_zb_zdp_status_t zdo_status, void *user_ctx) {
  if (zdo_status == ESP_ZB_ZDP_STATUS_SUCCESS) {
    log_i("Bound successfully!");
    if (user_ctx) {
      light_bulb_device_params_t *light = (light_bulb_device_params_t *)user_ctx;
      log_i("The light originating from address(0x%x) on endpoint(%d)", light->short_addr, light->endpoint);
      free(light);
    }
  }
}

static void user_find_cb(esp_zb_zdp_status_t zdo_status, uint16_t addr, uint8_t endpoint, void *user_ctx) {
  if (zdo_status == ESP_ZB_ZDP_STATUS_SUCCESS) {
    log_i("Found light");
    esp_zb_zdo_bind_req_param_t bind_req;
    light_bulb_device_params_t *light = (light_bulb_device_params_t *)malloc(sizeof(light_bulb_device_params_t));
    light->endpoint = endpoint;
    light->short_addr = addr;
    esp_zb_ieee_address_by_short(light->short_addr, light->ieee_addr);
    esp_zb_get_long_address(bind_req.src_address);
    bind_req.src_endp = HA_ONOFF_SWITCH_ENDPOINT;
    bind_req.cluster_id = ESP_ZB_ZCL_CLUSTER_ID_ON_OFF;
    bind_req.dst_addr_mode = ESP_ZB_ZDO_BIND_DST_ADDR_MODE_64_BIT_EXTENDED;
    memcpy(bind_req.dst_address_u.addr_long, light->ieee_addr, sizeof(esp_zb_ieee_addr_t));
    bind_req.dst_endp = endpoint;
    bind_req.req_dst_addr = esp_zb_get_short_address();
    log_i("Try to bind On/Off");
    esp_zb_zdo_device_bind_req(&bind_req, bind_cb, (void *)light);
  }
}

void esp_zb_app_signal_handler(esp_zb_app_signal_t *signal_struct) {
  uint32_t *p_sg_p = signal_struct->p_app_signal;
  esp_err_t err_status = signal_struct->esp_err_status;
  esp_zb_app_signal_type_t sig_type = (esp_zb_app_signal_type_t)*p_sg_p;
  esp_zb_zdo_signal_device_annce_params_t *dev_annce_params = NULL;
  switch (sig_type) {
    case ESP_ZB_ZDO_SIGNAL_SKIP_STARTUP:
      log_i("Zigbee stack initialized");
      esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_INITIALIZATION);
      break;
    case ESP_ZB_BDB_SIGNAL_DEVICE_FIRST_START:
    case ESP_ZB_BDB_SIGNAL_DEVICE_REBOOT:
      if (err_status == ESP_OK) {
        log_i("Device started up in %s factory-reset mode", esp_zb_bdb_is_factory_new() ? "" : "non");
        if (esp_zb_bdb_is_factory_new()) {
          log_i("Start network formation");
          esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_FORMATION);
        } else {
          log_i("Device rebooted");
          log_i("Opening network for joining for %d seconds", 180);
          esp_zb_bdb_open_network(180);
        }
      } else {
        log_e("Failed to initialize Zigbee stack (status: %s)", esp_err_to_name(err_status));
      }
      break;
    case ESP_ZB_BDB_SIGNAL_FORMATION:
      if (err_status == ESP_OK) {
        esp_zb_ieee_addr_t extended_pan_id;
        esp_zb_get_extended_pan_id(extended_pan_id);
        log_i(
          "Formed network successfully (Extended PAN ID: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x, PAN ID: 0x%04hx, Channel:%d, Short Address: 0x%04hx)",
          extended_pan_id[7], extended_pan_id[6], extended_pan_id[5], extended_pan_id[4], extended_pan_id[3], extended_pan_id[2], extended_pan_id[1],
          extended_pan_id[0], esp_zb_get_pan_id(), esp_zb_get_current_channel(), esp_zb_get_short_address()
        );
        esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_STEERING);
      } else {
        log_i("Restart network formation (status: %s)", esp_err_to_name(err_status));
        esp_zb_scheduler_alarm((esp_zb_callback_t)bdb_start_top_level_commissioning_cb, ESP_ZB_BDB_MODE_NETWORK_FORMATION, 1000);
      }
      break;
    case ESP_ZB_BDB_SIGNAL_STEERING:
      if (err_status == ESP_OK) {
        log_i("Network steering started");
      }
      break;
    case ESP_ZB_ZDO_SIGNAL_DEVICE_ANNCE:
      dev_annce_params = (esp_zb_zdo_signal_device_annce_params_t *)esp_zb_app_signal_get_params(p_sg_p);
      log_i("New device commissioned or rejoined (short: 0x%04hx)", dev_annce_params->device_short_addr);
      esp_zb_zdo_match_desc_req_param_t cmd_req;
      cmd_req.dst_nwk_addr = dev_annce_params->device_short_addr;
      cmd_req.addr_of_interest = dev_annce_params->device_short_addr;
      esp_zb_zdo_find_on_off_light(&cmd_req, user_find_cb, NULL);
      break;
    case ESP_ZB_NWK_SIGNAL_PERMIT_JOIN_STATUS:
      if (err_status == ESP_OK) {
        if (*(uint8_t *)esp_zb_app_signal_get_params(p_sg_p)) {
          log_i("Network(0x%04hx) is open for %d seconds", esp_zb_get_pan_id(), *(uint8_t *)esp_zb_app_signal_get_params(p_sg_p));
        } else {
          log_w("Network(0x%04hx) closed, devices joining not allowed.", esp_zb_get_pan_id());
        }
      }
      break;
    default: log_i("ZDO signal: %s (0x%x), status: %s", esp_zb_zdo_signal_to_string(sig_type), sig_type, esp_err_to_name(err_status)); break;
  }
}

static void esp_zb_task(void *pvParameters) {
  esp_zb_cfg_t zb_nwk_cfg = ESP_ZB_ZC_CONFIG();
  esp_zb_init(&zb_nwk_cfg);
  esp_zb_on_off_switch_cfg_t switch_cfg = ESP_ZB_DEFAULT_ON_OFF_SWITCH_CONFIG();
  esp_zb_ep_list_t *esp_zb_on_off_switch_ep = esp_zb_on_off_switch_ep_create(HA_ONOFF_SWITCH_ENDPOINT, &switch_cfg);
  esp_zb_device_register(esp_zb_on_off_switch_ep);
  esp_zb_set_primary_network_channel_set(ESP_ZB_PRIMARY_CHANNEL_MASK);
  ESP_ERROR_CHECK(esp_zb_start(false));
  esp_zb_main_loop_iteration();
}

/********************* GPIO functions **************************/
static QueueHandle_t gpio_evt_queue = NULL;

static void IRAM_ATTR gpio_isr_handler(void *arg) {
  xQueueSendFromISR(gpio_evt_queue, (switch_func_pair_t *)arg, NULL);
}

static void switch_gpios_intr_enabled(bool enabled) {
  for (int i = 0; i < PAIR_SIZE(button_func_pair); ++i) {
    if (enabled) {
      enableInterrupt((button_func_pair[i]).pin);
    } else {
      disableInterrupt((button_func_pair[i]).pin);
    }
  }
}

/********************* Arduino functions **************************/
void setup() {
  // Init Zigbee
  esp_zb_platform_config_t config = {
    .radio_config = ESP_ZB_DEFAULT_RADIO_CONFIG(),
    .host_config = ESP_ZB_DEFAULT_HOST_CONFIG(),
  };

  ESP_ERROR_CHECK(esp_zb_platform_config(&config));

  // Init button switch
  for (int i = 0; i < PAIR_SIZE(button_func_pair); i++) {
    pinMode(button_func_pair[i].pin, INPUT_PULLUP);
    /* create a queue to handle gpio event from isr */
    gpio_evt_queue = xQueueCreate(10, sizeof(switch_func_pair_t));
    if (gpio_evt_queue == 0) {
      log_e("Queue was not created and must not be used");
      while (1);
    }
    attachInterruptArg(button_func_pair[i].pin, gpio_isr_handler, (void *)(button_func_pair + i), FALLING);
  }

  // Start Zigbee task
  xTaskCreate(esp_zb_task, "Zigbee_main", 4096, NULL, 5, NULL);
}

void loop() {
  // Handle button switch in loop()
  uint8_t pin = 0;
  switch_func_pair_t button_func_pair;
  static switch_state_t switch_state = SWITCH_IDLE;
  bool evt_flag = false;

  /* check if there is any queue received, if yes read out the button_func_pair */
  if (xQueueReceive(gpio_evt_queue, &button_func_pair, portMAX_DELAY)) {
    pin = button_func_pair.pin;
    switch_gpios_intr_enabled(false);
    evt_flag = true;
  }
  while (evt_flag) {
    bool value = digitalRead(pin);
    switch (switch_state) {
      case SWITCH_IDLE:           switch_state = (value == LOW) ? SWITCH_PRESS_DETECTED : SWITCH_IDLE; break;
      case SWITCH_PRESS_DETECTED: switch_state = (value == LOW) ? SWITCH_PRESS_DETECTED : SWITCH_RELEASE_DETECTED; break;
      case SWITCH_RELEASE_DETECTED:
        switch_state = SWITCH_IDLE;
        /* callback to button_handler */
        (*esp_zb_buttons_handler)(&button_func_pair);
        break;
      default: break;
    }
    if (switch_state == SWITCH_IDLE) {
      switch_gpios_intr_enabled(true);
      evt_flag = false;
      break;
    }
    vTaskDelay(10 / portTICK_PERIOD_MS);
  }
}
```

##### Exemplo

<table border="1" id="bkmrk--3" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 99.9012%;">[<span style="color: #444444;">![8_material_list.png](https://s11.gifyu.com/images/SoD3I.gif)</span>](https://s11.gifyu.com/images/SoD3I.gif)</td></tr></tbody></table>

##### Referência

\[1\] Espressif. arduino-esp32 Zigbee examples. url: https://github.com/espressif/arduino-esp32/tree/master/libraries/ESP32/examples/Zigbee (acedido em 30/08/2024).

# Kit Eletrónica [ESP32/Xtensa]

O Kit de Eletrónica que te foi oferecido pelo DEEC não é para colocares a enfeitar uma mesa ou estante. Queremos que o uses e que o explores ativamente para te tornares um criador. Aqui abaixo damos-te as primeiras dicas para poderes iniciar essa exploração. Claro que tens muito material na Net, mas queremos aqui dar-te os primeiros ponteiros para começares a exploração. E, se tiveres questões, dúvidas, ou sugestões podes sempre contactar-nos.

# Instalação

*(por Paulo Menezes, contribuição de Nobo Dyelse Tillnow)*

Para explorares o microcontrolador que colocámos no teu kit irás precisar de

- um computador com Windows, Linux ou MacOS X,
- um cabo USB A/micro USB B (que está no kit) para ligares o microcontrolador ao teu computador e
- software de desenvolvimento para escreveres os programas e depois compilares e transferires para o microcontrolador ESP32.

Na página Espressif ["Get Started"](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/) tens toda a informação que necessitas, mas sugerimos que comeces por instalar um IDE (Integrated Development Environment) e a extensão correspondente. Aqui tens duas opções:

<section id="bkmrk-eclipse-plugin-vscod">- [Eclipse Plugin](https://github.com/espressif/idf-eclipse-plugin/blob/master/README.md)
- [VSCode Extension](https://github.com/espressif/vscode-esp-idf-extension/blob/master/docs/tutorial/install.md)

Sugerimos que leias a documentação, mesmo sabendo que estás "mortinho" por por isso a funcionar.

</section>Os programas que irás desenvolver serão escritos em linguagem C++ que irás aprender nas aulas de "Programação de Computadores" e de "Estruturas de Dados e Algoritmos".

Esses programas são sequências de instruções que depois serão traduzidos no código que o microcontrolador "entende" através do compilador que instalaste.

<section id="bkmrk-sugest%C3%A3o%3A-usar-o-ide">#### Sugestão: Usar o IDE Arduino

O IDE Arduino já é bem conhecido da maior parte dos teus colegas e podes usá-lo também para programar os microcontroladores ESP32. Para isso deves começar por descarregá-lo de [https://www.arduino.cc/en/software ](https://www.arduino.cc/en/software)e instalar-lo no teu computador. Depois deves selecionar no menu o item "Preferences" e no campo "URL Adicionais do Gestor de Placas:" colocar [https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package\_esp32\_index.json](https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json)

[![image-1663170381387.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663170381387.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663170381387.png)

Depois no menu "Ferramentas" Selecionar "Gestor de placas" e instalar o suporte para esp32

[![image-1663170389733.35.04.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663170389733-35-04.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663170389733-35-04.png)

</section><section id="bkmrk--1"></section>

# Instalação nova versão Arduino IDE

*(por Paulo Menezes, contribuição de Nobo Dyelse Tillnow)*

<section id="bkmrk-sugest%C3%A3o%3A-usar-o-ide">#### Usar o Arduino IDE

O IDE Arduino já é bem conhecido da maior parte dos teus colegas e podes usá-lo também para programar os microcontroladores ESP32. Para isso deves começar por descarregá-lo de [https://www.arduino.cc/en/software ](https://www.arduino.cc/en/software)e instalar-lo no teu computador. Depois deves selecionar no menu o item "Preferences" e no campo "URL Adicionais do Gestor de Placas:" colocar [https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package\_esp32\_index.json](https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json)

[![image-1663745235331.22.29.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663745235331-22-29.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663745235331-22-29.png)

Depois no menu "Ferramentas" Selecionar "Gestor de placas"

[![image-1663745258624.23.09.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663745258624-23-09.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663745258624-23-09.png)

e instalar o suporte para esp32 clicando no botão install mostrado abaixo.

[![image-1663745325235.24.15.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663745325235-24-15.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663745325235-24-15.png)

Isto pode demorar agora algum tempo, pois irá instalar todo o suporte necessário à criação de "sketches" para as placas baseadas nos módulos ESP32.

</section><section id="bkmrk--1"></section>

# Primeiro Programa

Vamos começar com um primeiro programa (sketch) que vai incrementando uma variável e envia o seu valor para uma ligação série dizendo se é par ou impar. O código é o que se segue, podes analisar e copiar para um novo sketch que podes criar no Arduino IDE.

```C
void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  delay(1000);
  Serial.println("Starting my first sketch...");
}

int i=1; // this is a global variable
 
void loop() {
  // put your main code here, to run repeatedly:
  Serial.print(i);  
  if ( (i % 2) == 0){  // check if the remainder of the division by 2 is zero
    Serial.println(" is even");
  }
  else {
    Serial.println(" is odd");
  }

  delay(1000); // wait for 1000 milisecs

  i++;  
}
```

Depois podes clicar no botão com a seta para a direita e assim compilares e enviares o programa para a placa que ligaste via USB.

[![image-1663817682753.33.58.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663817682753-33-58.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663817682753-33-58.png)

Se não tiver ocorrido nenhum erro, o programa terá sido iniciado e ao selecionares no menu "Ferramentas" -&gt; "Monitor Série" irás ver numa nova janela as mensagens a aparecer como na figura seguinte.

[![image-1663818007780.39.47.png](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/scaled-1680-/image-1663818007780-39-47.png)](https://kb.deec.uc.pt/uploads/images/gallery/2022-09/image-1663818007780-39-47.png)

# [Programa] LED a piscar

#### Objetivo:

Utilizar o *ESP32-WROOM-32E DevKitC v4* \[1\] para alimentar um LED e obter um piscar controlado de forma programática.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Resistência de 330 ohm (Ω)
- Díodo emissor de luz (LED) vermelho
- Fios de ligação
- Cabo USB micro

[![aaa.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/aaa.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/aaa.png)

#### Contextualização:

Em eletrónica, um circuito LED é um circuito usado para alimentar um díodo emissor de luz (LED). O circuito deve fornecer corrente suficiente para acender o LED e evitar danos ao mesmo. O circuito mais simples para acionar um LED é através de uma resistência em série \[5\].

##### ESP32-WROOM-32E DevKitC v4

Apesar de se aconselhar a consulta da página do fabricante sobre o kit *ESP32-WROOM-32E DevKitC v4* \[1\] para mais detalhe, disponibilizam-se de seguida duas figuras com os componentes principais do kit bem como o esquema de terminais para referência.

##### [![esp32-devkitc-functional-overview.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/esp32-devkitc-functional-overview.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/esp32-devkitc-functional-overview.jpg)

##### [![esp32-devkitC-v4-pinout.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/esp32-devkitc-v4-pinout.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/esp32-devkitc-v4-pinout.png)

##### Breadboard

Uma breadboard ou placa de ensaio ou matriz de contactos é uma placa com furos e conexões condutoras tipicamente utilizada para a montagem de protótipos e projetos em estado inicial \[3\].   
Deve ser tido em consideração que internamente a breadboard também é composta por contactos metálicos, tipicamente organizados como se ilustra na figura em baixo. As linhas a azul e verde simbolizam ligações metálicas internas, ou seja, e por exemplo, tal como esquematizado, deve considerar-se que o orifício a1 está ligado internamente aos orifícios b1, c1, d1 e e1.

[![breadboard.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/breadboard.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/breadboard.png)

##### Resistência

Uma resistência é um componente elétrico passivo de dois terminais que implementa resistência elétrica como um elemento de circuito \[6\]. Ainda que não seja do âmbito do presente documento detalhar este conceito, disponibiliza-se de seguida o esquema de quatro bandas e tabela de referência \[4\], tipicamente usados para indicar os valores associados, neste caso, as resistências.

[![resistor_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/resistor-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/resistor-b.png)

##### Díodo emissor de luz (LED)

Um díodo emissor de luz (LED) é um dispositivo semicondutor que emite luz quando uma corrente flui através deste \[5\]. Destacar da figura seguinte a distinção entre ânodo e cátodo, tipicamente materializada por um comprimento diferente dos terminais de ligação (terminal do ânodo mais longo que o do cátodo), e um chanfro (ou superfície plana) no lado do cátodo.

[![led_cat_an.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/led-cat-an.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/led-cat-an.png)

#### Procedimento:

As saídas digitais do *ESP32-WROOM-32E DevKitC v4* (ESP32) podem ser programas para assumir determinados valores de tensão como 0V (GND) ou 3.3V (VCC). Fazendo uso desta possibilidade, e ligando o LED ao ESP32, deverá então ser possível obter um piscar do LED controlado de forma programática.

Escolhendo os terminais 17 e GND do ESP32 como referência deve considerar-se o seguinte circuito LED:

<table border="0" id="bkmrk--5" style="border-collapse: collapse; width: 100%; height: 277.484px; border-style: none;"><tbody><tr style="height: 277.484px;"><td style="width: 49.9383%; height: 277.484px;">[![pisca1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/4HNpisca1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/4HNpisca1.png)</td><td style="width: 49.9383%; height: 277.484px;">[![pisca2aa.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/BPgpisca2aa.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/BPgpisca2aa.png)</td></tr></tbody></table>

##### Instruções:

(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[2\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa** , para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código

```C
/*
Pisca-pisca

Liga o LED por um segundo, desliga por um segundo e assim sucessivamente.
*/


// a função setup é executada pontualmente quando o botão reset é premido ou a placa é alimentada
void setup() {
  // inicializa o pino digital 17 como saída.
  pinMode(17, OUTPUT);
}

// a função loop é executada sucessivamente, uma e outra vez, e por aí em diante
void loop() {
  digitalWrite(17, HIGH);   // liga o LED 
  delay(1000);              // espera por um segundo
  digitalWrite(17, LOW);    // desliga o LED
  delay(1000);              // espera por um segundo
}
```

- Compilar e carregar o código para a placa ESP32

[![piscapisca.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/piscapisca.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/piscapisca.png)

- Verificar o resultado

<table border="0" id="bkmrk--6" style="border-collapse: collapse; width: 100%; height: 277.719px; border-style: none;"><tbody><tr style="height: 277.719px;"><td style="width: 50.0618%; height: 277.719px;">[![ii.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/ii.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/ii.png)  
</td><td style="width: 50.0618%; height: 277.719px;">[![jj.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/jj.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/jj.png)</td></tr></tbody></table>

#### Montagem exemplificativa:

[![asdasd.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/mY3asdasd.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/mY3asdasd.png)

[![a1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/a1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/a1.png)

<table border="0" id="bkmrk--12" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">[![b1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/b1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/b1.png)</td><td style="width: 49.9383%;">[![b2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/b2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/b2.png)</td></tr></tbody></table>

<table border="0" id="bkmrk--13" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">[![c1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/c1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/c1.png)</td><td style="width: 49.9383%;">[![c2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/c2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/c2.png)</td></tr></tbody></table>

<table border="0" id="bkmrk--8" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 33.2909%;">[![d1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/d1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/d1.png)  
</td><td style="width: 33.2909%;">[![d2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/d2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/d2.png)  
</td><td style="width: 33.2948%;">[![d3.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/d3.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/d3.png)</td></tr></tbody></table>

#### Referências

  
\[1\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).

\[2\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url: [https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em17/08/2023).

\[3\] Wikipedia. Breadboard. url: [https://en.wikipedia.org/wiki/Breadboard](https://en.wikipedia.org/wiki/Breadboard) (acedido em 18/08/2023).

\[4\] Wikipedia. Electronic color code. url: [https://en.wikipedia.org/wiki/Electronic\_color\_code](https://en.wikipedia.org/wiki/Electronic_color_code) (acedido em 18/08/2023).

\[5\] Wikipedia. LED circuit. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 18/08/2023).

\[6\] Wikipedia. Resistor. url: [https://en.wikipedia.org/wiki/Resistor](https://en.wikipedia.org/wiki/Resistor) (acedido em 18/08/2023).

# [Programa] Interruptor

#### Objetivo:

Utilizar o ESP32-WROOM-32E DevKitC v4 \[1\] em conjugação com um interruptor e monitorizar estados.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Cabo USB micro
- Interruptor (tipo botão)

[![material_list.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/material-list.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/material-list.png)

#### Contextualização:

Um interruptor é um componente elétrico que pode desconectar ou conectar o caminho condutor de um circuito elétrico, interrompendo a corrente elétrica ou conduzindo-a de um terminal para outro \[3\].

##### Interruptor

Um interruptor tipo botão tem tipicamente quatro terminais que estão conectados internamente aos pares. Por isso, numa utilização típica, apenas dois terminais, que não ligados internamente, são usados, como se ilustra na imagem seguinte:

<table border="0" id="bkmrk--0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 24.9691%;">[![switch_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-a.png)</td><td style="width: 24.9691%;">[![switch_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-b.png)</td><td style="width: 24.9691%;">[![switch_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-c.png)</td><td style="width: 24.9691%;">[![switch_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-d.png)</td></tr></tbody></table>

Ao ser pressionado o interruptor alterna entre os estados conetado e não conetado:

<table border="0" id="bkmrk-%28pressionado%29-%28n%C3%A3o-p" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">[![switch_e.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-e.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-e.png)</td><td style="width: 49.9383%;">[![switch_e.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-e.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-e.png)</td></tr><tr><td class="align-center" style="width: 49.9383%;">(pressionado)</td><td class="align-center" style="width: 49.9383%;">(não pressionado)</td></tr><tr><td style="width: 49.9383%;">[![switch_f.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-f.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-f.png)</td><td style="width: 49.9383%;">[![switch_g.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/switch-g.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/switch-g.png)</td></tr><tr><td class="align-center" style="width: 49.9383%;">(fechado)</td><td class="align-center" style="width: 49.9383%;">(aberto)</td></tr></tbody></table>

#### Procedimento:

Escolhendo o terminal 22 e o GND do ESP32 como referência deve considerar-se o seguinte circuito:

[![interruptor_esq.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/AtGinterruptor-esq.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/AtGinterruptor-esq.png)

##### Instruções:

(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[2\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa**, para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código

```C
/*
interruptor	tipo botão
*/	

#define BUTTON_PIN 22  // definição de terminal GIOP22 ligado ao interruptor

// Variáveis
int lastState = LOW;  // o estado anterior do terminal de entrada
int currentState;     // o estado atual do terminal de entrada

void setup() {
  // inicializa a comunicação série a 115200 bits por segundo:
  Serial.begin(115200);
  // inicializa o terminal do interruptor tipo botão:
  // (o terminal de entrada toma o valor de HIGH quando o interruptor estiver aberto, 
  // e LOW quando estiver fechado)
  pinMode(BUTTON_PIN, INPUT_PULLUP);
}

void loop() {
  // leitura do estado do interruptor tipo botão:
  currentState = digitalRead(BUTTON_PIN);

  if (lastState == HIGH && currentState == LOW)
    Serial.println("o interruptor foi pressionado");
  else if (lastState == LOW && currentState == HIGH)
    Serial.println("o interruptor foi solto");

  // guarda o último estado
  lastState = currentState;
}
```

- Compilar e carregar o código para a placa ESP32

[![arduino_upload.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/arduino-upload.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/arduino-upload.png)

- Verificar o resultado no monitor de comunicação série do IDE Arduino

<table border="0" id="bkmrk--3" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td colspan="2" style="width: 100.124%;">[![eg_int_s.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-int-s.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-int-s.png)</td></tr><tr><td style="width: 50.0618%;">[![output1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/output1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/output1.png)</td><td style="width: 50.0618%;">[![output2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/output2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/output2.png)</td></tr></tbody></table>

#### Montagem exemplificativa:

<table border="0" id="bkmrk--4" style="border-collapse: collapse; width: 100%; height: 1110.88px; border-style: none;"><tbody><tr style="height: 277.719px;"><td style="width: 49.9383%; height: 277.719px;">[![board_kit_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-a.png)</td><td style="width: 49.9383%; height: 277.719px;">[![board_kit_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-b.png)</td></tr><tr style="height: 277.719px;"><td style="width: 49.9383%; height: 277.719px;">[![board_kit_a_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-a-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-a-eg.png)</td><td style="width: 49.9383%; height: 277.719px;">[![board_kit_b_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-b-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-b-eg.png)</td></tr><tr style="height: 277.719px;"><td style="width: 49.9383%; height: 277.719px;">[![board_kit_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-c.png)</td><td style="width: 49.9383%; height: 277.719px;">[![board_kit_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-d.png)</td></tr><tr style="height: 277.719px;"><td style="width: 49.9383%; height: 277.719px;">[![board_kit_c_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-c-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-c-eg.png)</td><td style="width: 49.9383%; height: 277.719px;">[![board_kit_d_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/board-kit-d-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/board-kit-d-eg.png)</td></tr></tbody></table>

#### Referências

\[1\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).

\[2\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url:[ https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em 17/08/2023).

\[3\] Wikipedia. Switch. url: [https://en.wikipedia.org/wiki/Switch](https://en.wikipedia.org/wiki/Switch) (acedido em 22/08/2023).

# [Programa] LED e interruptor

#### Objetivo:

Utilizar o ESP32-WROOM-32E DevKitC v4 \[1\] para alimentar um LED em conjugação com um interruptor para alternar entre os estados ligado e desligado do LED.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Resistência de 330 ohm (Ω)
- Interruptor (tipo botão)
- Díodo emissor de luz (LED) vermelho
- Fio de ligação
- Cabo USB micro

#### [![material_all.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/material-all.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/material-all.png)

#### Contextualização:

Em eletrónica, um circuito LED é um circuito usado para alimentar um díodo emissor de luz (LED). O circuito deve fornecer corrente suficiente para acender o LED e evitar danos ao mesmo. O circuito mais simples para acionar um LED é através de uma resistência em série \[3\]. Por outro lado, um interruptor é um componente elétrico que pode desconectar ou conectar o caminho condutor de um circuito elétrico, interrompendo a corrente elétrica ou desviando-a de um condutor para outro \[4\].

#### Procedimento:

Atentando no objetivo enunciado, e escolhendo os terminais 21 (para o LED), 22 (para o interruptor) e o GND do ESP32 como referência deve considerar-se o seguinte circuito:

<table border="0" id="bkmrk--0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">#### [![butaoled_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/waRbutaoled-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/waRbutaoled-a.png)

</td><td style="width: 49.9383%;">#### [![butaoled_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/cTcbutaoled-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/cTcbutaoled-b.png)

</td></tr></tbody></table>

#### Instruções:

(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[2\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa**, para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código

```C
/*
tipo botão LED 
*/

#define BUTTON_PIN 22  // Terminal GPIO22 do ESP32 que liga ao interruptor
#define LED_PIN    21  // Terminal GPIO21 do ESP32 que liga ao led

// variáveis:
int led_state = LOW;    // o estado atual do LED
int button_state;       // o estado atual do interruptor
int last_button_state;  // o estado anterior do interruptor

void setup() {
	Serial.begin(115200);              // inicializa comunicação série
	pinMode(BUTTON_PIN, INPUT_PULLUP); // estabelece o modo do terminal do ESP32
	pinMode(LED_PIN, OUTPUT);          // estabelece o modo do terminal do ESP32
	
	button_state = digitalRead(BUTTON_PIN);
}

void loop() {
	last_button_state = button_state;       // guarda o estado anterior
	button_state = digitalRead(BUTTON_PIN); // lê o novo estado
	
	if (last_button_state == HIGH && button_state == LOW) {
		Serial.println("o interruptor foi pressionado");
		
		// modifica o estado do LED
		led_state = !led_state;
		
		// controla o LED de acordo com o estado do interruptor
		digitalWrite(LED_PIN, led_state);
	}
}
```

- Compilar e carregar o código para a placa ESP32

#### [![botaoarduino.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/botaoarduino.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/botaoarduino.png)

- Verificar o resultado

<table border="0" id="bkmrk--2" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">#### [![outout.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/outout.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/outout.png)

</td><td style="width: 49.9383%;">#### [![outoutout.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/outoutout.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/outoutout.png)

</td></tr></tbody></table>

#### Montagem exemplificativa:

<table border="0" id="bkmrk-%C2%A0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">#### [![aaa.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/NhWaaa.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/NhWaaa.png)

</td><td style="width: 49.9383%;">#### [![aaa_0.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/aaa-0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/aaa-0.png)

</td></tr><tr><td style="width: 49.9383%;">#### [![bbb.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/bbb.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/bbb.png)

</td><td style="width: 49.9383%;">#### [![bbb_0.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/bbb-0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/bbb-0.png)

</td></tr><tr><td style="width: 49.9383%;">#### [![ccc.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/ccc.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/ccc.png)

</td><td style="width: 49.9383%;">#### [![ccc_0.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/ccc-0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/ccc-0.png)

</td></tr><tr><td style="width: 49.9383%;">#### [![ddd.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/ddd.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/ddd.png)

</td><td style="width: 49.9383%;">#### [![ddd_0.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/ddd-0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/ddd-0.png)

</td></tr><tr><td style="width: 49.9383%;">#### [![eee.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eee.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eee.png)

</td><td style="width: 49.9383%;">#### [![eee_0.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eee-0.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eee-0.png)

</td></tr><tr><td style="width: 49.9383%;">#### [![fff.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/fff.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/fff.png)

</td><td style="width: 49.9383%;">  
</td></tr></tbody></table>

#### Referências

\[1\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url:[ https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).

\[2\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url:[ https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em 17/08/2023).

\[3\] Wikipedia. LED circuit. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 18/08/2023).

\[4\] Wikipedia. Switch. url: [https://en.wikipedia.org/wiki/Switch](https://en.wikipedia.org/wiki/Switch) (acedido em 22/08/2023).

# [Programa] Potenciómetro

#### Objectivo:

Utilizar o *ESP32-WROOM-32E DevKitC v4* \[3\] para ler valor de tensão de saída de um potenciómetro.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Potenciómetro de 10kΩ
- Fios de ligação
- Cabo USB micro

[![setup_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a.png)

#### Contextualização:

Um potenciómetro é um componente eletrónico que incorpora uma resistência elétrica ajustável \[5\].

##### Potenciómetro

Um potenciómetro possui tipicamente três terminais incluindo um contacto ajustável, deslizante ou rotativo, que forma um divisor de tensão ajustável \[5\].

<table border="0" id="bkmrk--0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 24.9691%;">[![eg_out_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-out-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-out-2.png)</td><td style="width: 24.9691%;">[![eg_0_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-0-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-0-2.png)</td><td style="width: 24.9691%;">[![eg_120_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-120-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-120-2.png)</td><td style="width: 24.9691%;">[![eg_240_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/eg-240-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/eg-240-2.png)</td></tr></tbody></table>

##### ESP32-WROOM-32E DevKitC v4

Apesar de se aconselhar a consulta da página do fabricante sobre o kit *ESP32-WROOM-32E DevKitC v4* \[3\] é possível considerar que em determinadas situações os terminais de entrada do microcontrolador ESP32 podem converter tensão (algo como uma quantidade analógica entre 0V e 3.3V) em um valor digital inteiro entre 0 e 4095 (num total de 2<sup>12</sup>=4096 representações possíveis, \[1\]\[2, SAR ADC\]).

[![esp32.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/esp32.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/esp32.png)

#### Procedimento:

Atentando ao objetivo enunciado, e escolhendo os terminais 33 (para o terminal de saída do potenciómetro), 3.3V e o GND do ESP32 como referência deve considerar-se o seguinte circuito:

[![interruptor_montagem_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/Vi0interruptor-montagem-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/Vi0interruptor-montagem-2.png)

##### Instruções:

(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[4\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa**, para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código

```C
/*
* Potenciómetro
*/

float floatMap(float x, float in_min, float in_max, float out_min, float out_max) {
	return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}

// a função setup é executada pontualmente quando o botão reset é premido ou 
// a placa é alimentada:
void setup() {
	// inicializa a comunicação série a 115200 bits por segundo:
	Serial.begin(115200);
}

// a função loop é executada sucessivamente, uma e outra vez, e por aí em diante
void loop() {
	// leitura do valor de entrada no terminal analógico GPIO33:
	int analogValue = analogRead(33);
	// Normalização dos valores lidos para a tensão do potenciómetro
	float voltage = floatMap(analogValue, 0, 4095, 0, 3.3);
	
	// print out the value you read:
	Serial.print("valor lido: ");
	Serial.print(analogValue);
	Serial.print(", tensão: ");
	Serial.println(voltage);
	delay(1000);
}
```

- Compilar e carregar o código para a placa ESP32

[![arduino.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/arduino.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/arduino.png)

- Verificar o resultado

<table border="0" id="bkmrk--4" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">[![out_hand_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/out-hand-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/out-hand-2.png)</td><td style="width: 49.9383%;">[![serial_out_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/serial-out-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/serial-out-eg.png)</td></tr></tbody></table>

#### Montagem exemplificativa:

<table border="0" id="bkmrk--5" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 33.3745%;">[![setup_a_1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-1.png)</td><td style="width: 33.3745%;">[![setup_b_1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-b-1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-b-1.png)</td><td style="width: 33.3745%;">[![setup_a_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-2.png)</td></tr><tr><td style="width: 33.3745%;">[![setup_a_3.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-3.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-3.png)</td><td style="width: 33.3745%;">[![setup_b_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-b-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-b-2.png)</td><td style="width: 33.3745%;">[![setup_a_4.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-4.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-4.png)</td></tr><tr><td style="width: 33.3745%;">[![setup_a_5.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-5.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-5.png)</td><td style="width: 33.3745%;">[![setup_b_3_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-b-3-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-b-3-2.png)</td><td style="width: 33.3745%;">[![setup_a_6_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-6-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-6-2.png)</td></tr><tr><td style="width: 33.3745%;">[![setup_a_6_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-6-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-6-2.png)</td><td style="width: 33.3745%;">[![setup_b_4_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-b-4-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-b-4-2.png)</td><td style="width: 33.3745%;">[![setup_a_8_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/setup-a-8-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/setup-a-8-2.png)</td></tr></tbody></table>

#### Referências:

\[1\] Ltd. Espressif Systems Co. Analog to Digital Converter (ADC). url: [https://docs.espressif.com/projects/esp-idf/en/release-v4.4/esp32/api-reference/peripherals/adc.html](https://docs.espressif.com/projects/esp-idf/en/release-v4.4/esp32/api-reference/peripherals/adc.html) (acedido em 23/08/2023).  
\[2\] Ltd. Espressif Systems Co. ESP32 Technical Reference Manual. Versão 5.0, pp. 631–637. url: [https://www.espressif.com/sites/default/files/documentation/esp32\_technical\_reference\_manual\_en.pdf](https://www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf) (acedido em 18/08/2023).  
\[3\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).  
\[4\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url: [https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em  
17/08/2023).  
\[5\]Wikipedia. Potentiometer. url: [https://en.wikipedia.org/wiki/Potentiometer](https://en.wikipedia.org/wiki/Potentiometer) (acedido em 23/08/2023).

# [Programa] Potenciómetro e LED

#### Objetivo:

Utilizar o ESP32-WROOM-32E DevKitC v4 \[1\] para ler valor de tensão de saída de um potenciómetro, para alimentar um LED e, fazendo uso do valor de lido no terminal de saída do potenciómetro, controlar o brilho do LED.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Resistência de 330 ohm (Ω)
- Díodo emissor de luz (LED) vermelho
- Potenciómetro de 10kΩ
- Fios de ligação
- Cabo USB micro

[![6_material_list.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-material-list.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-material-list.png)

#### Contextualização:

Um potenciómetro é um componente eletrónico que incorpora uma resistência elétrica ajustável \[4\]. Por seu turno, um circuito LED é um circuito usado para alimentar um díodo emissor de luz (LED). O circuito deve fornecer corrente suficiente para acender o LED e evitar danos ao mesmo. O circuito mais simples para acionar um LED é através de uma resistência em série \[3\].

#### Procedimento:

Escolhendo os terminais 16, 33, GNDs e 3.3V do ESP32 como referência deve considerar-se o seguinte circuito:

[![6_setup_overview.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/r5P6-setup-overview.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/r5P6-setup-overview.png)

##### Instruções:

(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[2\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa**, para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código

```C
/*
* Potenciómetro e LED
*/

#define POTENTIOMETER_PIN  33  // terminal GPIO33 do ESP32 ligado ao terminal de saída
// do potenciómetro
#define LED_PIN            16  // terminal GPIO16 do ESP32 ligado  ao LED

// a função setup é executada pontualmente quando o botão reset é premido ou 
// a placa é alimentada:
void setup() {
  // inicializa a comunicação série a 115200 bits por segundo:
  Serial.begin(115200);

  // declara o terminal do LED como saída:
  pinMode(LED_PIN, OUTPUT);
}

// a função loop é executada sucessivamente, uma e outra vez, e por aí em diante
void loop() {		
  // leitura do valor no terminal analógico (valor entre 0 e 4095)
  int analogValue = analogRead(POTENTIOMETER_PIN);

  // normaliza valor lido para valor de interesse (valor entre 0 e 255)
  int brightness = map(analogValue, 0, 4095, 0, 255);

  // define intensidade do LED
  analogWrite(LED_PIN, brightness);

  // imprime valores para a comunicação série
  Serial.print("valor lido = ");
  Serial.print(analogValue);
  Serial.print(" => intensidade = ");
  Serial.println(brightness);
  delay(100);
}
```

- Compilar e carregar o código para a placa ESP32

[![Screenshot_potenciometro_led.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/screenshot-potenciometro-led.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/screenshot-potenciometro-led.png)

- Verificar o resultado

<table border="0" id="bkmrk--2" style="border-collapse: collapse; width: 100%; height: 187.844px; background-color: #ffffff; border-color: #ffffff; border-style: none;"><tbody><tr style="height: 187.844px;"><td style="width: 33.3745%; height: 187.844px;">[![6_out1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-out1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-out1.png)</td><td style="width: 33.3745%; height: 187.844px;">[![6_out2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-out2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-out2.png)</td><td style="width: 33.3745%; height: 187.844px;">[![6_out3.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-out3.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-out3.png)</td></tr></tbody></table>

#### Montagem exemplificativa:

<table border="0" id="bkmrk--3" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 33.2909%;">[![6_montagem_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-a.png)</td><td style="width: 33.2909%;">  
</td><td style="width: 33.2948%;">[![6_montagem_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-b.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-c.png)</td><td style="width: 33.2909%;">[![6_montagem_1.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-1.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-1.png)</td><td style="width: 33.2948%;">[![6_montagem_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-d.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_e.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-e.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-e.png)</td><td style="width: 33.2909%;">[![6_montagem_2.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-2.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-2.png)</td><td style="width: 33.2948%;">[![6_montagem_f.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-f.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-f.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_g.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-g.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-g.png)</td><td style="width: 33.2909%;">[![6_montagem_3.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-3.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-3.png)</td><td style="width: 33.2948%;">[![6_montagem_h.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-h.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-h.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_i.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-i.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-i.png)</td><td style="width: 33.2909%;">[![6_montagem_4.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-4.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-4.png)</td><td style="width: 33.2948%;">[![6_montagem_j.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-j.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-j.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_k.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-k.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-k.png)</td><td style="width: 33.2909%;">[![6_montagem_5.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-5.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-5.png)</td><td style="width: 33.2948%;">[![6_montagem_l.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-l.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-l.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_m.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-m.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-m.png)</td><td style="width: 33.2909%;">[![6_montagem_6.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-6.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-6.png)</td><td style="width: 33.2948%;">[![6_montagem_n.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-n.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-n.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_o.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-o.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-o.png)</td><td style="width: 33.2909%;">[![6_montagem_7.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-7.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-7.png)</td><td style="width: 33.2948%;">[![6_montagem_p.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-p.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-p.png)</td></tr><tr><td style="width: 33.2909%;">[![6_montagem_q.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-q.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-q.png)</td><td style="width: 33.2909%;">[![6_montagem_8.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-8.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-8.png)</td><td style="width: 33.2948%;">[![6_montagem_r.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/6-montagem-r.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/6-montagem-r.png)</td></tr></tbody></table>

#### Referências:

\[1\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).  
\[2\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url: [https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em 17/08/2023).  
\[3\] Wikipedia. LED circuit. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 18/08/2023).  
\[4\] Wikipedia. Potentiometer. url: [https://en.wikipedia.org/wiki/Potentiometer](https://en.wikipedia.org/wiki/Potentiometer) (acedido em 23/08/2023).

# [Programa] TFT

#### Objetivo:

Utilizar o *ESP32-WROOM-32E DevKitC v4* \[2\] para desenhar num monitor TFT.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- *Adafruit 1.44" Color TFT (ST7735)*
- Fios de ligação
- Cabo USB micro

#### Contextualização:

##### *Adafruit 1.44" Color TFT*

O monitor TFT (Thin-film transistor, \[6\]) de 1.44 polegadas da Adafruit (*ST7735 Adafruit 1.44" Color TFT*, \[1\]) faz uso do barramento de comunicação SPI (*Serial Peripheral Interface* \[5\]) de 4 fios possuindo ainda *buffer* de dados endereçável por pixel dedicado.

[![7_tft_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-tft-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-tft-eg.png)

##### *Serial Peripheral Interface*

O *Serial Peripheral Interface* (SPI) é um barramento que permite, por exemplo, a comunicação entre um microcontrolador com diversos outros componentes \[5, 3\].

Ainda que a sua designação possa variar, e nem todas as ligações se tenham que usar num dado exemplo, o barramento SPI considera 4 sinais lógicos:

<table border="0" id="bkmrk-sclk%2Fsck-serial-cloc" style="border-collapse: collapse; width: 100%; height: 119.188px; border-style: none;"><tbody><tr style="height: 29.7969px;"><td class="align-right" style="width: 49.9383%; height: 29.7969px;">SCLK/SCK</td><td style="width: 49.9383%; height: 29.7969px;">*Serial Clock*</td></tr><tr style="height: 29.7969px;"><td class="align-right" style="width: 49.9383%; height: 29.7969px;">MOSI/SDI</td><td style="width: 49.9383%; height: 29.7969px;">*Main Out Sub In* / *Serial Data In*</td></tr><tr style="height: 29.7969px;"><td class="align-right" style="width: 49.9383%; height: 29.7969px;">MISO/SDO</td><td style="width: 49.9383%; height: 29.7969px;">*Main In Sub Out* / *Serial Data Out*</td></tr><tr style="height: 29.7969px;"><td class="align-right" style="width: 49.9383%; height: 29.7969px;">CS/SS</td><td style="width: 49.9383%; height: 29.7969px;">*Chip Select*</td></tr></tbody></table>

<table border="0" id="bkmrk--0" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 50.0618%;">[![7_spi_esp32.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-spi-esp32.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-spi-esp32.png)</td><td style="width: 50.0618%;">[![7_spi_tft.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-spi-tft.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-spi-tft.png)</td></tr></tbody></table>

[![7_spi_eg.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-spi-eg.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-spi-eg.png)

#### Procedimento:

Escolhendo os terminais 13, 14, 15, 25, 26, GND e 3.3V do ESP32 como referência deve considerar-se o seguinte ilustração de montagem:

[![7_montagem_overview.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-montagem-overview.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-montagem-overview.png)

##### Instruções:

<div class="pointer-container" id="bkmrk-%C2%A0"><div class="pointer anim "><svg class="svg-icon" data-icon="link" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg><div class="input-group inline block"> <button class="button outline icon" data-clipboard-target="#pointer-url" title="Copy Link" type="button"><svg class="svg-icon" data-icon="copy" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></button></div></div></div>(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[4\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa**, para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Usando a ferramenta de gestão de bibliotecas do IDE Arduino procurar e instalar a biblioteca: ***Adafruit\_GFX*** \[7,8\].

***[![7_arduino_aa.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-arduino-aa.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-arduino-aa.png)***

- Repetir a tarefa anterior para as bibliotecas ***Adafruit\_ST7735*** e ***Adafruit\_BusIO***;

<table border="0" id="bkmrk--4" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9383%;">[![7_arduino_bb.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-arduino-bb.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-arduino-bb.png)</td><td style="width: 49.9383%;">[![7_arduino_cc.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-arduino-cc.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-arduino-cc.png)</td></tr></tbody></table>

- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte código


```C
/*
* TFT
*/
#include <SPI.h>			 // Biblioteca relacionada com SPI
#include <Adafruit_GFX.h>    // Biblioteca relacionada com primitivas de desenho
#include <Adafruit_ST7735.h> // Biblioteca específica para ST7735
	
// definição dos terminais a considerar
#define TFT_CS         15
#define TFT_DC         25
#define TFT_MOSI       13
#define TFT_SCLK       14
#define TFT_RST        26

// definição de cores de interesse
#define BLUE     0x001F
#define GREEN    0x07E0
#define WHITE    0xFFFF
#define BLACK    0x0000

// variáveis várias
int m_pos = 0;
int m_s = 128;
int m_contador = 0;
int m_o_contador = 65;
char cc = m_o_contador;

// inicialização de classe relacionada com ST7735
Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_MOSI, TFT_SCLK, TFT_RST);
	
// função de escrita
void testdrawtext(char *text, uint16_t color, uint8_t size) {
	tft.setCursor(51, 49);
	tft.setTextColor(color);
	tft.setTextWrap(true);
	tft.setTextSize(size);
	tft.print(text);
}

// a função setup é executada pontualmente quando o botão reset é premido ou 
// a placa é alimentada:
void setup(void) {
	Serial.begin(115200);
	Serial.print(F("inicialização ..."));
	
	tft.initR(INITR_144GREENTAB); // inicialização específica do tft 128x128 1.44" usado
	tft.setRotation(1); // definição de rotação do monitor
	tft.fillScreen(WHITE); // desenho no ecrâ na sua globalidade
	
	cc = m_o_contador;
	testdrawtext(&cc,BLACK,5); // escrita no ecrâ
	
	delay(500);		
	Serial.print(F(" completa"));
}

// a função loop é executada sucessivamente, uma e outra vez, e por aí em diante
void loop() {
	Serial.print(F("iteração"));
	Serial.print(m_contador, DEC);
	m_contador = m_contador + 1;
	
	tft.drawRect(m_pos,m_pos,m_s,m_s,BLUE); // desenho de linha de quadrado azul
	delay(10);
	
	m_pos = m_pos + 1;
	m_s = m_s - 2;  		
	if (m_pos >= 64){
		m_pos = 0;
		m_s = 128;
		
		tft.fillScreen(WHITE);
		m_o_contador = m_o_contador + 1;
		if (m_o_contador > 90) {
			m_o_contador = 65;
		}
		cc = m_o_contador;
		
		testdrawtext(&cc,BLACK,5); // escrita de texto no ecrâ
		delay(500);
	}

	tft.drawRect(m_pos,m_pos,m_s,m_s, GREEN);
	delay(10);
}
```

- Compilar e carregar o código para a placa ESP32

[![7_arduino.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-arduino.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-arduino.png)

- Verificar o resultado

[![tft.gif](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/tft.gif)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/tft.gif)

#### Montagem exemplificativa:

<table border="0" id="bkmrk--8" style="border-collapse: collapse; width: 100%; border-style: none;"><tbody><tr><td style="width: 49.9506%;">[![7_montagem_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-montagem-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-montagem-a.png)</td><td style="width: 49.9506%;">[![7_img_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-img-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-img-a.png)</td></tr><tr><td style="width: 49.9506%;">[![7_montagem_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-montagem-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-montagem-b.png)</td><td style="width: 49.9506%;">[![7_img_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-img-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-img-b.png)</td></tr><tr><td style="width: 49.9506%;">[![7_montagem_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-montagem-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-montagem-c.png)</td><td style="width: 49.9506%;">[![7_img_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-img-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-img-c.png)</td></tr><tr><td style="width: 49.9506%;">[![7_montagem_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-montagem-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-montagem-d.png)</td><td style="width: 49.9506%;">[![7_img_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/7-img-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/7-img-d.png)</td></tr></tbody></table>

#### Referências:

\[1\] Adafruit. Adafruit 1.44” Color TFT with Micro SD Socket - Pinouts. url: [https://learn.adafruit.com/adafruit-1-44-color-tft-with-micro-sd-socket/pinouts](https://learn.adafruit.com/adafruit-1-44-color-tft-with-micro-sd-socket/pinouts) (acedido em 25/08/2023).

\[2\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).

\[3\] Ltd. Espressif Systems Co. SPI. url: [https://docs.espressif.com/projects/arduino-esp32/en/latest/api/spi.html](https://docs.espressif.com/projects/arduino-esp32/en/latest/api/spi.html) (acedido em 25/08/2023).

\[4\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url: [https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em 17/08/2023).

\[5\] Wikipedia. Serial Peripheral Interface. url: [https://en.wikipedia.org/wiki/Serial\_Peripheral\_Interface](https://en.wikipedia.org/wiki/Serial_Peripheral_Interface) (acedido em 5/08/2023).

\[6\] Wikipedia. Thin-film transistor. url: [https://en.wikipedia.org/wiki/LED\_circuit](https://en.wikipedia.org/wiki/LED_circuit) (acedido em 25/08/2023).

\[7\] Adafruit. Adafruit GFX Graphics Library. url: [https://learn.adafruit.com/adafruit-gfx-graphics-library](https://learn.adafruit.com/adafruit-gfx-graphics-library) (acedido em 28/08/2023).

\[8\] Adafruit. Adafruit GFX Graphics Library. url: [https://github.com/adafruit/Adafruit-GFX-Library](https://github.com/adafruit/Adafruit-GFX-Library) (acedido em 28/08/2023).

# [Programa] SHT40

#### Objetivo:

Utilizar o *ESP32-WROOM-32E DevKitC v4* \[2\] para ler valores de temperatura de um sensor SHT40.

#### Lista de material:

- *ESP32-WROOM-32E DevKitC v4*
- Breadboards
- Sensor SHT40
- Fios de ligação
- Cabo micro USB

[![8_material_list.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-material-list.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-material-list.png)

#### Contextualização:

##### Grove - Temperature &amp; Humidity Sensor (SHT40)

O sensor de temperatura e humidade da Seeed SHT40 é um sensor digital com interface I2C padrão \[4\].

##### *Inter-Integrated Circuit* (I2C)

O *Inter-Integrated Circuit* \[5\] é um barramento série que permite a co-existência de múltiplos controladores e periféricos e considera essencialmente duas ligações:

<table border="1" id="bkmrk-sda-serial-data-line" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 49.9506%;">SDA</td><td style="width: 49.9506%;">Serial Data Line</td></tr><tr><td class="align-right" style="width: 49.9506%;">SDL</td><td style="width: 49.9506%;">Serial Clock Line</td></tr></tbody></table>

<table border="1" id="bkmrk--0" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![8_i2c_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-i2c-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-i2c-a.png)</td><td style="width: 49.9506%;">[![8_i2c_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-i2c-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-i2c-b.png)</td></tr></tbody></table>

#### Procedimento:

Atentando nos terminais 21, 22, GND e 3.3V do ESP32 como referência deve considerar-se o seguinte ilustração de montagem:

[![8_i2c_setup.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-i2c-setup.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-i2c-setup.png)

##### Instruções:

(para uma primeira utilização do ESP32, sugere-se o tutorial *Primeiro Programa* \[3\])

- Montar o circuito esquematizado anteriormente (ver Secção **Montagem exemplificativa**, para mais detalhe)
- Ligar a placa ESP32 ao computador por via de cabo USB micro
- Abrir o IDE Arduino
- Usando a ferramenta de gestão de bibliotecas do IDE Arduino procurar e instalar a biblioteca **Adafruit SHT4X** (\[1\])

[![8_arduino_setup.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-arduino-setup.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-arduino-setup.png)

- Selecionar o dispositivo ESP32 adequado
- Copiar o seguinte


```C
/*
* sensor sht40
*/

#include "Adafruit_SHT4x.h" // Biblioteca relacionada com sensor SHT40

// inicialização de classe relacionada com SHT40
Adafruit_SHT4x sht4 = Adafruit_SHT4x();


// a função setup é executada pontualmente quando o botão reset é premido ou 
// a placa é alimentada:
void setup() {
	// inicializa a comunicação série a 115200 bits por segundo:
	Serial.begin(115200); 
	
	sht4.begin(); 
	
	// definição de precisão e outras opções do sensor
	sht4.setPrecision(SHT4X_HIGH_PRECISION);
	sht4.setHeater(SHT4X_NO_HEATER);  
}

// a função loop é executada sucessivamente, uma e outra vez, 
// e por aí em diante
void loop() {
	sensors_event_t humidade, temperatura;
	
	// atualiza os objetos com dados novos
	sht4.getEvent(&humidade, &temperatura); 
	
	Serial.print("Temperatura: "); 
	Serial.print(temperatura.temperature); 
	Serial.println(" ºC");
	Serial.print("Humidade: "); 
	Serial.print(humidade.relative_humidity); 
	Serial.println("% rH"); 
	delay(1000);
}
```

- Compilar e carregar o código para a placa ESP32

[![8_arduino.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-arduino.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-arduino.png)

- Verificar o resultado

<table border="1" id="bkmrk--4" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![8_img_out_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-img-out-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-img-out-a.png)</td><td style="width: 49.9506%;">[![8_img_out_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-img-out-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-img-out-b.png)</td></tr></tbody></table>

#### Montagem exemplificativa:

<table border="1" id="bkmrk--6" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 49.9506%;">[![8_out_a.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-out-a.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-out-a.png)</td><td style="width: 49.9506%;">[![8_out_b.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-out-b.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-out-b.png)</td></tr><tr><td style="width: 49.9506%;">[![8_out_c.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-out-c.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-out-c.png)</td><td style="width: 49.9506%;">[![8_out_d.png](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/scaled-1680-/8-out-d.png)](https://kb.deec.uc.pt/uploads/images/gallery/2023-08/8-out-d.png)</td></tr></tbody></table>

#### Referências:

\[1\] Adafruit. Adafruit Sensirion SHT40, SHT41 &amp; SHT45 Temperature &amp; Humidity Sensors. url: [https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor](https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor) (acedido em 29/08/2023).  
\[2\] Ltd. Espressif Systems Co. ESP32-DevKitC V4 Getting Started Guide. url: [https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) (acedido em 18/08/2023).  
\[3\] Paulo Menezes. Artigos de Suporte - DEEC - Kit Eletrónica - Primeiro Programa. url: [https://kb.deec.uc.pt/books/deec/page/primeiro-programa](https://kb.deec.uc.pt/books/deec/page/primeiro-programa) (acedido em 17/08/2023).  
\[4\] Seeed Studio. Grove - Temperature &amp; Humidity Sensor. url: [https://wiki.seeedstudio.com/Grove-SHT4x/](https://wiki.seeedstudio.com/Grove-SHT4x/) (acedido em 29/08/2023).  
\[5\] Wikipedia. I2C. url: [https://en.wikipedia.org/wiki/I%C2%B2C](https://en.wikipedia.org/wiki/I%C2%B2C) (acedido em 29/08/2023).

# Carregamento



# Manual de Instruções – Carregamento de Veículos Elétricos na Plataforma MIAGO

A **plataforma MIAGO** é a ferramenta utilizada para gerir e acompanhar os carregamentos elétricos.  
Antes de iniciar qualquer carregamento, certifique-se de que possui credenciais válidas.

### **1. Validação Inicial**

Após ligar o veículo ao carregador, este necessita de uma **validação de autorização**.

- **Se não possuir uma tag registada ou uma conta MIAGO ativa**, deve dirigir-se ao **Gabinete de Gestão de Rede e Informática** para que os seus dados sejam registados e autorizados.
- **Se já possuir as credenciais necessárias**, poderá iniciar o carregamento através de um dos métodos seguintes.

### **2. Como Iniciar o Carregamento**

Existem duas formas de iniciar o carregamento do veículo:

#### **Opção 1 — Utilizar a Tag no Carregador**

1. Aproxime a sua **tag de autorização** do leitor existente no carregador.
2. Após a validação, o carregamento será iniciado automaticamente.

[![image-1765471518877.png](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/scaled-1680-/image-1765471518877.png)](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/image-1765471518877.png)

#### **Opção 2 — Utilizar a Plataforma MIAGO**

1. Leia o **código QR** presente no carregador que o irá redirecionar para o link [https://miago7.streamline.pt](https://miago7.streamline.pt).
2. Autentique-se na plataforma MIAGO com as suas credenciais.
3. Aceda à página **“Carregamentos”** e selecione o seu carregador.
4. Selecione **“Iniciar Carregamento”** para começar o processo.

[![image-1765471223939.png](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/scaled-1680-/image-1765471223939.png) ](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/image-1765471223939.png)[![image-1765471239017.22.27_0fa37508.jpg](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/scaled-1680-/image-1765471239017-22-27-0fa37508.jpg)](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/image-1765471239017-22-27-0fa37508.jpg)[ ![image-1765471285365.png](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/scaled-1680-/image-1765471285365.png)](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/image-1765471285365.png)

### **Acompanhamento do Carregamento**

Depois de iniciado, o carregamento pode ser acompanhado remotamente através da plataforma MIAGO.

- Ao ativar o **modo manual de controlo**, poderá:
    
    
    - Consultar o estado do carregamento em tempo real
    - Controlar ou interromper o carregamento de forma remota

[![image-1765471392094.png](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/scaled-1680-/image-1765471392094.png)](https://kb.deec.uc.pt/uploads/images/gallery/2025-12/image-1765471392094.png)