|
PulseFire Arduino controller
|
|
04-14-2012, 11:31 PM
(This post was last modified: 04-20-2012 11:17 AM by txqNL.)
Post: #1
|
|||
|
|||
|
PulseFire Arduino controller
Just finished the last item on my 1.0 todo list, so in this topic I tried to gather all information together so here we go
![]() == PulseFire == PulseFire is a programmable PWM and bit sequencer build on the Arduino platform in C. Targeted for free energy (re)search with full generic configurable mappings for analog/digital inputs so it can operate HHO cells, magnetic motors and solid state coil shorting setups. == Features == - Prebuild arduino firmwares. - Standalone config in eeprom. - Multiple lcd sizes support. - Extentable with some simle chips. - Max 16 output for pulse train. - Mulple pulse train modes. - Invert signal per output. - Per output bit pattern config. - Generic mappable analog and digital inputs. - Maximum and minimum treshold values. - Comes with gui interface to config. - etc/etc. == Requirements == - Arduino IDE (only for drivers/testing); http://arduino.cc - Java 1.6 or higher; http://java.com == Install == - Unzip the downloaded file. - Run pulsefire.exe or run.bat or run.sh. - Goto setting tab and "Burn" firmware into Arduino. - Connect to virtual COM port of Arduino. - Done. == Flashing Arduino == With Pulsefire there is no need to compile code in the Arduino IDE. It is already compiled and packaged inside the application. On the settings tab there is a "Burn" button which will show the flash dialog. There you can select your MCU and SPEED, for example for the UNO we select "atmega328p" and "16Mhz" which gives a list of precompiles chip firmware images. Currently the "atmega328p-001" or "atmega328p-002" images are a fine start,as they have no external chip requirements. After selecting the image select the port and hit the "Flash" button. Also remember that after flashing a chip it is most often needed to make the config correct from older eeprom saved config variables,so then do; 1) Reset Config 2) Save Config 3) Reset Chip If the flashing code does not work correctly there is a fallback on the avrdude flash tool. For that to work select the command and config of avrdude needs to be selected in the settings tab, these avrdude command/config can be found in a arduino IDE subdirectory. After that reopen the flash dialog and first select an images then override the selected "Programer" to the "native-" version and hit flash. This "native-" version runs the avrdude program with the correct arguments to flash the temporarily exported hex file to the arduino. With the manual export button it also possible to run avrdude or other loaders like; http://xloader.russemotto.com/ == Arduino Uno == Chips: atmega328p & atmega168p Pins: http://git.savannah.gnu.org/cgit/pulsefi...chip_avr.c schema-simple: http://pulsefire.nongnu.org/images/arduino-default.png schema-extensions: http://pulsefire.nongnu.org/images/avr-ext-chips.png Simple firmware selection list based on IO chips and LCD connections; atmega328p-001 - No lcd support but 6 analog inputs. atmega328p-002 - lcd, connections like simple schemetic. atmega328p-003 - lcd on 74xx595 chip. atmega328p-004 - lcd 595, 8 out on 595 atmega328p-005 - lcd 595, 2*8 out 595 atmega328p-006 - lcd 595, 2*8 out 595, 74xx153 multiplex digital in to 8 in. atmega328p-007 - lcd 595, 2*8 out 595, dic on 153, 8 digital output on 595. atmega328p-020 - no lcd, 8 out on 595 atmega328p-021 - no lcd, 2*8 out 595 atmega328p-022 - TEST no lcd,no pwm,no ppm == Arduino Mega == Chips: atmega2560 & atmega1280 Pins: http://git.savannah.gnu.org/cgit/pulsefi...avr_mega.c schema-simple: todo schema-extensions: http://pulsefire.nongnu.org/images/avr-ext-chips.png There are some MEGA fixes this version as I now have a MEGA but have not done full test yet. It seems to be that the default bootloader in the 2560 does not support watchdog timer support. Have to fix/workaround that first then next version should be fully tested MEGA firmwares. == Connecting == If the pulsefire gui will not connect to the arduino chip, there are a few things to try to make it work; (note: most connect problems seems to be on 64b windows.) - Sometimes does it works on 2 or 3th connect attempt. - Unplug and plugback arduino in usb before connecting. - Hit reset button on arduino board just before connecting. Else check: - is pulsefire chip firmware correctly flashed. - is pulsefire promt working in serial monitor in the arduino IDE. - is COM port the same as in arduino IDE. To debug; - Enable "Tab UILog" on settings tab. - Set log level to ALL - Try to connect again. - See for unexcepted exceptions. == Config == todo write out some examples here. == FAQ == Which LCD displays are supported ? > All parralel connected LCD which are compatible with HD44780. Are GLCD dislays supported ? > No, but there is a experimental GLCD flag+code for MEGA. Which i2c devices are supported ? > None at the moment. == Lastest version == Download latest version from; http://download.savannah.gnu.org/releases/pulsefire/ (download ui-launch4j for windows and ui-dist for other platforms) 1.0.3 Changes: - Added loading splash screen - Fixed rxtx support for Mac OS X - Cleaned connect code to fix 2+ connect on some windows. - Added icon on pulsefire.exe - Renamed cancel to close in flash dialog. Chip changes from 1.0.0-beta8 to 1.0.2; - Renamed lpm_auto_cmd to lpm_fire and made triggerable. - Renamed req_auto_lpm to req_lpm_fire like other triggers. - Reversed ppm idx bits so first fire works correct after mode switch. - Fixed PPM_ALL mode pulse train length. - Improved serial for only ascii and synced cmd echo of input. - Fixed PTC and PTT, reversed step and time action. - Added pulse_hold_fire trigger and req_pulse_hold_fire cmd and added to int pins. - Fixed AVR_MEGA pin18 & pin19 pin interrupt on/off based on avr_pinX_map - Fixed async interrupt command push which sometimes printed thru an other cmd. - Added readonly vars pulse_fire_cnt and pulse_fire_freq. - Fixed ext_pin and pulse_fire trigger speed and fixed ext_pin fire only on idle pwm state. - Added mal_ops/mal_ops_fire/mal_mticks interpreter speed control. - Renamed mal_program to mal_code. - Splitted DIC_NUM_MAX to chip so now 8 normal and 16 on MEGA. - Recoded triggers removed all req_*_fire and replaced with req_trigger <idx|name> [<idxA>]. - Added CIT,Chip Internal Timer on last hardware timer left in 168P/32P chip - Added pulse_reset_fire/pulse_resume_fire triggers to control pulse train. - Added pulse_fire_mode and pulse_hold_mode to control fire and hold setup. - Added pulse_fire/hold/resume/reset_map event maps on pulse fire sequence. - Improved save command speed by only update changed data. - Fixed MEGA save command, disabled watchdog while updating eeprom. - Fixed MEGA max value pulse_steps value and MEGA PTC map size. - Fixed MEGA MAL code address size issue when mal_code is bigger then 255. Errata: - pulse_hold_auto in ext/fire trigger mode max output step is not auto holded. (auto hold on max-1) - Second variable in pulse_fire/reset/hold/resum_map has no function. - MAL editor does not auto renumber goto statements. - MAL code does not get saved/loaded to/from config file. - After connecting to lower chip version then gui does not update correctly to newer chip version. (restart application) - Sometime pulse_reset_fire is needed after pulse trig/mode/fire change before pulse_fire starts. == Next verion == - Test & Fix MEGA support - Add CIP (3x 16b hardware pwm on MEGA) - new IO software config to remove some EXT flags. - new config for interrupt input pins. - Redo + test all chip firmwares. Happy pulsing, Willem |
|||
|
04-19-2012, 11:31 AM
(This post was last modified: 04-25-2012 11:52 AM by Jean-Alexandre.)
Post: #2
|
|||
|
|||
|
RE: PulseFire Arduino controller
build
![]() ###### # Linux # ###### dependancy git-core avrdude git clone git://git.sv.gnu.org/pulsefire.git cd pulsefire cd pulsefire-chip/src/main/c/ # build firmware make atmega328p-002 # Upload in arduino /usr/bin/avrdude -p m328p -P /dev/ttyUSB0 -b 57600 -c arduino -v -v -C /etc/avrdude.conf -U flash:w:build/atmega328p-002/pulsefire.hex:i Jean-Alexandre |
|||
|
04-19-2012, 03:08 PM
Post: #3
|
|||
|
|||
|
RE: PulseFire Arduino controller
awesome work guys
can we setup a drop box and share link to post here when you do version and backup for written code versions. perhaps post or up load coding doc to this link . so with version posted to 3-4 places routinely every time it is more secured from sudden loss https://docs.google.com/document/d/1oFKz...eP-Es/edit That way we can re link and shar from your folder, open forum drop box google docs to other forums and fb etc object is to get many using it as possible |
|||
|
04-20-2012, 11:00 AM
(This post was last modified: 04-20-2012 11:16 AM by txqNL.)
Post: #4
|
|||
|
|||
|
RE: PulseFire Arduino controller
Here is a new minor version with only gui code updates to fix support for macs and fix connect problems on some windows platforms;
1.0.3 Changes: - Added loading splash screen - Fixed rxtx support for Mac OS X - Cleaned connect code to fix second connect on some windows. - Added icon on pulsefire.exe - Renamed cancel to close in flash dialog. Download it from: http://download.savannah.gnu.org/releases/pulsefire/ (04-19-2012 11:31 AM)Jean-Alexandre Wrote: # build micro kernel Hi Jean-Alexandre, Great description for manual compile steps of the pulsefire 'chip firmware' code as it is called. Also there are a few more dependencies like; avr-libc,binutils-avr,gcc-avr and make. The list is probably a bit longer but I haven't yet tried it on a clean machine. (04-19-2012 03:08 PM)securesupplies Wrote: can we setup a drop box and share link to post here when you do version and backup for written code versions. To place all code in one text file is not going to work as the source is over 400 files. But the distributed backup is already done of by the People who run Savannah. Also the pulsefire releases also include a full source copy which gets distributed over 24 servers which are all indepently managed by different entities. See full list here; http://download.savannah.gnu.org/mirmon/savannah/ For example to download from Brazil; http://savannah.c3sl.ufpr.br/pulsefire/ But the best way to have a local copy of all the source and extra files is to have a clone of the git repository and periodically fetch new changes. This can be done with a few git commands or some git hosters also provide this feature for you. |
|||
|
04-21-2012, 04:59 AM
Post: #5
|
|||
|
|||
|
RE: PulseFire Arduino controller
Very Nice willem!!!!!
hope ll is well and be blessed sir!!! ~Russ "I had to go to a source of power greater than Stan Meyer in order to try and bring in this form of technology. And the Lord said that this knowledge of pertaining to water when he was talking to Job and he asked Job the question. He said, "Job have you ever considered the treasures of snow or have you ever considered the treasures of Hell which I have reserved against the time or trouble against battle and war". And the reason I am here today is that the multi international corporate structures can't bring in this type of technology, the Federal governments cannot bring in this technology, it has to come through an individual such as myself and it has to move through you and I. So as I impart this technology onto you, then you have a responsibility to it. This technology must get in through the people or otherwise it will not go forward." - Stan Meyer "We can demonstrate the technology. We can say it’s here but in actuality it will not be Stan Meyers to bring it in. It will be either you or I, the guy down the street, who will come together to bring it in. Otherwise, I do not believe an alternate energy source, whether water fuel cell or other, would ever come in. It’s going to have to be mandated by the people to try to reverse the environmental problems, the environmental damage, that’s actually occurring. - Stan Meyer, 1997" "If you believe, even tho you can not see, you will see." ~Russ Gries |
|||
|
04-21-2012, 12:01 PM
Post: #6
|
|||
|
|||
|
RE: PulseFire Arduino controller
Very Nice! Thanks for post Will!!!
|
|||
|
05-13-2012, 11:26 PM
Post: #7
|
|||
|
|||
|
RE: PulseFire Arduino controller
Hi,
have just obtained a "Eleven" UNO board - a new learning curve for sure. The pulsefire is very interesting - lots to learn there, havnt yet worked out how to get it to connect with the uno cheers |
|||
|
05-14-2012, 10:07 AM
Post: #8
|
|||
|
|||
|
RE: PulseFire Arduino controller
Backed up on 24 different servers, that's awesome.
![]() ![]()
As for most if not all of mans inventions and discoveries, we have or had to observe Gods Creation's, this in it'self proves he exists. Rom. 1:20. Have a good one, Jeff.
|
|||
|
07-22-2012, 06:30 PM
Post: #9
|
|||
|
|||
|
RE: PulseFire Arduino controller
Updated PulseFire to 1.0.4 with some bug fixed and gui improvements especially the "Fixed dial start offset" was very needed.
Changes version 1.0.4: - Changed ptc_Xcnt and ptt_cntX to 16bit so mapping works with values above 255. - Enabled cit_0a_com gui dropdown box. - Fixed avr-gcc const warning of pmCmdList array. - Added more variable filters in data tab panel. - Improved chip seconds timing from ~96% to ~99.5% relative to atom time. - Fixed/removed the 50% extra time offset of ptt and ptc 'time' mapping. (now ptt time step of 6000 is 10min but in real 10min and ~24secs) - Redone firmware filter options, speed/type are saved and click column header to filter. - Fixed dial start offset, now relative from start so it is not jumping anymore. - Improved fire dial tooltip editor support. - Improved fire qmap table keyboard handling support. Download latest version from; http://download.savannah.gnu.org/releases/pulsefire/ (download ui-launch4j for windows and ui-dist for other platforms) And found one new errata while testing: - 32bit linux and openjdk-6 do not work,use sun jdk as workaround. |
|||
|
08-10-2012, 12:04 PM
Post: #10
|
|||
|
|||
|
RE: PulseFire Arduino controller
Hey all! So awesome to have a place where like minds can meet and get this stuff done!
![]() Just want to say this is a really worthwhile project and thanks to everyone contributing. It would be nice to get a Fritzing chart together for this. I would like to help. |
|||
|
08-11-2012, 03:25 PM
Post: #11
|
|||
|
|||
|
RE: PulseFire Arduino controller
Great job on pulsefire, thanks for putting this together!
|
|||
|
08-12-2012, 11:47 PM
(This post was last modified: 08-13-2012 02:54 AM by rawbush2.)
Post: #12
|
|||
|
|||
|
RE: PulseFire Arduino controller
Trying to play around with my mega 1280 and it wont connect. Get an info_chip error. Any ideas?
ok learned that I had to pick a file first, but this is error I get now. This is the burn log. 01:51:34 # Flash data size: 30188 01:51:34 # Flash protocol: arduino 01:51:34 # Flash verify: false 01:51:35 # Connected to port: //./COM3 01:51:35 # Reboot device. 01:51:40 # IOError: timeout on read. 01:51:40 # Disconnected from port. |
|||
|
08-14-2012, 10:56 AM
(This post was last modified: 08-14-2012 11:01 AM by txqNL.)
Post: #13
|
|||
|
|||
|
== Important MEGA info ==
The current bootloader for the mega2560 has issues with the Watch Dog Timer feature of the chip. This feature is used in pulsefire to reset the chip when requesting more pulse time then is available which makes pulse code loop, then the watch dog timer will reset chip after 4 seconds. (or some crashing bug which stop the main loop code as result) The bug in the current mega2560 bootloader locks/crashes the bootloader when the chip is rebooted by the internal watch dog timer. I have created a small test program to test this bug and tested the patched bootloader from http://code.google.com/p/optiboot/issues/detail?id=50 to upload this you need some extra hardware or Arduino see bootloader help of arduino. Code: /*After flashing my mega2560 this program works correctly. If you can't upgrade your bootloader just make sure not to request crashing conditions in pulsefire. (like setting pwm_clock=1 and use very low value on pwm_on_x timers, which requests the next step quicker then the step calculation time, so no time left over for serial/etc) (08-12-2012 11:47 PM)rawbush2 Wrote: Trying to play around with my mega 1280 and it wont connect. Thanks to Rawbush we found this bug in the flash baud rate setting in pulsefire which defaults to 112k but the bootloader for the mega1280 uses 57k.. As workaround to flash the mega1280 Arduino, export the firmware hex file and use xloader or avrdude to upload manually. |
|||
|
08-14-2012, 06:07 PM
Post: #14
|
|||
|
|||
|
RE: PulseFire Arduino controller
Hey all. I want to build Russ's rig and would love to document it using Fritzing. Here is a project page already started:
http://fritzing.org/projects/pulsefire-basic-setup/ I don't want to put up something incorrect so will someone with knowledge on the PulseFire take a look? Russ? |
|||
|
08-20-2012, 01:29 AM
Post: #15
|
|||
|
|||
RE: PulseFire Arduino controller
(08-14-2012 06:07 PM)partsoven Wrote: Hey all. I want to build Russ's rig and would love to document it using Fritzing. Here is a project page already started: here is a link to the schematic.....don't think it is complete with all the switches but will give you an idea of the hook up. http://pulsefire.nongnu.org/images/arduino-default.png |
|||
|
08-20-2012, 10:42 AM
Post: #16
|
|||
|
|||
RE: PulseFire Arduino controller
(08-20-2012 01:29 AM)rawbush2 Wrote:(08-14-2012 06:07 PM)partsoven Wrote: Hey all. I want to build Russ's rig and would love to document it using Fritzing. Here is a project page already started: Hey thanks. I have this and the corresponding one. I will just need someone to check my work since I am far from being a professional EE. |
|||
|
09-23-2012, 01:32 PM
(This post was last modified: 09-23-2012 01:34 PM by Dog-One.)
Post: #17
|
|||
|
|||
|
I wrote and cleaned-up a simple application for the Arduino for use with pulsing the Stanley Meyer's VIC coil. If anyone is interested, jump over to this post. It uses the serial (USB) interface for all communication and allows you to set the modulated pulse train however you may want. Pretty handy for plugging into a laptop and testing a VIC coil. Nothing fancy like PulseFire, but useful in limited scenarios.
Enjoy. "Never tell people how to do things. Tell them what to do and they will surprise you with their ingenuity."
"Success is how high you bounce when you hit bottom." "If everyone is thinking alike, someone isn't thinking." - General George S Patton Jr |
|||
|
09-23-2012, 02:58 PM
Post: #18
|
|||
|
|||
RE: Arduino PulseGen (simple VIC type)
(09-23-2012 01:32 PM)Dog-One Wrote: I wrote and cleaned-up a simple application for the Arduino for use with pulsing the Stanley Meyer's VIC coil. If anyone is interested, jump over to this post. It uses the serial (USB) interface for all communication and allows you to set the modulated pulse train however you may want. Pretty handy for plugging into a laptop and testing a VIC coil. Nothing fancy like PulseFire, but useful in limited scenarios. Got it, thanks. ![]()
As for most if not all of mans inventions and discoveries, we have or had to observe Gods Creation's, this in it'self proves he exists. Rom. 1:20. Have a good one, Jeff.
|
|||
|
« Next Oldest | Next Newest »
|
| Possibly Related Threads... | |||||
| Thread: | Author | Replies: | Views: | Last Post | |
| Noble Gas Engine (NGE) (Papp Engine) Controller Circuit | k c dias | 18 | 2,412 |
04-25-2013 07:56 PM Last Post: maurizio |
|
| NGE controller schematic | woody0068 | 12 | 1,216 |
01-15-2013 02:37 PM Last Post: k c dias |
|
User(s) browsing this thread: 1 Guest(s)










