Maker Pro
Maker Pro

1kW $50 E-Cat ?

A

amdx

Jan 1, 1970
0
You don't actually believe that baloney do you? If so, I have a nice
bridge in Brooklyn for sale cheap....

Sure I do, but you need to be smart enough not buy a bridge
in Brooklyn from someone in trying to sell it.
BTW, how did you get the bridge? ;-)
Mikek
 
M

Mho

Jan 1, 1970
0
It, and he, already did fail when the U. of Bologna fired him and kicked him
out.

Looks like another Searl and Lou Brits (whatever their scam was called) scam
to me and most others. He appears to be in money gathering mode constantly
and refuses peer review of his "accomplishments". Many indicators are
present for SCAM to be recognized. Gawd I hope this is wrong. Would be a
great breakthrough.

Doesn't the Nevada desert have enough shallow graves yet?


"At the end of December 2011 Rossi stated that he had passed ten thousand
pre-orders for a consumer version of the Energy Catalyzer and that he was
already aiming for mass-scale production of it and electricity generation
with it."
 
H

Han

Jan 1, 1970
0
It, and he, already did fail when the U. of Bologna fired him and
kicked him out.

From (you'll need to fix the url, likely):
<http://www.e-catworld.com/2012/01/university-of-bologna-director-of-
scientific-research-says-rossi-partnership-is-dead/>

Just for the record, terminating a contract isn't the same as firing from
an academic position.

"Steven B. Krivit of New Energy Times is reporting today that the research
partnership with between the University of Bologna and Andrea Rossi had
been terminated. Dario Braga, director of scientific research at Bologna
told Krivit that since Rossi failed to make the first progress payment,
“The contract ended on January 15 and has been canceled by the university .
.. . therefore, there is no further relationship between the university and
Rossi or his company." "
 
M

Mho

Jan 1, 1970
0
OK pick one of the following or add your own:
fired his company,
didn't renew his contract,
kicked his ass out,
services not required any longer,
laid off,
downsized,
terminated,
"canceled his contract",
booted the bum out,
withdrew support,
constructively dismissed
......all just semantics, anyway.

I like the website where they say Krivit stated "he was an Italian man" so
therefore he is a racist and his reports are meaningless then. The mark of a
true scammer is usually no defence to his technology. A scientists that
sticks to his beliefs? I mean sometimes these hounds do get over provocative
and interfering but really?

The deeper I look the more I smell SCAM. Probably selling their webpage hit
count and somebody here is getting a kickback, in the flavour of what I
originally posted.

-----------
"Han" wrote in message Just for the record, terminating a contract isn't the same as firing from
an academic position.

"Steven B. Krivit of New Energy Times is reporting today that the research
partnership with between the University of Bologna and Andrea Rossi had
been terminated. Dario Braga, director of scientific research at Bologna
told Krivit that since Rossi failed to make the first progress payment,
“The contract ended on January 15 and has been canceled by the university .
.. . therefore, there is no further relationship between the university and
Rossi or his company."


------------
It, and he, already did fail when the U. of Bologna fired him and
kicked him out.

email address is invalid
 
V

Vaughn

Jan 1, 1970
0
The deeper I look the more I smell SCAM.

I don't disagree that it's not hard to find potential scam markers in
this story, and have pointed them out in the past.

Probably selling their webpage
hit count and somebody here is getting a kickback, in the flavour of
what I originally posted.

Somebody HERE? So now were about to descend into innuendo and finger
pointing? Do it without me please. I'd rather just sit here and await
events. This will very soon be proven or disproven.

Vaughn
 
H

Han

Jan 1, 1970
0
OK pick one of the following or add your own:
fired his company,
didn't renew his contract,
kicked his ass out,
services not required any longer,
laid off,
downsized,
terminated,
"canceled his contract",
booted the bum out,
withdrew support,
constructively dismissed
.....all just semantics, anyway.

I like the website where they say Krivit stated "he was an Italian
man" so therefore he is a racist and his reports are meaningless then.
The mark of a true scammer is usually no defence to his technology. A
scientists that sticks to his beliefs? I mean sometimes these hounds
do get over provocative and interfering but really?

The deeper I look the more I smell SCAM. Probably selling their
webpage hit count and somebody here is getting a kickback, in the
flavour of what I originally posted.

-----------
"Han" wrote in message
Just for the record,
terminating a contract isn't the same as firing from an academic
position.

"Steven B. Krivit of New Energy Times is reporting today that the
research partnership with between the University of Bologna and Andrea
Rossi had been terminated. Dario Braga, director of scientific
research at Bologna told Krivit that since Rossi failed to make the
first progress payment, “The contract ended on January 15 and has been
canceled by the university . . . therefore, there is no further
relationship between the university and Rossi or his company."

I am highly skeptical, but a man whom I respect, Morris Dovey, is more
appreciative of Rossi. Right now I am under the heading wait and see.
 
V

Vaughn

Jan 1, 1970
0
I do hope Morris continues his project,

Me too! But he hasn't yet given us no reason to imagine otherwise. If
he fails, it really won't prove/disprove anything. But if he succeeds...

Vaughn
 
C

Curbie

Jan 1, 1970
0
Sometimes, what you start out to find, isn't what you end-up finding,
but if you don't start looking, you won't find anything. I don't see
any problem with this stuff, as long as people aren't advocating that
someone else spend their time and money on unproven stuff.

Curbie
 
J

Jim Wilkins

Jan 1, 1970
0
Morris Dovey said:
I've finally got the code finished that allows my cheap little uC to do a
"poor man's version" of multiprogramming and multi-tasking, meaning that
it can now be doing a whole bunch of essentially unrelated things all at
the same time. That should make the rest of the development easier and
faster, and should make the whole thing safer.

Hydrogen leak testing? I thought I'd just use a match. :eek:)
Morris Dovey

I recently bought an Arduino Uno to play with and am kind of impressed with
the ATmega328's capabilities, and the straight-forward simplicity of the IDE
compared to a PIC.

I haven't had to take a project's code beyond a single large DO LOOP that
polls rather than waiting for input, even from the keyboard (which does have
its own buffer). Being completely deterministic they are easy to build up
sequentially from dummy code, and to debug, but not ideal for real-time
multitasking, though that didn't matter on a multi-GHz PC running
low-overhead DOS7.

How did you implement yours, interrupts, time slices, ???

On big projects I designed a custom ASIC or FPGA to manage time-critical
tasks in hardware, so the main DSP's program only had to send commands and
receive results.
http://www.xilinx.com/
A very nice toy, if you can get the USAF to fund it for you.

Hydrogen flames are colorless and nearly to completely invisible, depending
on the room lighting. I don't know if the do-it-yourself fabrication
techniques of vacuum apparatus such as knife-edge seals and soft metal
gasket washers would hold up at high pressure and temperature. So far Google
hasn't brought up any useful info on the construction of experimental
pressure vessels and the devices I've made held only hydraulic fluid.

jsw
 
H

Han

Jan 1, 1970
0
Hydrogen leak testing? I thought I'd just use a match. :eek:)

I used to use a gas chromatograph that used a hydrogen flame to burn the
stuff that came off. The electrical signal generated was derived from the
ionization of the fatty acids burning. I did have to change tanks ("H"
size they were back then), and routinely used a soap solution to check for
leaks (bubbles at the connections). Never had anything blow up other than
my temper.
 
J

Jim Wilkins

Jan 1, 1970
0
Han said:
I used to use a gas chromatograph that used a hydrogen flame to burn the
stuff that came off. The electrical signal generated was derived from the
ionization of the fatty acids burning. I did have to change tanks ("H"
size they were back then), and routinely used a soap solution to check for
leaks (bubbles at the connections). Never had anything blow up other than
my temper.

Han

I recently used soap and compressed air to find the leak in my old water
heater and check the connections on the new one. Then I tested the household
plumbing for leaks by watching the pressure with the meter shutoff valve
closed.

Soap is fine at room temperature but won't help on the hot reactor, where
metal moves as it expands and heat creeping out into the plumbing will
complicate a leakdown check.

jsw
 
C

Curbie

Jan 1, 1970
0
Jim,

If the required response time is < 1ms, just poll (no interrupt), the
real issue is whether the commands must run in a particular order, in
which case you'll need a run-queue, if not just use a command and
response loop like below.

Also, if your timed events are not more than ~50 days apart, the
milliSec() function below handles timing register restarts.

If you need, LCD displays, buttons, or DS1820 perature sensors, let me
know, I have software for all that.

Curbie

/* This is the command and response loop that drives the controller
operation which runs over and over
again as long as the Arduino has power. This loop checks command
flags set and cleared by the
software and runs responses to the set commands while skipping
responses for commands not set.

The most important command which always must be checked no matter
what else the controller is doing,
is the scram command that insures that the still is not
over-heating and shuts the still down and
cools it, if it is.

This loop also sets, checks, and coordinates timing for time
sensitive hardware like buttons, LCD
display, and temperature sensors. */
void loop() { // the loop()
method
int button; // temporary
button value

button = getButton(); // get value of
button currently being pressed
if ( button != BV_NONE ) lastButton = button; // if button
pressed, save its value
readTemperatureSensors(); // if all
temperature sensors are not found, isolate failed sensor

if ( menuCmd ) menuRes(); // if check for
menu button pressed command, run response
if ( selectCmd ) selectRes(); // if check for
select button pressed command, run response
if ( upCmd ) upRes(); // if check for up
button pressed command, run response
if ( downCmd ) downRes(); // if check for
down button pressed command, run response
if ( rightCmd ) rightRes(); // if check for
right button pressed command, run response
if ( leftCmd ) leftRes(); // if check for
left button pressed command, run response
if ( fillCmd ) fillRes(); // if check for
end of fill water phase command, run response
if ( purgeCmd ) purgeRes(); // if check for
end of purge air phase command, run response
if ( startCmd ) startRes(); // if check for
end of starting phase command, run response
if ( adjustCmd ) adjustRes(); // if check for
end of adjust reflux phase command, run response
if ( scramCmd ) scramRes(); // if check for
scram phase command, run response
if ( scramStopCmd ) scramStopRes(); // if check for
end of scram stop phase command, run response
if ( scramTimeCmd ) scramTimeRes(); // if check for
end of scram stop phase command, run response
if ( coolCmd ) coolRes(); // if check for
end of cooling phase command, run response
if ( alertCmd ) alertRes(); // if check for
end of alert command, run response
if ( ddCmd ) ddRes(); // if display
dashboard command, run response
} // end loop
function

unsigned long milliSec(unsigned long startTime) { // return elapsed
time from the given "startTime" in mlliseconds
unsigned long timeInterval; // time between
last read and now
unsigned long curTime; // current time
const unsigned long MAX_TIME = 0xFFFFFFFF; // full 32 bit
value for correcting timer restart (timer value restarts happen every
~50 days of continous use)

curTime = millis(); // get current
time

if (curTime < startTime) { // if timer
restart has occurred, account for the restart
timeInterval = curTime + (MAX_TIME - startTime) + 1L; }
else { // if timer
restart has NOT occurred
timeInterval = curTime - startTime; // calculate
interval from last time temperature sensors read
} // end if timer
restart has occurred, account for the restart
return timeInterval; // return to
caller the number of milliseconds elapsed time from the given
"startTime"
} // end MilliSec
function
 
J

Jim Wilkins

Jan 1, 1970
0
Morris Dovey said:
(2) schd() accepts a date/time number and a pointer to the code that I
want to run at that time, and stores these away in a linked list that's
ordered so that the soonest-to-run request is always at the top of the
list.

(3) dispatch() compares the current time to the requested run time for the
top/first element on the list. If it's ripe, the element is moved from the
'pending' list to the 'idle' list for recycling, and the code at the
pointer is called....
My Arduino setup() routine does the usual pin assignments, etc. and then
makes a call to the reactor monitoring routine, which captures and logs
data, schedules itself to run again in 1000 milliseconds, and returns. If
it finds a condition that needs action, it calls other code (which may
start other threads, ad nausea)....

The busiest this thing will ever be is during an emergency shutdown, when
all of the motors, valves, etc. will be operating
concurrently/asynchronously - and not even all that will result in
noticable CPU loading....
Morris Dovey

It sounds to me like you would detect an error condition by polling rather
than interrupts from switches, and then schedule a service routine. If mild
and major faults occur simultaneously, like overtemp and pressure, would it
service both alternately or only the one tested last and thus scheduled
soonest?

I ask because the standard cell IC I designed was a dynamic memory
controller for a flat-bed color scanner that prioritized asynchronous memory
access requests from the CCD array, CPU, GPIB output and refresh controller,
in that order. It absolutely had to accept CCD input before the next word
arrived, but couldn't allow the lower priority requests to pile up too long.
That startup company folded before I had a chance to test the completed
machine and see how well my chip worked.

As a hardware guy I always expect a sensor failure or wiring problem. On one
safety-critical machine the sensor switches were biased by resistor networks
and sensed by the A/D converter, so the windows were say zero to 1V = sensor
or wiring shorted, 1V to 2V = valid low, 2V to 3V = fault???, 3V to 4V =
valid high, >4V = sensor or wire open. Thermocouples were biased to indicate
the lowest negative temperature if open. The A/D converter itself was a
single-point failure node, but was easily tested by checking supply and
reference voltages, and there were two processors and sets of redundant
switches. In addition it had a dead-man shutdown that killed power, leaving
everything in a power-off condition chosen to be the safest, such as landing
gear down. That's why I asked you about solenoid valves. I'd have
normally-closed on the hydrogen input and normally-open on the dump line.

jsw
 
J

Jim Wilkins

Jan 1, 1970
0
Curbie said:
Jim,

If the required response time is < 1ms, just poll (no interrupt), the
real issue is whether the commands must run in a particular order, in
which case you'll need a run-queue, if not just use a command and
response loop like below.

Also, if your timed events are not more than ~50 days apart, the
milliSec() function below handles timing register restarts.

If you need, LCD displays, buttons, or DS1820 perature sensors, let me
know, I have software for all that.

Curbie
button = getButton(); // get value of
button currently being pressed
if ( button != BV_NONE ) lastButton = button; // if button
pressed, save its value
readTemperatureSensors(); // if all
temperature sensors are not found, isolate failed sensor

if ( menuCmd ) menuRes(); // if check for
menu button pressed command, run response
if ( selectCmd ) selectRes(); // if check for......
.....

I wrote essentially the same thing in QBasic using an INKEY$ procedure to
read the keyboard, including the <ESC> and function keys, and SELECT CASE
to parse it, on the assumption that the program runs faster if it loops
after the first TRUE match and there is only going to be one button push or
keystroke detected per pass. Also I can keep the line shorter and neater
when testing for multiple equivalent conditions like CASE "+", "=", plus
arrow key character pairs.

Compiled code in DOS ran more than fast enough but interpreted code under
Windows was sometimes slow enough to see the spinning * ( | / - \ | / - \ )
loop speed indicator advance.

Instead of scheduling calls I set flags and state variables so I could
evaluate a matrix of the changed conditions all at once after completing the
loop and prioritize the responses, sort of a state machine without all the
formalities. The code was easier to figure out a month later if the sensing
and decision-making were grouped separately.

I'll probably leave the Arduino connected to a laptop for input, file
storage and display. I have a Dell D610 downstairs running days-long tests
on a failing 2T hard drive. The KAWez says they cost $0.15 a day.

jsw
 
C

Curbie

Jan 1, 1970
0
Jim,

My loops are all under 1ms including responses, just waiting for
button de-bouncing takes 20ms or 20 loops that can be doing something
else, I have no delay() functions, just a bunch of timer variables
that basically say, is it time to do the next step.

Again, this type a command/response loop only works if the input of
one command is not dependant on the results of another, in which case,
you need a run-queue.

Some character spinner stuff if it's helpful.

Curbie

byte pumpF = N_OFF; // last feed pump
character
char spinner[] = {'X','|', '/', '-', '\'}; // sequence
through these chars to make a spinner
lcd.write( spinner[pumpF] ); // write spinner
character to line 2 to lcd
pumpF = bump(pumpF); // if feed pump
running, bump display character index

byte bump( byte charIndex ) { // bump moving
character index if spinner or wave is turned on

if ( charIndex == 4 ) { // if last display
character index
return 1; } // return to
caller, index first display character
else { // if displaying
in Fahrenheit
if ( charIndex == 0 ) { // if display off
character index
return 0; } // return to
caller, off character index
else { // if displaying
moving character
return charIndex + 1; // return to
caller, next character index
} // end if last
display character index
} // end if last
display character index
} // end bump
function
 
Top