ThePendulum'lo
Muntevenin'
ThePendulumhas anyone here used SDuino for STM8s recently? I get an error trying to compile just a blink sketch fork/exec /home/niels/.arduino15/packages/sduino/tools/STM8Tools/2017.10.21/wrapper/sdcc.sh: no such file or directory
ThePendulumyet that file is very much present and has rwx rwx r x permissions
ThePendulumnot really sure what to look for, can't find a single hint of this online
ThePendulumgot that one figured out, apparently it's using dash rather than bash which I didn't have installed
captainhairAnother minor problem to solve is I need a switch for when the sliding glass is open. So I could do with a very soft button with a large amount of travel. So as the glass slides against the button it compresses the spring and at a point passes the threshold to complete the circuit? Like a "plunger" style switch maybe?
jmcgnhcaptainhair: you make it sound like "open" is a fuzzy concept for this application.
captainhairI feel like most switchs require active pressure on them to hold them closed. I feel like if the glass was closed it might be, say 1/2 mm open still, which would be enough for a switch to consider open
captainhairI could do with a switch with say 5mm travel on a very soft spring
captainhairLike the ones on car doors for the interior lights or fridge doors
jmcgnhACTION goes to check the switch on the fridge
jmcgnhcaptainhair: seems like one of thos would work for your purpose. On my refrigerator, the switch switches with the button about 90% of the way out, the rest of the travel is harmless.
captainhairYeah, that seems exactly what I'm after. Car door ones tend to be similar
captainhairI'll just have to root around and try to find the smallest one I can
jmcgnhcaptainhair: I missed the first part of the discussion where you described your setup. Is this like a cashier window with a sliding glass door? A cabinet? What are your constraints?
jmcgnhcaptainhair: also, does the glass door have any framing or is it solid glass?
captainhairIt's a sliding glass pane on a snake tank. If memory serves the glass is 6mm thick, it slides in plastic runners which are mounted to a wooden frame
captainhairSo yeah its loose glass that when closed slides up flush against the plastic side
captainhairSo my aim is to drill a small on in that plastic where the glass slides in, so that when closed it presses a button
jmcgnhcaptainhair: ok, so you want to be VERY SURE of the size of any gap, otherwise "loose snakes"?
captainhairKinda yeah. A regular button needs a firm press, so the glass wouldn't apply that against the button over time
captainhairWhich is why I thought if as the glass slid closed it was compressing a springy button it's be more reliable
captainhairBut heck it's 3:30 so I'll probably call it a night. Funny how you lose all sense of time when tinkering begins
jmcgnhcaptainhair: something like one of these: http://www.newark.com/honeywell/v7-2b17d8-207/microswitch-roller-lever-spdt/dp/50F5137?mckv=skV1BycPP_dc|pcrid|81515568501|plid||kword||match||slid||product|50F5137|&gross_price=true&CATCI=pla-80745916821&CAAGID=20376569421&CMP=KNC-GUSA-GEN-SHOPPING-50F5137&CAGPSPN=pla&gclid=EAIaIQobChMIyLeTjfSZ1wIVSlqGCh0VZQpAEAQYBCABEgKrSPD_BwE&DM_PersistentCookieCreated=true&CAWELAID=120185550001089868 (if that like works)
jmcgnhcaptainhair: Good night, yes 3:30 is more than past time for bed!
captainhairAh see I've got a few of those. The trouble is they need a lot of real estate
captainhairLike I'd have to cut out a good amount of plastic gutter for that. Whereas with a switch I can run 4mm plastic rod through a hole to press a butter on the outside of the frame
captainhairI hadn't actually thought of that till now
jmcgnhcaptainhair: I bet they make even smaller ones (just cost more money)
captainhairBut that would save all my space issues, I'd still need a springy switch though
captainhairYeah I've got quite a variety of the switchs from attempts
captainhairSome with rollers some with all kinda of shaped ends
captainhairBought a pair by accident that are massive like even the switch housing is huge
captainhairBut yeah I think I'm done for the night. Thanks though at least it got me onto alternative soloutions
captainhairPart of me was considering some kind of glass detector sensor to detect if the glass was present at the edge
jmcgnhcaptainhair: 'night - glue a magnet onto the edge of the glass and linke up a tiny magnetic reed switch for it to interact with? I'm envisioning something with minimal protrusion outside the tank.
jmcgnhcaptainhair: sorry, goodnight.
llamalutheroh cool- I figured this would exist
llamalutherbeen researching these boards
Flipp_ugh. The number of hours of my life I've lost to "power-only" usb cords might be exceeding 100 hours now... D:
MrCrackPotBuildeIm trying to do the math for a project. Its based on a 3d LED Cube. This one is: HEIGHT 224 LEDs, WIDTH 45 LEDs, LENGTH 45LEDs
MrCrackPotBuildeFor RGB I will need 108 Shift registers
MrCrackPotBuildei know i can link them but the problem i can see there is lag as each shift register only holds 8 bits (The on off state for 8 LEDs)
MrCrackPotBuildeso I thought could I set 4 in parrallel to create a 32bit register. Have 7 of these in a daisy chain with the 224 LEDs connected
MrCrackPotBuildebut how Would i go about this is there any documentation on parrallel and daisy chaining
IcePicMrCrackPotBuilde: do you think the lag is a real problem?
MrCrackPotBuildewith 470000 leds yes
IcePiclast I checked, my 74595 could do something like 74MHz or so, which was lots faster than I could feed data from the AVR, by a huge margin
MrCrackPotBuildeand with what i want the final product to display
IcePicbut sure, you could probably run from several pins in parallel and make separate chains
MrCrackPotBuildea lot of documentation ive read online also mentions the lag
MrCrackPotBuildeand with the 5700 74hc595 i need
MrCrackPotBuildethe circuit design will be much easier a lot of copy and paste
IcePicFor me, I'd worry a lot about feeding power to all leds
MrCrackPotBuildethat one is simple
MrCrackPotBuildeseperate circuit with two power inputs and a fair few capacitors on all the 5v inputs
MrCrackPotBuildei might need a couple more than two power units though hahah
IcePicit will also depend heavily on if you do or do not light up lot of LEDs at the same time.
MrCrackPotBuildea lot
MrCrackPotBuildeat best minimum would be around 80,000 mark
MrCrackPotBuildei've been looking at how huge out door tv LED displays work
MrCrackPotBuildeand thought maybe every 10 panels create a new power input
IcePicat say 20mA, you could power 50 of them with one Ampere, and 470000/50 is a large number. Even 80000 "only" means 1600A. That takes more than just electronic skills.
MrCrackPotBuildei doubt this will every be built but its fun to see if its possible and what it would look like
IcePicplus whatever the 595s want
laenMorning!
lomaswhat would be the safe PWM frequency range to operate carbon-fiber heater ? Using frequency lower than 10Hz causing a kind of flicker.
lomasThe heater is 220V and 300 Watts.
lomas#electrical
LordCrcnever used one before, aren't they just a resistive load?
LordCrcin which case you could use a much higher frequency
lomasLordCrc, They seems resistive one [from wiki]. They are also called infrared heater.
LordCrclomas: yeah should be good then...
lomasLordCrc, Okay, thank you :)
pwillardI would think that if you get your PWM wrong... your carbon fibers will "sing".
slothhttps://i.imgur.com/Z4GWKbl.jpg
ThePendulumwin what?
dedipyamanI want to setup a password based system on the Serial window of my Arduino Mega which will be transmitted by a bluetooth module
dedipyamanI want to store a 4 digit pin in the eeprom
dedipyamanHow do I do that?
ThePendulumthe nerd with a computer is being contracted over some of the others :P
pwillarddedipyaman: on byte at a time
pwillardone, rather
pwillardhttps://www.arduino.cc/en/Tutorial/EEPROMWrite
pwillardpart of a suite of eeprom functions
MikeDebianwhen using a relay, it is a good practice to isolate the relay circuit from the arduino signal circuit by using separate 5v power supplies. However, instead of using different power supplies, if arduino supplies power to both and we use a diode on the relay supply, isn't that also effective?
Emilwot
EmilJust diode the relay coil like all guides tell you to
MikeDebianok, the diode should have a minimum rate of 5v I suppose but what about the current rating?
ThePendulumI missed a bit, what's the coil rating of the relay? I've used 1N4148s with no problem
ThePendulumthey can handle a surge current of 2A
EmilMikeDebian: pretty much any diode will function as a protection diode for a coil
EmilThe maximum current pushed through will be the coil current
Emilfor a very short period of time
MikeDebianI only low it's 5v, i dont know the current rating
EmilAnd pls
ThePendulumwhat's the power rating of the coil? or no idea?
Emil"Diode voltage rating" is not a thing when talking about normal relays
MikeDebianThePendulum, no idea of the power rating so far. need to google it
ThePendulumyou're running the coil at 5V?
ThePendulumunless it's an enormous relay I doubt it draws even close to 2A
EmilThePendulum: mate, please
EmilThere's internal resistance in the coil already :D
EmilThe coil draws like less than 100mA
ThePendulummost likely, yeah
ThePendulumthat's the "even close" part, aka not at all close :P
EmilMost relays have a coil resistance in the range of 20 to 100 ohms
MikeDebiannot yet but I will. i'll look at the datasheet
Emilhttps://emil.fi/jako/linkit/relaysim
EmilHere's a very simple simulation
EmilThe 100mH inductance is very generous
ThePendulumI I got one of me own lol http://everycircuit.com/circuit/5236033336901632
ThePendulumI wish I knew of falstad before I bought an everycircuit license >.> that said falstad doesn't really work as well on mobile
EmilIf you play with it, you noticed that the 75mA that goes through the diode for only 5ms
EmilAnd it drops expontentially in that time
EmilThePendulum: falstad also has some issues regarding overflows and internal values
EmilBut it's super easy to use on desktop :D
ThePendulumyeah, the big nuisance with everycircuit is that every component has a huge 'margin' area that you need to keep clear
ThePendulumwith falstad you can put them on top of eachother if you want
EmilMikeDebian: the point is: any diode will pretty much work just fine
ThePendulum^ I mentioned the 1N4148 because it's super common and you might already have them around
Emilyeah
Emilthose work just fine
ThePendulumgot them in the relays for a solar setup. granted that setup failed, but not because of the diodes :P
ThePendulumMikeDebian: another thing we did is put in a resistor and a capacitor in front of the coil to save power; the capacitor briefly shorts out the resistor to snap the coil into place, and then the resistor limits the current to just above the point it'd release again
ThePendulumnot really necessary if you're running it from the wall, but this was battery powered and it ran them at about 50% their original consumption iirc without losing reliability (relayability?), so it made sense
EmilThePendulum: interesting
dedipyamanexit
pwillardI wouldn't pull all my eggs in the Falstad basket... it can also give misleading results
ThePendulumjust something to be aware of to look into if it's relevant for your setup I suppose, definitely not a necessity :P
Emilpwillard: sure, it's no spice
Emilpwillard: but it's super quick and pleasant to use :)
pwillardSuper quick... its is
pwillardBut honestly... you could do just as well with pen and paper (and a few ohms law calculations)
Emilpwillard: come on :D
EmilThePendulum: https://emil.fi/jako/kuvat/2017-10-31_14-49-07_7Bsyf5cF.png you mean something like this?
EmilPretty cool
ThePendulumpen and paper doesn't really work quite as well to demonstrate something though, let alone share it, assuming the simulation works okay, which it usually does
Emilexactly
ThePendulumEmil: pretty much yeah, the first resistor is to simulate the resistance of the coil?
ThePendulumwell either way the latter one would still do its job
EmilThePendulum: the 50 ohm one? yeah that's the internal resistance they all have
ThePendulumdoesn't falstad allow you to set a coil resistance?
EmilNo
EmilThe components are quite ideal
ThePendulumoic
Emilthe passives are
EmilThePendulum: lulz https://emil.fi/jako/kuvat/2017-10-31_14-51-29_3PPj0r9m.png
ThePendulumlol, I should probably stop using that term...
ThePendulum"oh, I see"
Emilyeah figured :D
ThePendulumbut yeah, EC does allow for that https://i.imgur.com/GCaUtRs.png
Emilnice
ThePendulumoh actually, only for relays, not for regular inductors
Emilah yeah
Emilthe relay one does allow to set up resistance in Falstad, too
EmilAlso that's a clean browser <3
ThePendulumheh :o
Emilhttps://emil.fi/jako/kuvat/2017-10-31_14-53-31_qmDrkktQ.png mine looks like this :D
ThePendulumhow do you even navigate those tabs anymore haha
Emilhttps://emil.fi/jako/kuvat/2017-10-31_14-54-08_Tc8WkoWn.png
Emilhere's the relay one
ThePendulumah yeah
EmilThePendulum: patience and "I don't"
ThePendulumI don't have any shortcuts on my desktop itself either https://i.cubeupload.com/DM6CyL.png
EmilNice
EmilI'm a bit more chaotic
pwillardIdeal = perfect... (which no parts really are)
Emilpwillard: mate :D
Emilsimulating the thermal noise in resistors is super not necessary
Emilthat doesn't even come until like, third year of university studies
Emiland even then it's only relevant in rf applications
FabioPBXhey guys, its my understanding arduinos are not multithreaded, ive been trying to figure out how i can have a loop every x minutes and then perform action but while its waiting if say a sensor triggers then have it also do a fucntion and then carry on counting the minutes and so forth, is this possible and could anyone explain to me how? i cant make heads or tails out of this one :(
donalsdI think I lost my last question in ERC.
EmilFabioPBX: interrupts
dunz0rFabioPBX: Interuppts
Emildunz0r: hah, 2fast4u ;)
dunz0rI also misspelled interupts :P
FabioPBXnever used one on the arduino, ill have a look on googlesss :D thanks!
EmilFabioPBX: super easy
EmilI don't know if the arduino libs provided a wrapper already
donalsdAnyway, I am trying to put up a 4-digit PIN based login system to the Serial interface of my arduino mega which will usually be accessed by an HC-05 Bluetooth mdoule. How do I go on about that using EEProm?
dunz0rThere is a wrapper-lib, but its a bit limited
dunz0rOr at least used to be last time I used it
Emilbut in bare C it's just #include <avr/interrupt.h> and then ISR(VECTOR_NAME_vect){...} and setting up the vector in main or somnething
MikeDebianFabioPBX, you can also do it by counting the time in everyloop and execute a peace of code only when that time is a multiple of X
dunz0rWell... it's a bit more complex than that, but in gist, yes :P
Emildonalsd: #include <EEPROM.h> iirc
Emilor for the bare C one
Emil#include <avr/eeprom.h>
donalsdEmil: Yeah, but how do I store those 4 digits and then retrieve them?
dunz0rBut that's just the setup-part otoh, it's not super complex, but it looks really weird
dunz0rdonalsd: https://www.arduino.cc/en/Reference/EEPROM
Emildonalsd: it's just a continuous block of memory
Emildonalsd: you can think of it like an array that you can only access using those special functions
FabioPBXmy thinking originally is to use sleep() as this is ment to be power saving application, so sleep for 10minutes and do something at the end in a loop, however if sensor Y is trigger then also do XYZ
EmilFabioPBX: yeah interrupts work for that just fine
FabioPBXwould an interrupt work if sleep is used ?
Emilthe issue is that you can't have a 10 minute timer
EmilFabioPBX: yes
FabioPBXnice
Emilthe max is
Emiliirc, a bit over 4 seconds
Emil4,096s for 16MHz clock
FabioPBXoh, didnt know that lol, realistically i need something like every 30min or more, depending on power consuption
EmilSo you need to count the overflows and then trigger when it's overflown enough
EmilFabioPBX: you need a counter that you update and then when the counter=>time/counter_cycle_time you do your think
Emilthing*
dunz0rFabioPBX: It can be done, but you'll have to fiddle a bit, with counting overflows or something
MikeDebianEmil, that's what I've suggested
dunz0rOr lower your clock frequency :)
EmilMikeDebian: different
MikeDebiancount the time in every loop or if you have a RTC just check the time and if that time is a multiple of X minutes do your code
EmilMikeDebian: you are continuously busylooping
donalsdThe example shows analogRead() which can have 0-1023 values
EmilMikeDebian: I mean using interrupts only
donalsdEmil: They divided the value by 4
MikeDebianEmil, the way I said yes. That's the alternative to use the interrupt
Emilalso instead of multiple of x
FabioPBXa counter system would not sleep so it would consume more power, mhmm
donalsdWhat if I had to do it with Serial. What do I do after int pin = Serial.read() - '0';
EmilI'd keep a record of previous time and then execute when previoustime+timeout is smaller than current
EmilFabioPBX: Interrupt counter does sleep
dunz0rdonalsd: Write it to your EEPROM
Emildonalsd: also
Emildonalsd: if your value is like 0-9
Emilthen mate pls no int pin :D
Emiljust uint8_t or unsigned char pin
pwillardan example you can follow is defined in blink without delay() example code ... FabioPBX
dunz0rdonalsd: https://www.arduino.cc/en/Tutorial/EEPROMPut
donalsdI am talking about the dividing by 4 thing, do I need to do that too? emil
Emilpwillard: he did ask for low power consumption
Emildonalsd: hm?
pwillardOh... whyc did I read that as wanting to "avoid sleep()" hence my comment
dunz0rdonalsd: If you just want to write a value to the EEPROM it's just, EEPROM.write(someadress, somevalue);
Emilpwillard: 2017-10-31 15:12:38 +0200 < FabioPBX> my thinking originally is to use sleep() as this is ment to be power saving application,
Emildonalsd: and someaddress is just an int from 0 to how many bytes you have
Emilthat writes a byte
donalsdI want to write something like "9283"
Emildonalsd: yes I know ;)
Emildonalsd: what you could do
Emilit just EEPROM.write(someaddress, Serial.read());
EmilThere's no reason to convert it away from ascii
pwillardwell, sleep has a wake on interrupt options.. so that is s good way.
Emilpwillard: yup
dunz0rEmil: Until you're going to do math with it :)
Emildunz0r: it's a PIN application :D
Emildunz0r: if you are doing math on your PIN code T.T
Emil"the average value of your pin is 3.47" :D
dunz0rEmil: Haha, you're right :D
pwillardwell... you access eeprom with a series of sequential bytes... which "9283" is... amazing stuff.
donalsdEmil: Yeah, so address = address + 1;
donalsd if (address == EEPROM.length()) {
donalsd address = 0;
donalsd }I don't need to do this right?
Emildonalsd: you want a single pin, right?
Emilyou don't need to manage multiple pins?
donalsdYes, a single 4 digit pin
Emilyeah
Emilthen just read the pin into a local buffer like unsigned char buf[4]
Emilvalidate it
FabioPBXok so i have a loop and then the interrupt, i just didnt understand the counter part, i thought i was just loop couting into the counter untill it reachd desired value of close to X minutes, hence why i thought that would not sleep, but i think you mean some different counter method :S
Emiland then write it to memory like for(i=0; i<4; i++)
EmilEEPROM.write(i, buf[i]);
donalsdAwesome, thanks!
pwillardwell, seeing as how loop() cycle time is amazingly fast compared to seconds... counting loops might not be ideal.
EmilFabioPBX: yeah so
EmilFabioPBX: you can't directly sleep for 30 minutes
EmilFabioPBX: to keep time your device has a timer counter
Emilit increments every cycle (or depending on your prescaler, every prescaler cycle)
Emilonce it reaches TOP, compare or overflow or whatever is available it generates and interrupt
Emilyou know how long this cycle is
Emil(on a 16MHz avr it's like 4,096 seconds but you can make it 1 second, too)
pwillardthat interrupt could simply increment counters that translate into minutes and seconds to achieve your goal
EmilI mean max value
Emilyeah
Emilso every time your interrupt triggers you increment a counter and when the counter value times cycle time is greater or equal to your threshold value (say 30 minutes) you trigger and clear the counter
pwillardhttp://playground.arduino.cc/Code/Time there is this too...
pwillardOr... a series of sequential sleep()s might be used...
FabioPBXso this would be a spepera interrupt to that of the sensor, yes? And how would the sleep effect be handled ?
Emilpwillard: that's an excellent point
Emilin which case you must disable the reset on that interrupt :D
pwillard++
Emilbut it's reaaaally fucking simple that way
Emilyou don't need to define any interrupt vectors
Emiljust sleep(); and when an interrupt triggers just check what did it and back to sleep
pwillardincremement time tracking avriables as needed
pwillard<too much coffee = fingers out of sequence
FabioPBXsooo, loop and sleep() and keep a count of how many times ive sleep to equate to 30 minutes or w/e and then perform action, and also have the interrupt for the sensor waking it up and performing its action...
FabioPBXwould the constant sleep/wake up be a problem ?
FabioPBXbe it power one or something else ?
Emilno
Emiland you have to do it that way
Lican anyone tell me why stepper motor driver is needed with raspberry and arduino?
Emilunless you use an external rtc chip that can generate interrupts for set times
FabioPBXalso, if i understood correctly, on a 16mhz the max sleep is 4069 secs ?
donalsdEmil: So for values from 0-9 I should be using uint8_t?
donalsdlike (for unit8_t i = 0; i<4; i++) ?
FabioPBXand if i lower the clock speed icould extend it ?
FabioPBXalso have no objections to using a RTC, just never used one..
EmilFabioPBX: https://emil.fi/jako/koodi/multiple.c
EmilFabioPBX: no
Emilit's 4,096 seconds
Emiliirc
Emilbut you can change it to whatever
Emilor use a shorted cycle
Emilthe max is 4,096 seconds
Emil4096ms
Emildonalsd: for 0-255 always use uint8_t
Emilwhich is the same as unsigned char
Emils/shorted/shorter
EmilFabioPBX: you have a hardware timer counter, it's either 8 bits (WDT, TIMER0 and TIMER2 on m328p) or 16 bits (TIMER1)
Emilthat timer is incremented every prescale cyclöe
Emilwhen it reaches at set point that you configure it triggers an interrupt
FabioPBXso i get the gist of that, jsut trying to wrap my head on hte interuptts part :D
EmilYou don't even need a global
FabioPBXwell my lunch break is over, guess ill try playing with a sketch, still waiting on the shield to arrive but will try to see how to interrupts work :D
d3jakepwillard: Fingers out of sequence? Start using line numbers like QBasic so they know what order to type in
EmilWe need a TCP-like sequence number for characters
Emil!
EmilLet's start to draft the RFC
d3jakeThis videos make me happy. And, it looks like he uses Arduinos. https://www.youtube.com/watch?v=0XhxUT9vWCg
pwillardEmil: lol
d3jakepwillard: o/
Rickta59cd ..
Rickta59ls
Rickta59heh ..
Rickta59nm
FabioPBXo.O
FabioPBXwrong terminal ?
Rickta59obviously
FabioPBX:'D
YotsonNo command 'heh' found, did you mean:
Yotson Command 'feh' from package 'feh' (universe)
Yotson Command 'huh' from package 'orville-write' (universe)
Yotsonheh: command not found
Rickta59heh .. was a shrug
Rickta59like .. i f'ed up
Rickta59FabioPBX: are you doing PBX's with arduino?
YotsonWe don't judge, we just try to interpret. :D
FabioPBXRickta59: negative
Rickta59you are calling into this channel from a PBX FabioPBX ?
FabioPBXlol
pwillardall CLI look alike... ;-P
IcePicCLI - The Only Real Interface Society
N0ZYC:)
pwillardAmen
N0ZYCso what's everyone's comment on windows' attempt at a CLI (CMD window, and now, powershell)
zahranAye!
zahranhttps://itvision.altervista.org/why-windows-10-sucks.html
N0ZYCI see it as a lame attempt at best
zahranI was going through that just now :P
N0ZYCyou can hardly call it a command line if you can't add commands
N0ZYCusing a fixed set of commands makes it more of its own limited language
zahranYeah, bsides, editing the PATH var atm sucks
N0ZYCsomeone else was saying its possible to install BASH on windows. I haven't seen it done yet, but sounds interesting
IcePicand powershell comes with some kinds of aliases for "curl" and "wget" which of course isnt curl/wget so those guys get weird error reports from powershell users
IcePicN0ZYC: with cygwin that has been possible since win9x
N0ZYCheh
IcePicbut the ubuntu-on-win thing nowadays might make it easier
pwillardIn the distant future, we will touch the mozaic icon of Richard Stallman in the digital church saying "Thank you for keeping it real".
N0ZYClol
pwillardActually.. powershell is not that bad once you accept the paradigm.
N0ZYCI think I've heard that for communism too ;)
pwillardwell, it does require you think a bit differently... and it does suffer from "there is more than one way to do it" as with PERL.
N0ZYCI like having alternatives
N0ZYCthough it will lead to disputes on what is the 'correct' way to do somethin
pwillardI'm not normal though... I often prototype in perl since I know PERL always has a way to do it.
N0ZYCheh, interesting take on perl
N0ZYCbut that is a nice feature of lower level languages. you may be programming "with sticks and rocks", but at that level usually anything is possible, even if very convouted
N0ZYCI like assembly for that reason. also, code you write in assy is always faster and is always *vastly* smaller
pwillardright. Often... I will recode in Powershell or Python once I know the mechanics are functional
pwillardI really haven't done assembly since the 80's with 6809
IcePic"always faster" is probably not true
IcePicat least not as cpus got more complex
pwillardits always such a chore with assembly since the moment you start a new processor project... you start over with totally different assembler nmmonics
akkYou can write slow code in any language. :)
pwillardI'm also a good-enough coder and will seldom be bothered with eeking out a few extra bytes here and there
IcePicI remember lots of people swearing by m68k-asm looking at gcc 2.7.x output and learning new tricks on how to do some optimizations
pwillardwhere "ggod enough" means I work it till its good enough... not implying that I'm "so good I'm practically awesome.".
pwillard68000 was kind of a game changer
pwillardit eliminated a lot of things that plagued the 808x series
IcePicthe new ops on 68020+ were awesome, lots of [a0,d0.l*4] addressing modes
IcePicneat for indexes and structs
pwillardthough I guess if you know 8051 assembler... the AVR assembler is nit so foreign
pwillardnot,rather
IcePicI took on mips asm very late, but that dialect is very nice
pwillardthat reminds me... I bet FleaOhm labs is busy...
Rickta59i was looking at avr assembler as of late * had kind of ignored it and just used c * thinking about using it as a soft-core processor on an FPGA
Rickta59seems like the GadgetFactory guys are using it like that
pwillardnot a bad idea
Rickta59and I came across this... when you want to compare isa's
Rickta59https://github.com/larsbrinkhoff/awesome-cpus
pwillardNice find!
Rickta59although i'm prettty invested in msp430 asm
pwillardIts not bad... as you know... I have messed with them as well.
Rickta59i like the idea of arduino + fpga
pwillardThough my favorite was based on a MSP430FR6989 and a AD9830 DDS for frequency Generator (and all I did was build it)
pwillardno coding... no thinking... it just became part of my benchtop tools
Rickta59do you have that documented on your site pwillard ?
pwillardNo, all I did was copy this... I'm just saying I love it. http://forum.43oh.com/topic/9402-ad9850-frequency-generator-boosterpack/
Rickta59thanks
Rickta59that is you? fmilburn?
Rickta59ah .. nm .. i'm half reading this thread
Rickta59:)
pwillardno no... like I said... I just copied it... I loved it and it worked better than expected
Rickta59yeah, sorry I figured that out after I asked the question :)
pwillardIts dead-on with my freq meter for accuracy. Makes using a AD9850 super easy... and has nice built in display
Rickta59so you bought one specifically to run one sketch ? : )
pwillardYup
pwillardI don't even want to use it for anything else.
pwillardI mean I could...
Rickta59* images of the protestant family comes to my frontal lobe .. "we could have it any time we wanted"
Rickta59* from the meaning of life
pwillardhehe
pwillardIt gets used a lot more as just my benchtop frequency generator
Rickta59is it more accurate than the xtal on your arduino?
pwillardthe AD9850 is quite accurate
pwillardGeez... how do you refurbish an IC? https://www.ebay.com/itm/Refurbished-Harris-IC-HD1-6120-9/122458005040
YotsonFresh markings, brushed legs. Good as new! lol
pwillardRecycle... I understand... but refurbish???
pwillardlol
alphaferretonce you furbish it once the refurbish is quite easy
YotsonHey, at least they removed the excess solder blobs on the pins.
pwillardThats a PDP8 CPU, btw.
pwillardMakes me wonder if there is a whole industry that just buys junk and pulls parts out it to sell on EBAY.
JK-47pwillard: yes. yes there is.
JK-47check out Akihabara https://www.youtube.com/watch?v=kkABqom-BrE
Rickta59https://www.youtube.com/watch?v=ejB6NDIwdXo @ pwillard
Rickta59at about 56 seconds in they are "refurbising"
pwillardreading hackaday... Arduino mimics PC world by using a MUCH better processor for video than the cpu itself. using a VLSI VS23S010D-L chip for video on an arduino. https://hackaday.com/2017/10/30/hackaday-prize-entry-arduino-video-display-shield/
pwillardRickta59: hehe... thanks
Rickta59a rpi zero is the perfect "graphics coprocessor" for the arduino
pwillardIt works on the Z80 too
pwillardRC2014
pwillardIndia seems like the only place you can send piles of trash and someone says "Oh cool... I'll start a business with that".
Rickta59i thought that was NJ too?
YotsonTo nitpick, that VS23S010D isn't a general purpose processor. :)
YotsonBut yeah, i also prefer my regular desktop as an arduino gpu.
pwillardwell, likely an NVIDIA GPU sort of makes a crappy Windows CPU as well.
Rickta59https://github.com/michaelrolnik/qemu-avr slap that on the pi
YotsonDatasheet of that VS23S010D is interesting btw.
pwillardIt is a very specialized chip that was use for arduino video... nice chip
Rickta59heh .. marketed as a "SPI SRAM"
pwillardAmigoJapan had to dedicate one arduino to JUST video output when he made his Arduino Basic Personal Computer.
YotsonMain thing they seem to convey is it's a 1Mb SPI SRAM. It just happens to have a DAC and so on as well.
pwillardBoth of which are lacking in Arduino
pwillardbut useful for audio/video
YotsonYup.
pwillardI have no idea where you would buy once of these chips
Rickta59webstore in .fi
Rickta59https://webstore.vlsi.fi/VS23S010
pwillardNot horrible 6 euro each
Rickta59the bigger question is where to find a old tv set
pwillardLOL
Rickta59ah .. nm he did a VGA output also
pwillardI still have my COCO and Apple IIC
pwillardSo I have old monitor
d3jakeCan you bitbang a VGA output?
d3jakeOr is that too much for an ATmega?
ozzzyI don't think an ATMega can keep up with the VGA clock
Yotsond3jake. Just one example i happen to like. http://www.linusakesson.net/scene/craft/index.php
d3jakeWow..
pwillardI do recall someone tries
pwillardtried
pwillardIt ended up being so much easier to just use a Parallax Propeller
d3jakehuh?
pwillardNope... https://i.imgur.com/iLPki4Q.jpg
malinuspwillard: that shipping cost hehe
malinusexpresS?
pwillardNo. My only option, that I could see
malinusdamn
malinusI mean, that's the usual international price for UPS express. But then you get your package in 2-3 days, no matter which continet they ship form.
pwillardYeah. I have no options for chipping at checkout... just that.
malinusis that mouser?
pwillardno no no. ONly 1 place to get it that I can tell... normal places don't carry it
pwillardOh well
donalsdCan anyone check my project. I am pretty sure that there are a lots of bugs, I am new to Arduino and just can't figure them out yet.
donalsdgithub.com/2DSharp/BlueBerry
donalsdSuggestions are very much appreciated and welcome.
dreamerACTION sees a bunch of .ino files and has no idea how they all fit together :P
donalsdThe Arduino IDE seems to integrate them together while running a project.
dreamerok
dreamerI don't use the arduino IDE myself, I find it too confusing
dreamer(and just really really ugly)
donalsddreamer: So do I, but I need to submit this project day after tomorrow. So some debugging is necessary and I am new to it.
dreamergood luck :)
donalsdIf you could help me out with some suggestions - except for suggesting to remove the IDE though, haha, I will do that soon.
dreamerdonalsd: sorry I can't just dive in to random code and know what it's supposed to do
dreamermaybe someone else can
donalsddreamer: If you can check out these specific files: BlueBerryMain/BlueBerryMain.ino, BlueBerrySlave/BlueBerrySlave.ino and check if the wire.h usage is correct
donalsddreamer: Umm, I have commented almost everything.
dreamernah, I'm waiting for my food and then I'm off
donalsdah alright, thanks mate
dreamerare you experiencing specific bugs, or do you just want some code-review?
dreamerit's easier for people to help if you have a particular issue
donalsdCode-review.
donalsdAlso, the functions in PINManagement.ino, it doesn't seem to work
donalsdAny help is highly appreciated github.com/2DSharp/BlueBerry
pwillardhave you tested your parser for accuracy?
donalsdpwillard: Sorry ,was it meant for me?
klinedonalsd, looks cool, but tbh an RPi is probably a better platform
rawtazhey guys. is there a more teensy-specific channel, or is this the best one for that?
klinerawtaz, here is cool
rawtazsweet, thanks :)
donalsdkline: We are only allowed to use Arduino for this project.
pwillardyes... you are using variable J. Not doing much with it... but you have no Exit transfer... and J is a locally scoped variable... so it never leaves the function... seems to me that means your parsing of PIN won't work
klinedonalsd, who's set this project?
klineteacher?
donalsdkline: College. xD
donalsdCollege won't let me touch a RPi for this year.
donalsdpwillard: I'm having a look.
donalsdCould you help me out with a better code, I can't seem to find a better way to do this.pwillard
donalsdkline: Any suggestions on the code? :)
donalsdumm, help anyone?
donalsdOkay, how do I read a string from Serial in setup() and not skipping directly to loop.
donalsdAs in, I want to have users enter a 4 digit PIN at the setup, so I want the Serial to wait long enough to have all the characters in.
d3jakehttps://www.arduino.cc/en/Serial/Available
d3jakeCheck to see how many bytes are available. BTW< the language reference is very useful for learning things like this: https://www.arduino.cc/en/Serial/Available
donalsdd3jake: But it won't wait till I am done typing the PIN, will it?
donalsdI wanted the PIN parsing in the setup() and not loop()
d3jakeI'm not saying that the code in that link is drag-and-drop. That is the function you'll need to use to get the functionality you want.
donalsdd3jake: I have been scratching my head way too long for this, I have to submit the project day after tomorrow. Can you tell me how do I use this in a way that it waits for the user to finish typing and proceed only when the user hits ENTER or something
donalsdor send maybe
d3jakeHow do you think? What is rolling around in your head to use the code? I assume you have some idea, and am not just asking for code, so let's work with what you're thinking.
donalsdunsigned char buff[4];
donalsdvoid getPassword() {
donalsd int j = 0;
donalsd Serial1.println("Enter the PIN: ");
donalsd for (;;) {
donalsd while (Serial1.available() > 0) {
donalsd buff[j] = Serial1.read();
donalsd j++;
donalsd }
d3jakedonalsd: Use pastebin or another similar web site to paste code.
donalsd if (j >= 3) {
donalsd break;
donalsd }
donalsd }
donalsd}
donalsdThis is what I have been doing, d3jake- and it doesn't feel right.
donalsdd3jake: Sorry
donalsdCan you help me improve this code?
d3jakeDoes the code work? DId you try to upload it and test it?
klinedonalsd, while (Serial1.available() > 0 && j < 3) ?
klinecall it something better than j since it's not well scoped
d3jakeYou could also wait until your Serial buffer has four bytes in it, and then check it. However, you'd need to validate that those are the four for your PIN
Emildonalsd: stop
Emildonalsd: use paste
Emilservice
klineEmil, they've already been told and apologised, please use less newlines tia
donalsdWhat I wanted to achieve is at setup() the Serial window should prompt the user to enter a PIN. I want it to wait long enough for the user to have finished typing and not proceed until the user hits send.
Emilkline: I don't see a mention like that here
Emiloh, in the middle of it
donalsdkline: Should I be removing the for(;;) loop?
Emildonalsd: what's your input device?
donalsdEmil: HC-05 connected android device.
EmilYou have an app?
donalsdYes, it's called Bluetooth Terminal.
Emildonalsd: is it line buffered?
Emilor message buffered?
EmilOr is every press instantly sent to through?
donalsdI need to hit send like in the Serial monitor window in my computer.
Mrgoose-apple watch 3 cellular kind of sucks
klineoh, i misread
klinebut anyway
Emildonalsd: so message level
Emildonalsd: does it send \n or \r or \r\n
Emilautomatically?
donalsdEmil: I guess not.
donalsdkline: was that for me?
Emildonalsd: do you get an event that you now have a new message or is it just a serial stream you are receiving?
donalsdEmil: Serial stream
Emildonalsd: so you understand that you probably want a symbol that tells you "okay, the pin is now done" to protect against losing sync?
Emilsay you get 10234241239512381239
Emilif you lose sync, how do you know when to test?
EmilI mean you could just push the down a buffer and test for every new input but that's baaad :D
Emilbut if you get 042 0402 4310 0542 2289 32
Emilyou know when to test and stop reading
Emiland when to reset
donalsdI want to get a maximum of 4 characters
Emilirrelevant
donalsdI just need this- At setup() I want the user to enter a 4 digit pin after I prompt them to, I don't want the program to proceed any further until they press send. The program will then parse the pin, validate it and make an action.
Emilyes I understand
donalsd`How do I acheive this?
deskwizard... Wheres my medal, I need if for myself. *facepalm*
d3jakedeskwizard:
d3jakedeskwizard: https://i.imgur.com/eiqGNjm.png
deskwizardlmfao
deskwizardindeed
d3jakedeskwizard: Save these for later. FOr yourself, or someone you care about: https://imgur.com/gallery/taCH4
deskwizardd3jake lmao Definetly
d3jake:)
donalsd`d3jake: umm, I am still kinda stuck here. Help me if you get some time maybe?
d3jakedonalsd`: I'm about to head out for the day. Take what you want to do, break it into individual steps, and figure out the code equivalent. If you're not getting told the answer, or getting code, that's your best chance for getting to the solution
justaskingI bought the motor shield v1, but it has not a single normal pin anymore
justaskingdoes that mean if I want to do anything else than driving motors with my arduino I now have to solder?
Snert_prolly depends on the pin layout of the shield.
Snert_we have not seen it you know.
justaskingSnert_, the standard motor shield v1 by adafruit
justaskingsorry I forgot to mention it is the one by adafruit
Snert_https://learn.adafruit.com/adafruit-motor-shield/faq <-- Question 15 of the faq.
Snert_it's googalishious.
justaskingSnert_, thank you!
justaskingdo you know what "broken out" means here?
Snert_I assume it means the pins silk screened A0-A5
Snert_just solder a strip of 6 pins into the holes.
Snert_So yes. Soldering looks like the way.
Snert_after all, it's an arduino and soldering is a must.
Snert_you can also add 2 ea. 6 pin strips to the holes above A0-A5 and provide access to 5V as well as ground.
Snert_eh. 1 time job.
justaskingSnert_, ok, thank you :)
Snert_btw....if you were to solder in 3 rows of 6 pins - the pins just happened to be arranged the right way to be able to hook up an additional 6 servos to the board.
Snert_or just use the A0-A5 pins for non-servo uses of ya want.
u6b5nd5l10f HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS
m10j5py6e8h HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO AR
f7h3oj3s8c HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS
b1y2dv9f6w HEL
s1e0hh6a7s HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS ~ HELLO ARDUINO FRIENDS
Snert_yippee!!!!
Snert_it's a rller coaster!!!!
Snert_love that autoban
malinuswhat's goin on in here?
Snert_hum ditty ummmm ditty hum brehooooooo.
Snert_Pray for good connections.
deshipuscript kiddies want candy
kline<ardubot> [#arduino] ardubot sets [#1000 +b *!*@179.153.213.248$##fix_your_connection]
klinehappy 1000 bans, #arduino
baldengineeron halloween no less
Snert_dunno if that was a bot attack or what.
Snert_a botswarm attacked the channel I guess.
Emillulz
pwillard0.0
Snert_it was harrowing. be glad ya missed it.
ThePendulumwill there be a victim support program for those that got caught up in it?
Snert_I'm sure. Complete with milk/toast .... lattes and avocado toast.