/cyb/ - Cyberia

Tecnologia, computadores, programação e loucura


Nova Resposta
Nome
×
Opção
Assunto
Mensagem
Ficheiros 🖌️ Máx 4100MB total
Password
Especial
[Nova Resposta]


>>/sobre/ >>/css/


ClipboardImage.png
[Esconder] (587.7KB, 656x666)
Hoje recebi isto nos correios:
>ESP32, 2 cores @ 240MHz (max, regulável prolly)
>448 KB ROM
>520 KB SRAM
>4MB flash acessível 
>802.11 b/g/n
>i2c, spi, uart, can, i2s
>Uma carrada de pins para GPIO, PWM, 
>RTC interno
>Compatível com FreeRTOS
Comprei um pack de 3 no eBay e dei €8.16 por cada um. Cada core usa a arquitetura Xtensa, que é uma arquitetura de 32 bits mas "comprime" as instruções para que as mais frequentes sejam instruções de apenas 1 byte, à semelhança com o que fazem com o UTF-8. Isto permite poupar tamanho do binário.
Existe um plugin para o vscode e está semi-decente, na minha opinião melhor do que o IDE do Arduino e é mais escalável. A documentação é ok mas não é excelente, nota-se que está tudo em construção mas estão a crescer rápido e a fazer um bom trabalho.
Respostas: >>7399 >>7624
>>7398 (OP) 
E agora? Projetos?
Respostas: >>7400
>>7399
Ando a pensar em fazer um runner de webassembly com uma API genérica que permita aceder a diversos tipos de interface do chip (GPIO, PWM, barramentos, etc). sem ter de saber em que chip está a correr. A parte fixe de se escrever em wasm é que pode-se compilar qualquer linguagem suportada pelo llvm (c, c++, rust, typescript, etc). outra vantagem é que consigo correr webassembly de forma "containerizada" e então é possível fazer com que seja seguro correr código remoto em dispositivos IoT sem o receio desse código poder fazer takeover completo do chip, tornando fácil criar apps seguras para dispositivos IoT.
Mas para já é tudo muito abstrato na minha cabeça.
>ter uma merda destas há mais de 3 anos
>ver o op a falar disto como se fosse novidade
Respostas: >>7402
>>7401
eu por acaso tinha um esp32 com 1 Core só mas nunca tinha explorado. deram-me há uns anos e eu arrumei para o lado, deviam ter dito as specs porque isto é muito fixe
084954490fba5f12db70(...).jpg
[Esconder] (153.2KB, 1080x1200)
Também tenho uma coisa dessas OP. 
Se fizeres um projeto porreiro posso bem voltar a usá-la para correr o teu código.
Respostas: >>7413 >>7415
>>7412
Isso é um esp8266. E limpa a merda desse fluxo.
Respostas: >>7414
>>7413
Está só numa gaveta, quando comprei ainda usava para brincadeiras mas perdi o interesse. 
Qual é a diferença? Não entendo nada destas coisas.
ClipboardImage.png
[Esconder] (214.3KB, 941x1301)
>>7412
Ando a ver se arranjo tempo para meter o sdk disso a funcionar. Os plugins para o visual studio não parecem estar maus mas têm uma lógica própria e tens de aprender a trabalhar com aquilo, não está feito da forma mais intuitiva e acho que o facto dos gajos serem chineses não ajuda na forma como documentam as coisas. Não é plug and play como o Arduino e tens de perder tempo a entender mas dá a impressão de que é robusto e depois de se entender não dá muitos problemas e é divertido de se usar e apesar de ser um inglês manhoso, também está tudo exposto de forma muito lógica o que ajuda. Parece também ser extremamente adaptável e dá para usar só linha de comandos se fores leet, vscode, vim, ide do arduino, só não vi instruções para o clion que é o que eu uso.

>Qual é a diferença? Não entendo nada destas coisas.
Não sou o outro danone, acho que a diferença é que o meu tem 2 cores e o teu tem apenas um core, são chips diferentes, o meu tem mais cores e mais cenas tipo bluetooth e um monte de cenas que provavelmente não vou usar para nada sério mas queria experimentar, especialmente os dois cores. Andei a estudar cenas relacionadas com memória partilhada e sincronização de caches e gostava de experimentar emitir instruções de barreira para sentir o tesão de fazer multithreading à pata.
Para 99% das coisas o teu tem o mais importante que é i2c, gpio, pwm, wifi e talvez spi. São chips do caralho, eu fico parvo como é que computadores inteiros potentes como o caralho custam tão pouco.
>vscode
>webassembly
Caganeira.
ClipboardImage.png
[Esconder] (1.1MB, 1280x629)
ClipboardImage.png
[Esconder] (707.4KB, 1280x1167)
ClipboardImage.png
[Esconder] (829KB, 1280x871)
Configurei o SDK no vscode através de uma coisa chamada PlatformIO IDE e no clion apenas com o SDK do Espressif. Achei o PlatformIO IDE um bocado lixo, não vejo benefício pois o CMake do SDK do chip já traz tudo e vem com vários targets fictícios que permite realizar operações no dispositivo como monitorizar a serial e afins. O SDK não é perfeito mas está em constante evolução e estão a fazer um bom trabalho.
O compilador permite C++20 e operações assíncronas com asio e há um esforço contíno para desenvolver com que as operações assíncronas sejam fáceis, isso tem vários benefícios em termos de desempenho e número de conexões paralelas.
Fazer uso dos dois cores é trivial e como isto suporta FreeRTOS suponho que tenha alguma implementação de mutex e se assim for qualquer programador que saiba usar um mutex sabe fazer multithreading neste chip. Nunca usei nenhum RTOS, sempre quis saber como funciona.
Aparentemente existe também um terceiro core de ultra baixa energia e é possível desligar os outros cores e usar só esse.
Flashar o chip é um bocado chato e a forma mais fácil que encontrei foi ligar o pino 0 à terra (fio verde da pica relatada). Fora isso é possível flashar via wifi sem andar a ligar e a desligar pinos mas para isso é necessário particionar a flash de forma que exista uma partição extra com o programa que recebe via wifi o flash OTA e flasha mas ainda não percebi como funciona esta parte.
Já brinquei com arduinos há uns anos mas isto aqui é outro nível, estou para ver que merdas consigo enfiar cá dentro, se compilar o tensorflow lite micro isto até corre modelos de machine learning.
Respostas: >>7482 >>7496
Grande plaquinha, quando aparecerem versões dela com eSIM e ligação 5g é que vai partir tudo, finalmente vou poder tomar a vacina do covid de casa
>>7479
>Um led
>6 fios
>Maioria não estão lá a fazer nada
>Sem resistência no led

Falas muito bem mas não pareces perceber muito o que fazes
Respostas: >>7484
>>7482
o led nem sequer está ligado, só meti lá para ver se encaixava direito. Algum do material aqui tenho há mais de 10 anos e algum estava enferrujado, ando a testar se está tudo direito.
Para já o único dos fios que está a ser usado aí é para flashar.
Acho que nunca me dei a entender como expert, não percebo um caralho de electrónica, sou apenas um amador a divertir-se.
Respostas: >>7496
>>7484
>>7479
Novidades? Como estamos?
Respostas: >>7497
cenas.jpg
[Esconder] (104KB, 1052x666)
>>7496
Algumas peças que encomendei chegaram, estou a montar o protótipo e a identificar outras peças que faltam. Estou a meter tudo em caixas estanque para ser à prova de água, no fim acho que vou ter de por cola e veda.
Preciso de comprar fio e cabo elétrico com a secção certa para isto, estou a dimensionar para 220VAC/10A (2.2kW). Não sei se devo escolher unifilar ou multifilar.
Uma das caixas é para AC e outra para DC, devo por mais 1 ou 2 caixas DC.
Quero agora fazer duma caixa estanque um painel com 25 conectores para sensores de 2+ pinos mas ainda não sei o que usar, para já considerei Dupont, Molex e RJ11. Estou aberto a sugestões, quero algo barato e prático.
Também preciso de alguma espécie de barramento para distribuir eletricidade, porque ando a usar ligadores e mais de 2 fios não fica direito.
Respostas: >>7501
coisas.jpg
[Esconder] (114.7KB, 1259x666)
Fechado fica assim
Respostas: >>7501
coiso.jpg
[Esconder] (61.8KB, 666x982)
2 das caixas são tomadas, estas podem estar no exterior. A outra é um interruptor
Vou meter mais 4 tomadas dessas, para serem ligadas / desligadas mediante os valores nos sensores
Respostas: >>7501
ac.jpg
[Esconder] (58.8KB, 607x666)
dc.jpg
[Esconder] (69.6KB, 688x666)
Detalhe das caixas
Respostas: >>7501
060ebd4d832122a16977(...).jpg
[Esconder] (3.1MB, 4032x3016)
>>7497
>>7498
>>7499
>>7500
Mas que diabos estás a fazer?
Respostas: >>7502 >>7503 >>7504
>>7501
o danone:
>vou acender o LED
Ena! Microcontrolador e grande montagem loool
Respostas: >>7504
>>7501
Eu até me rin com a posta.
A única coisa que vejo é uma board com relés. Aquilo só serve para ligar e desligar, provavelmente as tomadas. Não sei que sensores vai ele usar. Irá talvez medir os amps que cada tomada está a puxar?
Op, toma nota do tipo de ligação que os sensores vão usar. I2C, SPI, etc, não foram feitos para funcionarem em longas distâncias. Até 1 metro jà é muito.
Isso de teres um esp mestre a ler merdas longe dele, com fios, não é grande ideia. Mais vale ter um esp 8266 em cada tomada perto dos sensores a mandar os dados ao esp32 por WiFi (e a receber os comandos para ligar e desligar os relés)
E muda a maneira como estás a alimentar isso. Tens boards conversores ac-dc bastante mais pequenas que esse carregador falso da Samsung.
Respostas: >>7504
>>7501
sistema de automação da rega, sensores de nível da água e humidade da terra e quero também sensores para o adubo e ajustar o fertilizante para os níveis certos. tenho várias plantas diferentes que precisam de quantidades de água diferentes então tenho de ter sensores para todas elas.

>>7502
>>7503
que génios que vocês são, é que é mesmo espectável uma pessoa começar um projeto num dia e acabar no dia seguinte. acho até que deviam postar aí o que andam a fazer para podemos aprender convosco. postem lá, fico a espera.
Respostas: >>7505
>>7504
Eu nunca disse o contrário. Como não deste informações sobre o que isso ia fazer e deixaste apenas fotos sem comentários, nós tivemos de adivinhar.
Isso vai estar ao sol né? Usa baterias e pequenos painéis solares. São baratissimos. Para controlares a água, usa sistema gota a gota. Podes usar válvulas eléctricas para abrir a água ás mangueiras que tu queres.
Para leres os sensores, é como disse.. duvido que consigas extender os fios dos mesmos. O ideal era teres um esp perto de cada conjunto de sensores e mandar por wifi. Com bateria e painel solar nem os fios para alimentação precisas.
Respostas: >>7506 >>7507
>>7505
Tive de aturar idiotices hoje e não estou muito bem disposto, e fico menos quando venho para o /cyb/ falar de coisas técnicas e tá aqui o palhaço do costume a mandar abaixo quando ele não não faz um caralho da própria vida e tem a perfeita noção disso.

Este aqui vai estar sob luzes artificiais e água. Inicialmente vou fazer cultivo de terra mas estou a projetar para aos poucos passar para hidropónico e possivelmente aeropónico mas no passado andei a fazer experiências ligeiras com aeroponia e pareceu pouco prático. Tenho as minhas dúvidas até se a hidroponia é boa ideia ou se vale a pena só por ser fixe mas quero experimentar.
A ideia é o sistema fazer tudo: medir as propriedades químicas e manter sempre em níveis ótimos.
Estive a ver válvulas selenoides e são um bocado caras, quase que fica ao mesmo preço meter bombas sempre que preciso duma válvula. Queria poder medir a quantidade de líquido que passo dum lado para o outro. Outro problema que a válvula tem é que tenho de fazer uso da gravidade e pressão existente.
Como para já os sensores não vão estar muito longe pode ser assim, mas era capaz de passar um ESP mais baratuxo ligado ao ESP principal só para ler sensores, até se podia fazer alguma coisa descentralizada para o caso de um dos nós morrer, os outros ficam vivos. Usar wifi parece uma boa, até posso meter um dos ESP como AP e os outros como cliente.
Respostas: >>7508
>>7505
Quando a cena dos painéis para já não faz muito sentido mas sou capaz de vir a investir mais para o futuro. Não sei como é para carregar baterias, ja tive N vezes para fazer uma "UPS" para 12VDC com pulhas de lítio e meter em merdas tipo router porque é bem melhor que a UPS. Mas como não é só chegar lá e ligar, ainda não fui ver como se faz. Meia dúzia de pilhas que usam para carregar os portáteis chegava perfeitamente para routers e discos, até mesmo para o PC se meter um pack de pilhas dentro da caixa.
A minha UPS é relativamente boa no mercado e é uma merda porque usa tecnologia das baterias dos carros, e também tem perdas na transformação e inversão.
dcc1803a8870633a242c(...).png
[Esconder] (7KB, 589x45)
>>7506
>fico menos quando venho para o /cyb/ falar de coisas técnicas e tá aqui o palhaço do costume 
Eu perguntei o que estavas a fazer porque tinhas falado em experimentar ver como era e as brincadeiras e uns dias depois peço um update naquela de ver e tens um projeto montado já a pensar no deploy. Acho que se compreende a surpresa. Não vou mandar abaixo pessoas a fazer coisas, projetos mesmo que discorde do que estão a fazer ou não tenha interesse. Não era esse o intuito quando disse que diabos. 
>até se podia fazer alguma coisa descentralizada para o caso de um dos nós morrer
Agora tens o meu interesse. Para que seria usado o ESP principal? Simplesmente coordenar o que cada um faz? 
Centralizar tudo nesse módulo de controlo é muito melhor para recolher números, tomar decisões potencialmente mais informadas e potencialmente expandir esse módulo para ter mais funcionalidades MAS a ideia de fazer um swarm de sensores independentes que comunicam entre si e vão reajustando o seu comportamento de acordo com a informação uns dos outros é infinitamente mais gira para mim. Em vantagens práticas tens o que já disseste, é mais resiliente e tem a possibilidade de poderes acrescentar tanta redundância quanta quiseres (dentro dos razoáveis, se forem milhares a coisa começa a complicar). Também tens a possibilidade de, e sem saber o teu projeto, usar as várias partes como relays para conseguires que eles comuniquem a distâncias muito maiores com relativa facilidade.
Respostas: >>7544
>>7508
>Eu perguntei o que estavas a fazer porque tinhas falado em experimentar ver como era e as brincadeiras e uns dias depois peço um update naquela de ver e tens um projeto montado já a pensar no deploy. 
Eu estava a fazer um projeto em rpi4, quando fiz o fio só tinha comprado o esp32 para experimentar mas depois apercebi-me que o esp era 1000x mais adequado ao meu caso de uso.

>Para que seria usado o ESP principal? Simplesmente coordenar o que cada um faz? 
E que tal uma rede mesh? Gosto mais disso do que com um ESP principal e o ESP já traz um SDK especial para mesh: https://github.com/espressif/esp-mdf
Curto a ideia de nós independentes, que se forem capazes, comunicam entre si e funcionam como uma unidade mas se houver uma quebra de comunicação continua a funcionar igual. O chip é bastante potente para conseguir fazer isso.
Parece que o maior drawback de usar esse modo swarm é que se o volume de dados for grande, podes entupir os chips todos, para sensores e controlos onde passa poucos dados é sem problemas. Não sei se é fácil ou não trabalhar com o SDK deles, ainda estou a aprender a usar o outro.
Para além da resiliência e redundância há outra vantagem que é aumentar o raio. Por exemplo, cá em casa o meu sinal wifi não chega a todo o lado por causa de como as paredes estão feitas e eu não sou caso único, isso seria perfeito para pessoas com muitos pontos cegos em casa: Se tiver vários dispositivos espalhados por casa eles comunicam-se uns com os outros.

As minhas lâmpadas da Xiaomi têm isso e eu uso por causa do problema do Wifi, não funciona bem e nota-se bem o atraso de eu dar uma ordem até que esta seja executada. E também por vezes desconecta-se e é difícil reestabelecer a comunicação por mesh, por vezes tenho de reconfigurar a lâmpada e é chato. Espero que o mecanismo do ESP32 seja melhor, o lag é sem problemas mas estar a desconectar torna praticamente inútil.

Já agora... será que é difícil fazer uma rede mesh de raiz? Nunca pensei no problema
Respostas: >>7552
>>7544
>Parece que o maior drawback de usar esse modo swarm é que se o volume de dados for grande, podes entupir os chips todos, para sensores e controlos onde passa poucos dados é sem problemas. Não sei se é fácil ou não trabalhar com o SDK deles, ainda estou a aprender a usar o outro.
Isto é um clássico porque eles devem estar a flooding. Não conhecia isto mas parece uma coisa ok. 
>Já agora... será que é difícil fazer uma rede mesh de raiz? Nunca pensei no problema
Acho que depende muito do que queres fazer. Se por rede mesh tu entendes implementar literalmente ao nível do pacote de wifi poderá ser chato. Não é algo que tenha feito mas é uma coisa bastante baixo nível. 
Se por rede mesh tu queres dizer uma overlay, onde já tens uma forma de mandar mensagens e estabelecer vizinhanças, é mais ou menos simples ter algo básico que funcione. 
Agora, e é importante dizer, estas overlays podem ter todas as formas (há diferentes topologias e isso dá-lhes certas propriedades) e mesmo comunicar entre nós pode ser feito de várias formas (tu podes mandar mensagens por flooding, ou usar gossip, ou milhentas outras coisas).
hoo.jpg
[Esconder] (1.4MB, 1500x1000)
Voltei a ter tempo para tocar no bicho e já estou fluente no workflow do ESP: 
Compilar. sair do terminal de monitorizar a porta série para não fazer conflito com o flash, flashar, conectar ao monitor, reiniciar. Não sei se existe melhor maneira mas seria fixe porque é um bocado trabalhoso como tenho feito.

As maior parte das ferramentas de updates OTA existentes para o ESP32 não eram do meu agrado porque ou eram baseadas no Arduino ou necessitam de um servidor HTTP a correr e eu queria uma cena fosse eu a mandar para lá. Encontrei um código dum gajo que fez o que eu queria com um servidor HTTP chamado "mongoose" a correr no ESP32. Peguei, atualizei para a nova versão do Mongoose que por algum motivo mudou a interface por inteiro e isso obrigou-me a fazer um servidor HTTP novo. Ontem consegui meter tudo a funcionar e já flasha.
Agora estou a fazer a limpeza do código, o gajo tinha deixado lá muita merda tipo funções gigantes, comentários despropositados, código inutilizado comentado e várias merdas que não faziam sentido. Estou a meter aquilo tudo direitinho, bonito, organizado e com um estilo uniforme.
Respostas: >>7565
>>7564
Devias forkar o projeto e publicar após as alterações que fizeste, mesmo que não tivesses intenções de manter.
Respostas: >>7566
>>7565
Estou a fazer um componente de raíz porque o projeto desse gajo tinha mais coisas, já meti lá o nome dele nos créditos e no fim vou publicar e dar-lhe o toque. Ele disse que era fixe se estivesse na nova versão do mongoose então se calhar até lhe vai ser útil.
Estou aqui a batalhar com o CSS para ficar bonito, queria meter uma barra de progresso também.
conacator.jpg
[Esconder] (179.4KB, 958x1280)
O conector usb foi com a cona, puta que pariu.
Respostas: >>7572 >>7573
>>7571
Lel, oh não não não
Como é que essa merda foi acontecer? Não tinhas encomendado mais?
Respostas: >>7576
IMG_20220611_205148_(...).jpg
[Esconder] (590.3KB, 2110x2306)
>>7571
Os suportes da porta estão literalmente partidos, logo foi força a mais. No entanto nos da frente da para ver um buraco, coisa comum em muitas coisas com portas USB vindas da China. Com os suportes mal soldados, a porta fica apenas presa aos pads dos conectores. E como só um é que arrancou o pad, tendo os outros descolado, até isso estava mal soldado.
Seja como for, para os suportes traseiros partirem, houve força à mistura.
Pica relatada, um blue pill que tenho aqui ainda embalado com a porta mal soldada.
>>7572
Sim, comprei 3 a espera que fosse brickar ou foder com excesso de writes ou assim. Nunca pensei que fosse partir no USB. Agora tenho 2.
soldadura_profission(...).jpg
[Esconder] (69.7KB, 1280x576)
supercondutor.jpg
[Esconder] (81.5KB, 577x1280)
Quero falar-vos desta fantástica técnica pouco conhecida que já foi usada profissionalmente nos primeiros computadores com o PDP-11 e funciona perfeitamente e até existem ferramentas feitas para enrolar fios à volta dum condutor. Chama-se "wrapped wire".
Fiz o trabalho da pica relatada e está a funcionar perfeitamente (Do outro lado tenho 2 cabos RJ-11 que enviam e recebem sinais para o integrado). Foi sem a ferramenta e teve de ser feito com mais cuidado para ficar bem preso mas está direito como podem ver no detalhe da segunda imagem, eu puxei com alguma força e continua preso.
Não é difícil e dá muito jeito.
>>7398 (OP) 
Nunca percebi o uso disto, usam o wifi para quê?

No geral, devo olhar para isto como um arduino? Se sim porquê mudar?
[Nova Resposta]
37 respostas | 18 ficheiros
A ligar...
Denunciar/Moderar

Acões:

Captcha:

Instruções
NotíciasRegrasFAQLegal/DMCASourceDoar

Todas as marcas registadas, direitos de autor, comentários e ficheiros neste site são propriedade e responsabilidade dos seus respectivos autores e proprietários. Só um louco levaria o que aqui é escrito a sério.